Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierKorben
  • ✇Korben
  • OTI - Le lien à usage unique que les bots ne crament plus
    Si vous avez déjà envoyé un lien à usage unique qui est arrivé mort chez votre collègue, c'est probablement la prévisualisation de la messagerie qui a ouvert le lien en premier et qui a cramé le secret accompagnant le lien. La bonne nouvelle c'est que Oğuzhan Karacabay vient de publier une grosse mise à jour d' OTI , son service open source auto-hébergeable qui génère des liens de partage consultables une seule fois, avec chiffrement dans le navigateur.

OTI - Le lien à usage unique que les bots ne crament plus

Par : Korben ✨
29 juillet 2026 à 10:42

Si vous avez déjà envoyé un lien à usage unique qui est arrivé mort chez votre collègue, c'est probablement la prévisualisation de la messagerie qui a ouvert le lien en premier et qui a cramé le secret accompagnant le lien.

La bonne nouvelle c'est que Oğuzhan Karacabay vient de publier une grosse mise à jour d' OTI , son service open source auto-hébergeable qui génère des liens de partage consultables une seule fois, avec chiffrement dans le navigateur.

Vous collez un mot de passe, une clé d'API ou un bout de config dans OTI, le navigateur chiffre, le serveur lui ne stocke que du charabia, et le destinataire reçoit une jolie URL qui ne fonctionnera bien qu'une fois.

Ce qui change, c'est que le lien ne meurt plus tout seul. En chargeant la page, votre destinataire voit un compte à rebours et un bouton "Decrypt Message", rien d'autre. Du coup, tant que personne ne clique, le message continue son roupillon.

Comme ça, un bot qui déroule les URLs pour fabriquer une jolie vignette repart bredouille. Après si c'est un vrai scanner de sécurité qui charge vraiment la page dans un navigateur automatisé, vous ne pourrez pas éviter le problème.

L'autre nouveauté dans OTI c'est à la création d'un nouveau lien. Le service vous génère en fait 2 liens. Il y a celui que vous envoyez et un second que vous gardez pour vous. Ce dernier vous permettra de consulter l'état du message sans jamais afficher son contenu.

Côté crypto, le contenu est chiffré en AES-256-GCM via WebCrypto, et cette clé AES est elle-même emballée dans une paire RSA-2048 générée dans votre navigateur. La clé privée voyage dans le fragment de l'URL, la partie après le #, que les navigateurs n'envoient jamais au serveur.

Le principe zero-knowledge utilisé par OTI est quasi le même que celui de PrivateBin ou d' Enclosed où la clé ne quitte jamais le navigateur.

Par contre, ça donne des liens obèses puisque le mien faisait 1825 caractères, dont 1728 rien que pour le fragment, et c'est déjà compressé en zlib. Bon courage donc pour le dicter au téléphone ^^ (il y a un QR code, heureusement !)

Le reste, c'est du confort... Fichiers .txt jusqu'à 100 Ko validés dans le navigateur avant chiffrement, mot de passe optionnel par-dessus, expiration au choix entre 5 minutes et 7 jours, limitation de débit via Redis et une tâche planifiée qui balaie les secrets périmés toutes les 30 minutes.

Pour l'héberger, c'est de l'AdonisJS 6 en TypeScript avec Dockerfile, docker-compose et migrations fournis, en licence MIT. Redis peut céder sa place au limiteur en mémoire si vous montez juste un petit truc perso.

Notez quand même que pour le moment, le projet n'a pas été audité et est maintenu par un gars tout seul, donc évitez de l'utiliser pour des secrets d'État.

La démo est en ligne si vous voulez essayer avant d'installer.

  • ✇Korben
  • Hammer - Votre roman en fichiers texte, pas dans le cloud
    Hammer, l'outil dont je vais vous parler aujourd'hui, est né d'un manuscrit perdu. En septembre 2020, son développeur Adam Brown vivait dans un van et écrivait dans des coins souvent très isolés, avec un logiciel gratuit qui se présentait comme fonctionnant hors ligne. Mais malheureusement, au bout d'une semaine sans réseau, le soft a cessé de fonctionner. De retour en ville quelques jours plus tard, il a alors remis la main sur une connexion, et le logiciel est reparti, mais son manuscrit avait

Hammer - Votre roman en fichiers texte, pas dans le cloud

Par : Korben ✨
29 juillet 2026 à 10:08

Hammer, l'outil dont je vais vous parler aujourd'hui, est né d'un manuscrit perdu. En septembre 2020, son développeur Adam Brown vivait dans un van et écrivait dans des coins souvent très isolés, avec un logiciel gratuit qui se présentait comme fonctionnant hors ligne. Mais malheureusement, au bout d'une semaine sans réseau, le soft a cessé de fonctionner.

De retour en ville quelques jours plus tard, il a alors remis la main sur une connexion, et le logiciel est reparti, mais son manuscrit avait disparu !

Alors, dégoûté, il s'est dit qu'il allait coder son propre éditeur offline pour éviter que ça se reproduise, car hé, on n'est jamais aussi bien servi que par soi-même ! Et c'est pourquoi quand vous écrivez avec Hammer , chaque scène est un fichier texte enregistré sur votre disque dans le répertoire que vous avez spécifiquement choisi. Et c'est pareil pour tout ce qui est contenu annexe comme les notes et les fiches d'encyclopédie qui accompagnent les scènes.

Grâce à Hammer, qui est un logiciel gratuit sous licence MIT, vos idées sont rassemblées sous la forme d'un projet d'écriture avec tout ce qu'il faut pour prendre des notes, mettre des tags, faire des liens...etc.

L'éditeur de Hammer, avec la scène, son plan et ses notes sur le même écran.

Pour autant ce n'est pas un bloc-notes déguisé. Les scènes se réordonnent au glisser-déposer, ce qui est pratique quand vous décidez que deux personnages doivent se croiser trois chapitres plus tôt. L'encyclopédie catalogue les personnages, les lieux et les événements avec leurs images, et Hammer lit vos scènes pour repérer tout seul qui apparaît où.

La synchronisation entre vos appareils, elle, est totalement optionnelle. Et depuis la dernière version, le serveur de sync a une image Docker officielle . Un petit docker compose up -d et c'est en route, avec un volume pour vos données et le PostgreSQL embarqué directement dans le conteneur.

Si vous débutez en auto-hébergement , sachez quand même que le serveur ne parle que HTTP en local alors que les clients Hammer exigent du HTTPS, donc il faudra mettre en place un reverse proxy ou un certificat devant.

Et si vous n'avez pas envie de gérer un serveur, sachez que l'instance officielle hammer.ink est utilisable si vous êtes abonné au Patreon du projet. Vous pouvez aussi vous en passer et poser le dossier dans Syncthing ou Dropbox, mais ça ne marchera qu'entre vos ordinateurs, car les clients mobiles (Android / iOS) Hammer supportent uniquement le protocole intégré.

Bref, un super outil pour les écrivains, les journalistes et autres producteurs de contenu qui aiment bosser offline. Et si Hammer s'arrête de fonctionner un jour, votre roman sera encore avec vous.

  • ✇Korben
  • Votre vieux Morrowind se relance dans le navigateur
    Si vous êtes fan de The Elder Scrolls III: Morrowind, j'ai une bonne nouvelle pour vous : vous allez pouvoir y jouer directement dans un onglet de navigateur ! En effet, c'est ce que nous propose openmw-web , signé Virtastic et sorti il y a quelques jours ! openmw-web fait donc tourner Morrowind dans un browser en recompilant OpenMW vers WebAssembly avec Emscripten. OpenMW, c'est le moteur libre qui réimplémente de zéro celui du jeu, et l'avoir en WebAssembly, ça p

Votre vieux Morrowind se relance dans le navigateur

Par : Korben ✨
28 juillet 2026 à 10:11

Si vous êtes fan de The Elder Scrolls III: Morrowind, j'ai une bonne nouvelle pour vous : vous allez pouvoir y jouer directement dans un onglet de navigateur ! En effet, c'est ce que nous propose openmw-web , signé Virtastic et sorti il y a quelques jours !

openmw-web fait donc tourner Morrowind dans un browser en recompilant OpenMW vers WebAssembly avec Emscripten. OpenMW, c'est le moteur libre qui réimplémente de zéro celui du jeu, et l'avoir en WebAssembly, ça permet de le faire tourner localement sur votre machine dans le navigateur.

Si vous voulez tester, il y a deux façons de vous lancer. Soit via le monde de démo livré avec OpenMW qui est jouable direct avec un petit village, ses PNJ, ses gardes et des créatures qui rôdent autour.

Ou alors vous pointez le navigateur vers le dossier Data Files de votre propre installation. Les fichiers sont alors lus en streaming depuis le disque via la File System Access API, rien n'est uploadé nulle part, et Tribunal, Bloodmoon et vos mods en .esp, .esm ou .bsa sont détectés tout seuls.

Dans ce mode, les sauvegardes atterrissent ensuite sous la forme de vrais fichiers dans un sous-dossier openmw-web-saves, donc vider le cache du navigateur ne les effacera pas. Alors que sur le monde de démo, elles resteront dans le stockage du navigateur, et là si vous videz votre cache en mode bourrin, vous perdrez votre avancement.

J'ai lancé la démo, et je dois dire que ça tourne plutôt bien.

Ce clic autorise une connexion à Google : adresse IP transmise et traceurs possibles. En savoir plus Voir cette vidéo sur YouTube

Virtastic est une boîte dont c'est le métier de recompiler des logiciels desktop en applis web. Ils vendent la prestation de conversion, la maintenance et l'hébergement, et licencient leur bibliothèque de dépendances déjà cross-compilées vers WebAssembly, genre Qt, CPython, OpenCASCADE ou FFmpeg.

Donc Morrowind c'est leur vitrine, avec FreeCAD et Jagged Alliance 2 en preview et Blender annoncé. Ça explique la finition du truc, car le gros du travail était surtout dans la chaîne de dépendances, et pas forcément dans le jeu.

Notez que de ce que j'ai lu dans la doc, sous Windows, visiblement le navigateur refuse d'ouvrir un dossier situé dans Program Files, là où Steam installe par défaut. Il faut donc copier Data Files sur le Bureau ou dans Documents avant de le sélectionner.

Le développeur a évoqué également un mode multijoueur parmi les fonctions à venir, ce que le jeu n'a jamais eu d'origine. Et sur le dépôt, il tient sa roadmap sous forme de tickets qu'il s'ouvre à lui-même.

Je vous parlais d'OpenMW en 2012 , quand c'était encore un moteur prometteur en cours d'écriture et nous voilà 14 ans plus tard, et ce même moteur tourne dans un Chrome OKLM. C'est beau non ? Dans le genre vieux logiciel qui déménage dans le navigateur, y'a aussi ce émulateur x86 en WebAssembly qui reste mon autre chouchou.

Amusez-vous bien !

Source

  • ✇Korben
  • Pascal Editor - Le plan 3D se dessine pendant que Claude bosse
    J'ai jamais fait construire de maison mais je crois savoir que dessiner le plan de sa maison en 3D, ça passe encore par un logiciel assez lourd à installer + une licence, sans oublier l'interface façon Micro Applications de 2003 (qui s'en souvient ??). C'est pourquoi Aymeric Rabot et Wassim Samad ont pris le problème autrement avec Pascal Editor, un éditeur de bâtiments 3D qui tourne simplement dans un onglet de navigateur. Et en plus, c'est gratuit, open source (licence MIT) et surtout sans ins

Pascal Editor - Le plan 3D se dessine pendant que Claude bosse

Par : Korben ✨
27 juillet 2026 à 18:58

J'ai jamais fait construire de maison mais je crois savoir que dessiner le plan de sa maison en 3D, ça passe encore par un logiciel assez lourd à installer + une licence, sans oublier l'interface façon Micro Applications de 2003 (qui s'en souvient ??). C'est pourquoi Aymeric Rabot et Wassim Samad ont pris le problème autrement avec Pascal Editor, un éditeur de bâtiments 3D qui tourne simplement dans un onglet de navigateur. Et en plus, c'est gratuit, open source (licence MIT) et surtout sans inscription.

Vous tracez les murs à la souris, puis viennent les zones, les dalles, les plafonds et les toits. Les portes et les fenêtres sont paramétriques, posez-les sur une cloison, la découpe se fait toute seule en géométrie booléenne via three-bvh-csg. Le mobilier s'accroche au sol, au mur ou au plafond selon l'objet ( allez regarder cet exemple ! )

Tout ça s'organise en Site, Bâtiment, Niveau, puis pièces. Le rendu passe par Three.js en WebGPU, la scène est sauvegardée en local dans IndexedDB, et l'historique remonte 50 étapes en arrière. Sauvegardez ou partagez un projet en ligne par contre, et il part sur leurs serveurs.

Le projet propose aussi @pascal-app/mcp sur npm, un serveur Model Context Protocol qui expose la scène 3D à un agent. Vous installez le package, et la commande pascal-mcp branche Claude Desktop, Claude Code, Cursor ou Codex directement sur votre plan (votre scène part alors chez le fournisseur du modèle, forcément).

Ça donne une trentaine d'outils utilisables en langage naturel : create_room pour sortir une pièce complète depuis un polygone, add_door et add_window sur un mur donné, furnish_room qui meuble selon le type de pièce, measure, check_collisions pour repérer les objets qui se chevauchent, et undo si l'agent part en vrille. Trois prompts sont livrés avec, dont from_brief qui transforme une phrase du genre "un 2 pièces dans 80 m²" en suite de modifications.

Deux outils lisent aussi des images, un pour les plans scannés, un pour les photos de pièce. Attention, ils n'embarquent aucun modèle de vision mais utilisent la capacité sampling du protocole, autrement dit c'est le modèle de votre client MCP qui regarde l'image.

Et puis il y a la synchro. Le serveur écrit dans une base SQLite locale, et la page de l'éditeur s'abonne au flux d'événements. Résultat, vous gardez l'onglet ouvert à côté de votre fenêtre de chat et vous voyez les murs apparaître au fur et à mesure que l'agent travaille. J'avais montré le même genre de bascule avec n8n qui laisse une IA piloter ses workflows , sauf qu'ici le retour est visuel et immédiat.

Côté interopérabilité, un convertisseur avale les fichiers IFC, le format d'échange du BIM, et l'export sort en GLB, STL ou OBJ. Cet export est d'ailleurs arrivé par des contributeurs extérieurs, pas par l'équipe, c'est pour vous montrer à quel point le projet est bien soutenu ! De quoi ensuite passer votre plan dans Blender, ou le texturer avant impression 3D . Un système de plugins permet aussi d'ajouter ses propres types d'objets, avec un exemple officiel qui plante des arbres et des fleurs.

Si vous voulez tester, l' éditeur s'ouvre direct dans le navigateur , et le code est sur GitHub. À vous de voir si vous dessinez tout vous-même ou si vous déléguez à l'IA.

Merci Letsar pour le lien !

Source

  • ✇Korben
  • GitWand - Il trie vos conflits Git et vous montre pourquoi
    perso, je n'ai jamais été très à l'aise avec Git. Je l'utilise tous les jours, mais c'est vraiment pas ma came. Dès que ça devient trop compliqué, genre conflit de merge qui repeint des dizaines de fichiers en rouge, je ne m'en sors plus ^^. Heureusement qu'il y a l'IA pour m'aider dans des moments difficiles ! Mais si vous n'aimez pas confier la gestion de vos merges à un LLM en aveugle, je vous invite à découvrir GitWand, développé par Laurent Guitton, qui s'occupe uniquement de la gestion des

GitWand - Il trie vos conflits Git et vous montre pourquoi

Par : Korben ✨
27 juillet 2026 à 18:52

perso, je n'ai jamais été très à l'aise avec Git. Je l'utilise tous les jours, mais c'est vraiment pas ma came. Dès que ça devient trop compliqué, genre conflit de merge qui repeint des dizaines de fichiers en rouge, je ne m'en sors plus ^^.

Heureusement qu'il y a l'IA pour m'aider dans des moments difficiles ! Mais si vous n'aimez pas confier la gestion de vos merges à un LLM en aveugle, je vous invite à découvrir GitWand, développé par Laurent Guitton, qui s'occupe uniquement de la gestion des conflits avec Git et vous laisse gérer le reste.

Gitwand, c'est donc un client Git open source, sous licence MIT, qui classe chaque bloc conflictuel selon des règles fixes et ne résout automatiquement que ceux dont le résultat ne fait aucun doute.

Pour cela, il dispose de plusieurs patterns déterministes :

  • same_change, c'est quand les deux branches ont écrit exactement la même chose.
  • whitespace_only ne voit qu'une indentation qui a bougé,
  • reorder_only les mêmes lignes remises dans un autre ordre.
  • Un numéro de version qui change, lui, tombe dans value_only_change.
  • Et puis il y a complex, le fourre-tout des modifications qui se chevauchent pour de vrai. Celle-là n'est jamais tranchée toute seule.
  • git rerere rejoue les résolutions que vous avez déjà tranchées à la main,
  • et Mergiraf se branche directement dans git merge pour arbitrer en lisant l'arbre syntaxique de votre code.

Ce qui change ici, c'est que chaque décision est justifiée. En effet, chaque bloc reçoit un score de confiance ainsi qu'une trace qui nomme le motif retenu ligne par ligne.

Par exemple, si une branche écrit const theme = 'dark', et l'autre const theme = localStorage.getItem('theme') ?? 'dark', hé bien l'outil garde la seconde, étiquette sa décision prefer-theirs, et affiche 97 % de confiance à côté.

Sur la page d'accueil, l'outil annonce 95 % des conflits triviaux résolus automatiquement. Le moteur est aussi exposé aux agents IA via un serveur MCP, ce protocole qui branche des outils externes sur des assistants comme Claude Code ou Cursor. L'installation se fait comme ceci : claude mcp add gitwand -- npx -y @gitwand/mcp.

L'agent réclame un aperçu, récupère les blocs déjà réglés, et ne garde que les cas ambigus, avec les trois versions du code sous les yeux. Le modèle ne touche qu'à ce qu'aucune règle ne sait faire, soit l'inverse de ce qu'on voit d'habitude.

Le projet est jeune et ça se voit. Mais ça vaut le coup d'essayer parce que je pense que ça peut rendre de nombreux services. L'app existe pour macOS, Linux et Windows, l'interface est traduite en français, et elle se double d'une ligne de commande (npm i -g @gitwand/cli) et d'une extension VS Code.

Si l'interface graphique vous tente, je vous avais montré Gittyup dans le même registre, et pour les irréductibles du terminal j'avais présenté Lazygit .

À vous maintenant de commencer par gitwand resolve --dry-run --verbose pour voir "à blanc" ce qu'il trouve et comment il aurait tranché pour le merge.

Merci à Laurent pour le lien !

Source

  • ✇Korben
  • Open Archiver - L'archiveur qui perdait des emails (mais c'est corrigé, ouf !)
    Un import qui affiche "terminé" et qui a mangé une partie de vos mails au passage, c'est le genre de bug qu'on ne voit jamais venir... Hé bien Open Archiver vient d'en corriger quatre d'un coup. Open Archiver c'est une plateforme d'archivage d'emails auto-hébergée développée par Weishest, dont la seule et unique mission est d'aspirer vos boîtes et de les stocker en .eml sur votre serveur. Mais attention, le mot "archivage" a son importance, parce que ce n'est pas un backup. Je m'

Open Archiver - L'archiveur qui perdait des emails (mais c'est corrigé, ouf !)

Par : Korben ✨
27 juillet 2026 à 18:24

Un import qui affiche "terminé" et qui a mangé une partie de vos mails au passage, c'est le genre de bug qu'on ne voit jamais venir... Hé bien Open Archiver vient d'en corriger quatre d'un coup.

Open Archiver c'est une plateforme d'archivage d'emails auto-hébergée développée par Weishest, dont la seule et unique mission est d'aspirer vos boîtes et de les stocker en .eml sur votre serveur.

Mais attention, le mot "archivage" a son importance, parce que ce n'est pas un backup. Je m'explique... l'idée c'est de garder un dépôt consultable et inaltérable de tout ce qui est passé par vos boîtes, ce qui intéresse surtout les structures ou les personnes comme moi qui doivent pouvoir retrouver un échange trois ans plus tard parce qu'on leur demande tout un tas de trucs tout le temps ^^.

Côté sources, il avale de l'IMAP, du Google Workspace, du Microsoft 365, des fichiers PST, des .eml zippés et du mbox. Ensuite, vos mails archivés finissent chez vous, sur votre disque ou dans un bucket S3, chacun accompagné de son empreinte SHA256 pour repérer une altération.

La grosse news de cette nouvelle release, c'est la recherche avancée. En effet, un panneau de filtres est apparu à côté du champ de mots-clés. Vous restreignez à une source d'ingestion, à une boîte précise, à une fenêtre de dates, aux mails qui ont une pièce jointe ou à ceux qui n'en ont pas et expéditeurs et destinataires s'excluent autant qu'ils s'incluent.

Le panneau de filtres de la recherche avancée, ajouté en v0.5.2

Le mot-clé, lui, peut viser une partie précise du message. Chercher "facture" dans les noms de pièces jointes ne remonte plus tous les mails qui prononcent le mot, juste ceux qui transportent un fichier facture.pdf. Et comme la recherche entière vit dans l'URL, une requête se met en favori et se rejoue à l'identique. L'API suit, avec un GET /v1/search qui accepte les mêmes paramètres que l'interface.

Attention quand même si vous faites la MAJ, faudra relancer un reindex . Et comme les mails existants sont marqués "déjà indexés" à la montée de version, c'est une reconstruction complète qu'il vous faut, pas le simple rattrapage des trous.

Puis surtout, ces notes de version annoncent que plusieurs correctifs "ferment des chemins où un import pouvait sauter ou dupliquer des messages tout en signalant un succès". Le cas le plus vicieux vient d'un composant qui découpe le fichier en messages et qui rendait la main trop tôt. Node recollait alors les morceaux et plusieurs mails arrivaient soudés et finissaient archivés comme un seul. Les imports PST, eux, fabriquaient des messages malformés que les lecteurs affichaient de travers, et une simple re-synchronisation ré-archivait le fichier entier en doublons.

Le plus spectaculaire reste quand même le nom de pièce jointe trop long. Au-delà de 255 octets, l'écriture sur le disque échouait et emportait l'email complet avec elle. Bref, beaucoup de soucis quoi...

Donc si vous tournez déjà dessus, la question à se poser, c'est de savoir si votre archive est déjà foireuse ou pas car un reindex ne la réparera pas. Comme il reconstruit l'index de recherche à partir de ce qui est sur le disque, un message jamais écrit ne réapparaîtra pas. Mais bon, voilà, le découpeur de mbox journalise maintenant son nombre de messages, ce qui rend l'écart visible entre le fichier source et l'archive. Pour le reste, il faudra réimporter ce qui manque

Pour le faire fonctionner, comptez 4 Go de RAM, ou 2 Go si vous branchez PostgreSQL, Valkey et Meilisearch en externe. Le cœur est en AGPL, ça se lance avec un docker compose up, et une démo publique tourne en ligne si vous voulez tâter le truc avant. Pour ma part, je pense que c'est intéressant en entreprise, mais clairement, une usine à gaz, si vous avez juste un compte Gmail à archiver. A la place, je vous avais déjà montré Eonvelope et Bichon , qui sont deux archiveurs autrement plus légers !

Et si c'est pour faire de la recherche, ce que je vous conseille, c'est de faire comme moi, c'est-à-dire un RAG qui indexe tous vos emails en local et qui vous permet de chercher dedans facilement avec n'importe quel LLM qui supporte les outils MCP. Moi je fais ça avec LEANN et ça marche très bien .

Open Archiver est à découvrir ici !

  • ✇Korben
  • Rapid-MLX - Installer un serveur IA local sur votre Mac
    Si vous avez un Mac Apple Silicon et que vous en avez assez de payer des tokens à chaque requête, Rapid-MLX vaut le détour. C'est un moteur d'inférence local maintenu par Raullen Chai, qui tape directement dans les kernels MLX d'Apple, sans repli sur llama.cpp ni couche Metal intermédiaire. Et si le nom vous dit vaguement quelque chose, c'est normal puisque c'est un fork de vLLM-MLX, le serveur de Wayner Barrios dont je vous parlais en mai . Rapid-MLX a juste pris

Rapid-MLX - Installer un serveur IA local sur votre Mac

Par : Korben ✨
27 juillet 2026 à 11:33

Si vous avez un Mac Apple Silicon et que vous en avez assez de payer des tokens à chaque requête, Rapid-MLX vaut le détour. C'est un moteur d'inférence local maintenu par Raullen Chai, qui tape directement dans les kernels MLX d'Apple, sans repli sur llama.cpp ni couche Metal intermédiaire. Et si le nom vous dit vaguement quelque chose, c'est normal puisque c'est un fork de vLLM-MLX, le serveur de Wayner Barrios dont je vous parlais en mai . Rapid-MLX a juste pris un rythme de publication plus soutenu des deux.

Ce que ça vous donne, c'est donc un serveur HTTP qui parle le même langage que l'API d'OpenAI et celle d'Anthropic. Vos scripts, Cursor, Aider, LangChain ou Claude Code continuent de fonctionner, sauf qu'ils tapent sur votre machine au lieu d'un datacenter.

Donc je vous propose de voir ensemble comment installer ça.

Étape 0 : Vérifier que votre Mac est éligible

Le script d'installation contrôle plusieurs choses avant de lancer quoi que ce soit, et autant les connaître d'avance. Il faut une puce Apple Silicon et il n'y a pas de version Linux ni Windows, ni de support CUDA ou AMD.

Le script d'installation accepte encore macOS 13 Ventura, mais le vrai plancher est macOS 14 Sonoma. La formule Homebrew l'exige, et surtout MLX, la brique Apple sur laquelle tout repose, ne publie de paquets macOS que pour les versions 14, 15 et 26. Sur un Mac resté en Ventura, ça cassera donc à l'installation des dépendances, quel que soit le chemin choisi.

Dernier point à avoir en tête, c'est pensé pour votre machine à vous et pas pour un serveur. Vous n'y trouverez donc ni authentification multi-utilisateurs, ni quotas de requêtes.

Étape 1 : Installer Rapid-MLX

Le plus simple, c'est Homebrew :

brew install rapid-mlx

Si vous gérez déjà vos environnements Python vous-même, les autres chemins existent :

uv tool install rapid-mlx@latest
python3.12 -m pip install rapid-mlx

Il y a aussi un installeur en une ligne (curl -fsSL https://rapidmlx.com/install.sh | bash) qui détecte votre RAM et vous propose un modèle adapté. Il crée un venv isolé dans ~/.rapid-mlx/ et pose le binaire dans ~/.local/bin/. Un curl | bash reste un curl | bash. La formule Homebrew fait exactement le même boulot, donc l'installeur en ligne perd de son intérêt.

L'installation de base pèse dans les 460 Mo et la vision, l'audio et les embeddings sont des extras optionnels, vous les ajouterez seulement si vous en avez l'usage.

Étape 2 : Choisir un modèle qui tient dans votre RAM

C'est là que la plupart des gens se plantent, en chargeant un modèle trop gros et en concluant que "ça rame". Sur Mac, la RAM est unifiée, donc le modèle mange directement dans la mémoire que se partagent le CPU et le GPU.

Les paliers recommandés par le projet :

RAMModèle conseillé
8 à 23 Go`qwen3.5-4b-4bit`
24 à 47 Go`gpt-oss-20b-mxfp4-q8`
48 à 95 Go`qwen3.6-35b-8bit`
96 Go et plus`gpt-oss-120b-mxfp4-q8`

Le catalogue complet se liste avec la commande rapid-mlx models, et rapid-mlx info <alias> vous donne le profil détaillé d'un modèle. Si vous voulez sortir du catalogue maison, le filtre matériel de Hugging Face que je vous montrais fin juin fait exactement ce tri à votre place.

Pour utiliser un autre modèle que celui par défaut, il suffit de reprendre l'alias affiché par rapid-mlx models et de le passer en argument. Et si vous préférez télécharger les poids à l'avance, sans rien lancer, c'est le boulot de rapid-mlx pull, qui accepte aussi bien un alias du catalogue qu'un identifiant Hugging Face :

rapid-mlx pull qwen3.5-9b-4bit

Le modèle atterrit dans le cache Hugging Face de votre machine, et ensuite rapid-mlx chat qwen3.5-9b-4bit ou rapid-mlx serve qwen3.5-9b-4bit chargeront ce modèle-là. Le pull préalable reste facultatif, chat et serve téléchargent d'eux-mêmes ce qui manque, mais autant rapatrier les gigas tranquillement avant plutôt qu'au moment où vous voulez bosser.

Étape 3 : Vérifier que ça tourne

Avant de bricoler des intégrations, testez en direct :

rapid-mlx chat

Ça part sur qwen3.5-4b-4bit par défaut, télécharge les poids au premier lancement (comptez 2,5 Go) et vous lâche dans une interface (REPL). /help listera les commandes slash, et /exit vous permettra de quitter le chat.

Une subtilité qui évite de mal interpréter ce premier test, c'est que dans le chat, le raisonnement est coupé par défaut, histoire que le modèle ne vous déballe pas sa réflexion à l'écran. En mode serveur par contre c'est l'inverse, et ça change la vitesse ressentie du tout au tout. J'y reviens plus bas.

Étape 4 : Lancer le serveur

Le vrai intérêt, c'est le mode serveur :

rapid-mlx serve qwen3.5-4b-4bit

Vous récupérez un endpoint sur http://localhost:8000. Le test qui confirme que tout est en place :

curl http://localhost:8000/v1/chat/completions \
 -H "Content-Type: application/json" \
 -d '{"model":"default","messages":[{"role":"user","content":"Dis bonjour !!"}]}'

Et côté Python, vous gardez le SDK OpenAI tel quel, seule l'URL de base change :

from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="not-needed")
print(client.chat.completions.create(
 model="default",
 messages=[{"role": "user", "content": "Say hello"}],
).choices[0].message.content)

Pointez n'importe quel client compatible OpenAI sur http://localhost:8000/v1 et c'est réglé. Cursor, Aider, LibreChat, Open WebUI, LangChain, tous marchent avec ce seul changement d'URL. Il y a aussi /v1/embeddings pour du RAG local et /v1/responses pour le Codex CLI.

Étape 5 : Brancher Claude Code dessus

C'est le morceau le plus intéressant du lot, et il tient en deux variables d'environnement. Serveur lancé d'un côté, puis dans un autre terminal :

ANTHROPIC_BASE_URL=http://localhost:8000 ANTHROPIC_API_KEY=not-needed claude

Attention quand même, l'URL de base doit être la racine, sans /v1 à la fin. Le SDK Anthropic ajoute /v1/messages tout seul, donc si vous mettez /v1 vous obtenez /v1/v1/messages et ça casse.

Depuis la 0.10.14, l'appel d'outils passe par une grammaire contrainte activée par défaut, donc plus besoin de bidouiller un --tool-call-parser à la main pour que les tool calls soient parsables. Pour du Claude Code sérieux, visez plutôt un gros modèle, la doc officielle recommande par exemple qwen3.6-35b-4bit en exemple.

Quand ça coince

Le réflexe à avoir avant de chercher ailleurs :

rapid-mlx doctor

Les trois pannes les plus courantes sont toujours les mêmes.

Débit décevant côté serveur, c'est le raisonnement : les Qwen 3.5 et 3.6 démarrent en mode réflexion, donc ils pensent à voix haute avant de répondre, et --no-think règle l'affaire.

Plantage mémoire, votre modèle est trop gros pour la RAM disponible, redescendez d'un palier ou prenez une quantification plus agressive. Appels d'outils qui arrivent en texte brut, la récupération automatique gère la plupart des cas, sinon vous forcez le parser correspondant à votre modèle.

Voilà, grâce à ça, votre Mac est maintenant un serveur d'IA super rapide ! Plus de facture au token, et vos prompts ne sortent plus de la pièce.

Merci à Philobois pour le lien !

  • ✇Korben
  • Subwave - La radio maison qui réveille vos MP3 oubliés
    Si vous avez un Navidrome qui tourne dans un coin et un serveur Ollama qui passe ses journées à ne rien faire, vous ne vous êtes jamais dit que les deux pourraient bosser ensemble ? C'est en tout cas ce qu'a flairé Parminder Klair qui a branché l'un sur l'autre et en a sorti une vraie station de radio, avec un DJ qui parle entre les morceaux. Son DJ baptisé Subwave ne fait pas de la lecture aléatoire. À chaque tour, le modèle utilise des outils qui lui permettent de fouiller la b

Subwave - La radio maison qui réveille vos MP3 oubliés

Par : Korben ✨
27 juillet 2026 à 10:54

Si vous avez un Navidrome qui tourne dans un coin et un serveur Ollama qui passe ses journées à ne rien faire, vous ne vous êtes jamais dit que les deux pourraient bosser ensemble ? C'est en tout cas ce qu'a flairé Parminder Klair qui a branché l'un sur l'autre et en a sorti une vraie station de radio, avec un DJ qui parle entre les morceaux.

Son DJ baptisé Subwave ne fait pas de la lecture aléatoire. À chaque tour, le modèle utilise des outils qui lui permettent de fouiller la bibliothèque, regarder ce qui vient de passer, consulter la grille des programmes, lire la météo. Il choisit le titre suivant avec une raison, écrit une intro courte, la synthèse vocale la lit, et Liquidsoap baisse la musique sous la voix.

Le vrai boulot ensuite c'est dans l'audio. L'analyseur embarqué mesure le tempo, la tonalité, le volume, et surtout la façon dont chaque morceau se termine. Un vrai fondu se laisse filer, une fin sèche se coupe net.

Il sait aussi repérer les intros chantées pour que le DJ ne cause pas par-dessus la voix. Ça, par contre, réclame l'image lourde de l'analyseur, une ligne à ajouter dans le fichier .env, et elle est en amd64. Sur un NAS ARM, ça passe en émulation.

Andon FM , dont je vous parlais en mai, c'était le spectacle avec 4 IA qui achetaient leur musique et partaient en vrille en direct alors qu'ici, Subwave c'est l'outil qu'on installe chez soi, pour jouer ses propres fichiers.

Côté modèle, pas besoin d'artillerie lourde puisque Klair fait tourner un modèle 9B, du Qwen3.5 plus exactement, sans le raisonnement et avec de l'appel d'outils activé. "Les modèles plus gros écrivent de meilleurs textes, mais ils ne sont pas obligatoires", explique-t-il sur son site, "La mémoire de session compte plus que la taille du modèle. Sans elle, le DJ se répète en moins d'une heure."

La station se pilote depuis une console d'admin supportant jusqu'à 24 personas de DJ avec chacun sa voix, une grille sur la semaine où chaque créneau a son ambiance, et des compétences que le DJ enchaîne entre les titres, genre météo, infos ou trafic. Rassurez-vous, ces compétences sont de simples fichiers texte posés dans un dossier. Remplacer le flux RSS de la BBC par le vôtre ne demande donc pas de recompiler quoi que ce soit.

Le parti pris de cet outil, c'est le format radio et pas la playlist. Un seul flux Icecast, tout le monde entend la même chose au même instant, et aucun bouton pour passer au suivant. L'opérateur peut sauter un titre depuis l'admin, l'auditeur non. Klair le dit lui-même, les gens adorent ou décrochent immédiatement.

De son côté, le 100 % local tient à peu près la route avec Ollama, Piper ou Kokoro pour la voix, votre Navidrome, aucune clé d'API. Il n'y a que 2 appels sortant. 1 pour la météo via Open-Meteo et l'autre c'est MusicBrainz activé par défaut pour retrouver l'année d'origine des morceaux.

Pour le reste il vous faut Navidrome et un hôte Docker, comptez 10 minutes d'installation. Le flux sort toujours en MP3, avec des sorties Opus, AAC ou FLAC en plus si vous les activez, et un fichier .pls pour tuner depuis Sonos ou VLC. Les applications iOS et Android sont dispo en France, gratuites. Il y a même un serveur MCP, donc Claude Desktop peut réclamer un morceau à l'antenne.

Dernier point important que je tiens à préciser : Diffuser votre bibliothèque à d'autres que vous, c'est de la représentation publique, avec deux droits distincts à couvrir : la composition et l'enregistrement. En France, la première passe par la SACEM, le second par la SPRÉ. Donc soit vous l'utilisez comme station privée juste pour vous, soit vous ne diffusez que de la musique libre de droit. Et encore là, j'ai déjà entendu des histoires où la SACEM s'est servie au passage sur ce genre de musique, donc renseignez-vous bien.

Le code est en MIT, et vous pouvez écouter la démo avant de vous lancer.

  • ✇Korben
  • Midscroll - Le clic-molette de Windows débarque sous Linux
    Si vous ne connaissez pas Linux, il faut savoir que sur ce système d'exploitation, le clic milieu colle la sélection. Moi, c'est un truc que j'aime bien, mais c'est surtout un héritage de X11 qui se marche complètement dessus avec l'autoscroll . Du coup Firefox désactive le sien par défaut sur Linux, et Chromium ne l'active nativement que sous Windows. Mais c'était sans compter sur Grant Hendricks qui a décidé de faire autrement avec midscroll . Midscroll ne s'accroch

Midscroll - Le clic-molette de Windows débarque sous Linux

Par : Korben ✨
24 juillet 2026 à 16:20

Si vous ne connaissez pas Linux, il faut savoir que sur ce système d'exploitation, le clic milieu colle la sélection. Moi, c'est un truc que j'aime bien, mais c'est surtout un héritage de X11 qui se marche complètement dessus avec l'autoscroll . Du coup Firefox désactive le sien par défaut sur Linux, et Chromium ne l'active nativement que sous Windows. Mais c'était sans compter sur Grant Hendricks qui a décidé de faire autrement avec midscroll .

Midscroll ne s'accroche à aucun toolkit, et se branche sur l'entrée du noyau. Ensuite, il capte chaque souris en evdev , la re-émet dans un clone uinput , et glisse ses événements de molette au passage. Rien au-dessus n'a donc besoin de coopérer, donc Wayland et X11 s'en fichent, et vos applis Qt, GTK ou Electron ne voient qu'une molette ordinaire.

Les gens sous Windows qui utilisent l'autoscroll savent que la vitesse dépend de l'écart. Un centimètre sous le point d'appui et la page descend au ralenti, la moitié de l'écran ou plus bas et elle défile à toute berzingue. Et tant que la molette reste enfoncée, ça scroll sans s'arrêter. C'est super pratique quand on est face à des pages web ultra longues.

Alors pour Midscroll, la courbe d'accélération qu'a mise au point Grant, n'a pas été bricolée au feeling. En fait, c'est la même courbe que celle de Chromium, reprise telle quelle : 0,000008 × distance^2,2 en pixels par milliseconde, avec une zone morte de 15 px histoire de ne pas déclencher sur un clic simple...

Et comme le middle-drag, ça sert déjà dans un logiciel de CAO ou dans Minecraft, il y a une liste d'exclusion pour FreeCAD, OrcaSlicer et Minecraft dedans. Comme ça, tant que ces fenêtres sont au premier plan, midscroll se retire en silence.

Et si tenir le bouton vous gonfle parce que vous êtes trop faible, le mode toggle inverse la logique : le pointeur circule librement une fois le défilement lancé d'un clic, et le premier clic venu remet tout à l'arrêt. C'est le fonctionnement de l'explorateur Windows ET de Firefox, et c'est une fonctionnalité qui a été beaucoup réclamée, même si on perd la faculté de coller du texte qui a été surligné.

Bien sûr, toutes les valeurs sont paramétrables. On peut régler la vitesse à laquelle ça part, la cadence des événements et dans quel sens ça défile.

Côté installation, des paquets pour Arch, Debian/Ubuntu et Fedora sont dispo, plus un install.sh pour le reste. Le flatpak, lui, est hors jeu car son bac à sable ferme totalement l'accès à uinput.

Le projet est hyper jeune, donc traitez-le comme tel et n'hésitez pas à contribuer pour soutenir le dev. Dans le registre confort Windows sous Linux, j'avais parlé de Wubuntu qui va beaucoup plus loin dans le mimétisme, et côté Wayland je vous avais montré niri et son défilement infini de fenêtres.

À tester et si ça vous gonfle, un sudo systemctl stop midscroll et on n'en parle plus.

  • ✇Korben
  • uhubctl - Couper le courant d'un port USB en une commande
    Votre clé 4G ou Wifi que vous avez connectée en USB sur un vieux serveur situé au fond du garage, plante une fois ou deux fois par semaine et à chaque fois faut aller débrancher la clé et la rebrancher pour la réveiller / ressusciter ? Et bien c'est fini la galère les amis, puisque uhubctl règle ça en une commande. Cet outil coupe puis rallume le courant d'un port USB précis, sans que vous n'ayez à toucher au moindre câble. C'est donc un petit utilitaire en ligne de commande, écri

uhubctl - Couper le courant d'un port USB en une commande

Par : Korben ✨
24 juillet 2026 à 07:57

Votre clé 4G ou Wifi que vous avez connectée en USB sur un vieux serveur situé au fond du garage, plante une fois ou deux fois par semaine et à chaque fois faut aller débrancher la clé et la rebrancher pour la réveiller / ressusciter ? Et bien c'est fini la galère les amis, puisque uhubctl règle ça en une commande. Cet outil coupe puis rallume le courant d'un port USB précis, sans que vous n'ayez à toucher au moindre câble.

C'est donc un petit utilitaire en ligne de commande, écrit en C par Vadim Mikhailov, qui pilote l'alimentation électrique de vos ports USB un par un. uhubctl -a off -p 2 éteint le port 2, -a on le rallume, et -a cycle enchaîne les deux avec une petite pause au milieu. C'est pile-poil ce qu'il faut pour rebooter par exemple un modem 4G figé ou une webcam qui ne répond plus.

Par contre, désolé mais ça ne fonctionne pas sur n'importe quel hub USB. Il vous faut un hub intelligent qui gère le per-port power switching, autrement dit capable de couper le jus d'un seul port sans toucher aux autres. Rassurez-vous, si vous ne savez pas quoi acheter, le projet maintient une liste de modèles compatibles que vous pouvez consulter ici .

Après y'a certains hubs qui coupent bien la connexion data mais laissent passer le courant (le fameux VBUS). Du coup vous croyez avoir éteint le port, et le téléphone branché dessus continue tranquillement de charger. Alors pour vérifier, branchez un ventilo ou une petite lampe USB et lancez la coupure. Si ça s'arrête vraiment, votre hub est bon. Sinon il sait uniquement couper la data, et pas l'alim.

Mais en tout cas, une fois le bon matériel entre les mains, les usages deviennent vraiment sympas ! Par exemple, avoir un disque dur USB alimenté seulement quand vous en avez besoin, histoire de tuer le phantom load qui bouffe du courant pour rien (pensez juste à bien le démonter avant de couper le jus, sinon bonjour la corruption ^^).

Y'a aussi le cluster de Raspberry Pi que vous allumez et éteignez nœud par nœud. Ou encore un plugin OctoPrint qui coupe l'alim USB de l'imprimante 3D une fois l'impression finie. Y'a même des bidouilleurs qui pilotent un ventilo ou une guirlande LED avec.

Côté installation, rien de méchant : apt install uhubctl sur Debian, Ubuntu et Raspbian, brew install uhubctl sur Mac. Sous Linux il faudra passer par sudo ou poser une règle udev pour les permissions, sinon l'outil râlera. Sur Windows par contre, laissez tomber pour la coupure d'alim. Le driver USB de Microsoft ne laisse pas passer la commande, donc uhubctl compile mais n'éteint rien du tout.

Et si vous visez le Raspberry Pi, gardez un œil sur ses bizarreries car sur pas mal de modèles, tous les ports sont liés. Si vous en coupez un, vous les coupez tous. La parade classique, c'est donc de brancher un vrai hub compatible sur le Pi et de piloter ses ports à lui.

Et si vous cherchez quoi en faire côté DIY de votre Pi, j'avais listé 130 idées pour votre Raspberry Pi qui se marient bien avec ce genre de contrôle à distance.

Bref, si vous bricolez de la domotique ou un rack de Raspberry Pi, vérifiez d'abord votre hub, puis foncez. C'est gratuit, open source et ça évite pas mal d'allers-retours vers la multiprise.

  • ✇Korben
  • Une salle de contrôle satellite maison, 100% européenne
    Une salle de contrôle satellite, celle qu'on imagine avec des grands écrans et des ingénieurs en blouse, Clément Igonet en a monté une version perso qui tient sur un seul serveur. Son projet Overwatch affiche 23 satellites qui défilent en temps réel sur un globe. Vous cliquez sur n'importe lequel pour lire, en direct, sa tension de batterie, ses températures et ses courants. Le tout à partir de données 100% ouvertes. Et il y a deux trucs vraiment sympas à regarder ! D'abord, la ba

Une salle de contrôle satellite maison, 100% européenne

Par : Korben ✨
23 juillet 2026 à 12:02

Une salle de contrôle satellite, celle qu'on imagine avec des grands écrans et des ingénieurs en blouse, Clément Igonet en a monté une version perso qui tient sur un seul serveur. Son projet Overwatch affiche 23 satellites qui défilent en temps réel sur un globe. Vous cliquez sur n'importe lequel pour lire, en direct, sa tension de batterie, ses températures et ses courants. Le tout à partir de données 100% ouvertes.

Et il y a deux trucs vraiment sympas à regarder ! D'abord, la batterie de chaque satellite monte et descend selon qu'il passe au soleil ou dans l'ombre de la Terre, et ça se voit direct sur le graphe. Ensuite, pour chaque engin, une carte montre quelles stations au sol l'ont capté : tel satellite entendu depuis Kitakyushu, Buenos Aires et un jardin en Bavière. C'est une vraie photo vivante du réseau de radioamateurs qui écoutent le ciel !

Les positions des engins viennent de CelesTrak, la télémétrie de SatNOGS, le réseau mondial de stations tenues par des radioamateurs bénévoles, et le fond de carte, c'est de l'imagerie Sentinel-2 de Copernicus. C'est un peu comme ce globe temps réel qui agrège avions, navires et radios , sauf qu'ici on écoute des satellites.

Un truc qui m'a surpris, d'ailleurs c'est que sur environ 1700 satellites encore vivants, seulement 23 émettent en clair ET sont vraiment entendus par une antenne. C'est ça l'état réel de la télémétrie satellite ouverte aujourd'hui. J'avais déjà parlé d'un radioamateur qui décode le signal d'une sonde chinoise , et ici c'est la même idée, mais servie sur un joli globe.

Le tout est open source sous licence AGPL, auto-hébergé en Europe, dans la même logique que la stack privacy européenne dont je vous parlais .

La démo est juste ici , amusez-vous bien à cliquer sur tous ces satellites !

  • ✇Korben
  • Mage-Flow - Le modèle de diffusion de Microsoft qui tourne sur Mac
    Microsoft vient de publier Mage-Flow, un modèle de génération d'images de 4 milliards de paramètres, et dont l'objectif est d'atteindre la qualité des gros modèles sans en avoir la taille. Là où FLUX.2 embarque 32 milliards de paramètres, Qwen-Image 20 et Z-Image 6, Mage-Flow joue dans la même cour mais seulement avec 4 milliards de paramètres. Le pari de Microsoft, c'est ce qu'on appelle le co-design. Au lieu d'empiler les paramètres, Mage-Flow mise sur deux briques taillées ense

Mage-Flow - Le modèle de diffusion de Microsoft qui tourne sur Mac

Par : Korben ✨
23 juillet 2026 à 11:44

Microsoft vient de publier Mage-Flow, un modèle de génération d'images de 4 milliards de paramètres, et dont l'objectif est d'atteindre la qualité des gros modèles sans en avoir la taille. Là où FLUX.2 embarque 32 milliards de paramètres, Qwen-Image 20 et Z-Image 6, Mage-Flow joue dans la même cour mais seulement avec 4 milliards de paramètres.

Le pari de Microsoft, c'est ce qu'on appelle le co-design. Au lieu d'empiler les paramètres, Mage-Flow mise sur deux briques taillées ensemble. D'abord Mage-VAE, un tokenizer latent qui encode et décode les images avec 12 à 22 fois moins de calcul par pixel que le VAE de FLUX.2, à qualité de reconstruction équivalente. C'est ce qui débloque la haute résolution, habituellement le point où ces modèles s'étranglent.

Et ensuite un transformer de diffusion multimodal baptisé NR-MMDiT, entraîné en rectified flow matching, avec Qwen3-VL comme encodeur de texte. Un seul checkpoint génère alors de 512 à 2048 pixels, dans n'importe quel ratio, jusqu'à des formats extrêmes en 4:1 sans buckets ni padding. Vous demandez du 512×2048 ou du 2048×512, il vous le sort.

Le modèle existe en trois saveurs. La Base qui tourne en 30 étapes de débruitage, la version RL-aligned à 20 étapes, et la Turbo distillée qui crache une image en 4 étapes seulement. Et il y a son jumeau, Mage-Flow-Edit, qui fait de l'édition d'image par instruction. Vous lui donnez une photo et une consigne en langage naturel, et lui la modifie. Le tout sous licence MIT, poids libres sur Hugging Face, usage commercial compris.

Côté chiffres officiels, tout vient d'un A100 donc c'est pas représentatif sur nos machins mais en gros, on est à 0,59 seconde par image en Turbo, avec un pic mémoire de 18 à 20 Go. Sauf que moi, je n'ai pas d'A100. J'ai un Mac Studio. Et le dépôt ne parle que de CUDA. La doc d'install vous fait compiler flash-attn, qui est une extension qui a besoin d'un toolkit NVIDIA. Zéro mention d'Apple Silicon, zéro mention de MPS, et les exemples sont tous en mode device="cuda" en dur. Bref, pour le moment, je ne suis pas invité à la fête.

Mais en fouillant le code, j'ai trouvé la porte de sortie. Un fichier planqué dans les modules expose un backend alternatif basé sur scaled_dot_product_attention, le mécanisme d'attention natif de PyTorch, prévu JUSTEMENT pour quand flash-attn n'est pas dispo.

Et ce backend-là, il tourne nickel sur Metal. Le piège, c'est que le modèle réclame lui aussi flash-attn par défaut à deux endroits : le transformer, mais aussi l'encodeur Qwen3-VL. Le transformer accepte qu'on bascule plus tard alors que l'encodeur non. Lui, il lit son réglage au moment où il se construit et plante si flash-attn manque. Il faut donc forcer le mode SDPA avant de charger le modèle.

Voici ce que j'ai fait tourner, pour de vrai. On monte un environnement Python, on installe tout sauf flash-attn :

python3 -m venv mageflow && source mageflow/bin/activate

pip install torch torchvision diffusers==0.38.0 "transformers>=5.3,<5.6" accelerate safetensors huggingface_hub einops pydantic pillow loguru

pip install "git+https://github.com/microsoft/Mage.git#subdirectory=mage_flow" --no-deps

Une fois que c'est fait, y'a plus qu'à vous créer un petit script mage.py par exemple qui basculera l'attention sur SDPA avant le chargement, pointera sur mps et génèrera votre image :

import os
os.environ["PYTORCH_ENABLE_MPS_FALLBACK"] = "1"
from mage_flow.models.mage_flow import ModelConfig
ModelConfig.model_fields["attn_type"].default = "sdpa" # AVANT de charger, sinon Qwen3-VL exige flash-attn
ModelConfig.model_rebuild(force=True)

from mage_flow import MageFlowPipeline
pipe = MageFlowPipeline.from_pretrained("microsoft/Mage-Flow-Turbo", device="mps")
img = pipe.generate(["un barista avec un chapeau de cowboy qui réalise un latte art, lumière chaude"], heights=[1024], widths=[1024], steps=4, cfg=1.0)[0]
img.save("out.png")

Ensuite, lancez le script :

python3 mage.py

Le PYTORCH_ENABLE_MPS_FALLBACK sert de filet comme ça si une opération n'existe pas côté Metal, elle basculera sur le CPU au lieu de tout faire tomber. Premier lancement, le modèle se téléchargera, donc comptez une bonne dizaine de Go entre le transformer 4B, l'encodeur Qwen3-VL et le VAE.

Et ça marche !!! Sur mon M4 Max de 128 Go, le modèle charge en une vingtaine de secondes puis génère une image 1024×1024 en 10 secondes une fois chaud.

Mon barista à chapeau de cowboy est sorti impeccable.

Ma toute première génération Mage-Flow sur le Mac Studio : un barista, 1024x1024, 4 etapes en Turbo.

Cette image 1920x1080 a été générée en moins de 6 secondes,

Pour du batch industriel, une carte NVIDIA restera toujours mieux mais pour générer tranquillement chez soi des petites images sans envoyer ses prompts dans le cloud, c'est parfaitement utilisable, et ça rejoint la logique de l'IA qui tourne en local sur votre Mac que je creuse depuis un moment.

Deux détails à connaître avant de vous lancer. Chaque prompt passe par un filtre de contenu obligatoire côté encodeur, sans option pour le désactiver : les prompts jugés interdits reviennent en images de refus. Et chaque image générée porte un watermark Gaussian-Shading planqué dans le bruit initial, lui non plus désactivable. Hé oui, Microsoft trace ses sorties, donc autant le savoir.

Y'a des garde-fous ! J'ai donc très hâte que ce modèle se fasse "libérer".

Reste que c'est un très joli cadeau de la part de Microsoft ! Un modèle libre, compact, qui gère l'édition et n'importe quel ratio, et qui tient sur une machine Apple avec un petit réglage bien caché ^^...

ps: L'image d'illustration de cet article a été générée avec ce modèle.

  • ✇Korben
  • Phantomdrive - La clé USB déverrouillée par un fichier texte
    Ryan Walker, le gars derrière Rootkit Labs, vient de sortir un truc que je trouve super malin. C'est une clé USB, baptisée Phantomdrive, qui se déverrouille en écrivant dans un simple fichier texte stocké dessus. Vous la branchez, vous ouvrez un bloc-notes, vous tapez password:votremotdepasse dans un fichier que vous enregistrez à la racine, et hop, une partition cachée apparaît. Et y'a pas de logiciel pour faire tourner ça ! Au branchement, votre système voit une clé de 8 Go tout ce qu'il y a d

Phantomdrive - La clé USB déverrouillée par un fichier texte

Par : Korben ✨
23 juillet 2026 à 09:06

Ryan Walker, le gars derrière Rootkit Labs, vient de sortir un truc que je trouve super malin. C'est une clé USB, baptisée Phantomdrive, qui se déverrouille en écrivant dans un simple fichier texte stocké dessus. Vous la branchez, vous ouvrez un bloc-notes, vous tapez password:votremotdepasse dans un fichier que vous enregistrez à la racine, et hop, une partition cachée apparaît.

Et y'a pas de logiciel pour faire tourner ça ! Au branchement, votre système voit une clé de 8 Go tout ce qu'il y a de plus banale, et il est incapable de deviner qu'il existe le moindre octet au-delà. Le firmware, lui, n'a aucune notion de système de fichiers, et se contente d'intercepter les commandes USB brutes (les WRITE10 et READ10 que votre ordi envoie pour lire et écrire des blocs) et de les traduire pour la carte SD planquée à l'intérieur.

Et quand il repère le motif password: qui passe, il dérive alors une clé, démonte la partition visible et remonte la seconde, chiffrée en AES-256, le tout en trois secondes chrono.

L'idée derrière ce bricolage, c'est le modèle de menace que ça vient contrer. Par exemple, un volume caché VeraCrypt vous sauve si on vous force à donner votre mot de passe, car vous pouvez mettre en place 2 niveaux de mot de passe. Le premier est un leurre qui ne révèle pas grand-chose et le second ouvre la vraie partition avec tous vos secrets. Mais bon, tout le monde connaît le truc et le simple fait d'avoir un conteneur chiffré sur vous suffit à vous faire passer pour un suspect. Phantomdrive répond donc à ça, puisque rien n'est détectable donc il n'y a rien à vous reprocher... Exactement ce qui se joue aux frontières, où les appareils se font fouiller sans se gêner .

Évidemment, cette invisibilité tient uniquement face à une inspection logicielle, et pas face à un labo qui démonterait la clé. Ryan le reconnaît lui-même, on peut retrouver la carte SD en cassant le boîtier, même s'il l'a noyée dans l'époxy et que la partition cachée, elle, restera chiffrée quoiqu'il arrive.

Sauf que si on dessoude la puce et qu'on lit la mémoire brute, on tombera forcément sur bien plus que les 8 Go annoncés, à cause de ce gros bloc de données illisibles qui trahit l'existence de la partition cachée. La déniabilité joue donc contre un contrôle "pressé" mais pas contre un forensique très motivé. Autre limite rigolote, si vos vraies données contiennent par hasard la chaîne password:, la clé peut alors se déverrouiller toute seule au mauvais moment.

Et surtout, le projet n'a pas été audité. C'est du hardware expérimental fait par une seule personne, sous licence MIT certes, mais pas un coffre-fort certifié. C'est rigolo pour bidouiller, mais pas encore pour lui confier de vrais secrets.

Côté matos, Ryan a utilisé une puce que je ne connaissais pas, la CH569, qui embarque de l'USB3 et un bloc de chiffrement AES matériel. Les débits restent modestes mais suffisants pour de l'usage courant, autour de 9 Mo/s en écriture et 20 Mo/s en lecture. Sachez aussi que s'il est parti sur une carte SD plutôt que de l'eMMC, c'est parce que cette dernière est devenue hors de prix à cause de la flambée des mémoires dopées par l'IA.

Hé oui, même les bidouilleurs hardware se prennent la bulle de l'IA dans les pattes. Voilà, tout est sur GitHub , électronique, mécanique et firmware compris, avec une page de précommande si vous préférez ne pas sortir le fer à souder.

Source : Rootkit Labs

  • ✇Korben
  • Universe Atlas - L'univers à l'échelle réelle dans votre navigateur
    Si vous prévoyez de vous rendre en Islande le 12 août prochain pour admirer l'éclipse totale, vous pouvez déjà vous projeter dans l'expérience grâce à Universe Atlas, un nouvel atlas mis en ligne par Chris Zaharia, qui permet de localiser chaque éclipse de 2026. D'un simple clic, vous êtes transporté à Reykjavik à 17h45 UTC pour voir virtuellement le soleil, en forme de croissant, se lever à l'horizon sous un ciel aux teintes étranges, évoquant cette atmosphère de fin du monde très caractéristiq

Universe Atlas - L'univers à l'échelle réelle dans votre navigateur

Par : Korben ✨
23 juillet 2026 à 08:11

Si vous prévoyez de vous rendre en Islande le 12 août prochain pour admirer l'éclipse totale, vous pouvez déjà vous projeter dans l'expérience grâce à Universe Atlas, un nouvel atlas mis en ligne par Chris Zaharia, qui permet de localiser chaque éclipse de 2026.

D'un simple clic, vous êtes transporté à Reykjavik à 17h45 UTC pour voir virtuellement le soleil, en forme de croissant, se lever à l'horizon sous un ciel aux teintes étranges, évoquant cette atmosphère de fin du monde très caractéristique des éclipses ! (Moi je suis team fin du monde 1999 à l'aéroport de Beauvais, tu connais !! loool)

Reykjavík, le 12 août 2026 vers 18h.

Cette application tourne dans le navigateur et pèse environ 85 ko compressés, ne possède ni moteur de jeu ni dépendance externe, mais repose exclusivement sur du WebGPU brut.

Vous y trouverez 8,4 millions d'étoiles réelles issues des catalogues Gaia DR3 et ATHYG, chacune avec sa distance mesurée et sa vitesse réelle. Si vous remontez le temps de 100 000 ans, vous verrez ainsi la Grande Ourse se désagréger sous vos yeux !

La carte intègre également jusqu'à 2,6 millions de galaxies issues du relevé SDSS, ainsi que les planètes sur leurs orbites képlériennes, l'ISS et 170 satellites positionnés selon leurs éléments orbitaux du jour. L'ensemble est présenté dans un zoom continu couvrant 43 ordres de grandeur, allant du cosmos au quark dans l'infiniment petit, sans aucune coupure de scène.

Impressionnant non ? Alors si je vous dis maintenant que tout a été codé avec Claude code et le modèle Fable 5 ??

Bah non, ne faites pas cette tête, c'est pas grave parce que c'est vraiment top ! Jusqu'à présent, seuls ceux qui savaient coder pouvaient matérialiser leurs idées... Mais avec l'arrivée de l'IA, n'importe qui avec une jolie idée et un peu de débrouillardise peut lui donner vie sans trop de souffrance avec la technique ! Et c'est ça que je trouve magique dans le vibe coding.

Après c'est sûr, faut vérifier et pas faire confiance aveuglément. C'est pourquoi les positions des planètes passent en intégration continue avec des tests qui comparent les datas de l'app avec celles de JPL Horizons, l'éphéméride de la NASA, et comme ça, dès qu'un corps céleste dérive de plus de 0,2 degré, hé bien le build pète. Les générateurs refusent ainsi d'écrire quoi que ce soit qui ne passe pas leurs contrôles physiques.

Ça permet d'avoir un truc sérieux qui marche bien grâce au vibe coding sans pour autant sacrifier la qualité.

Sagittarius A, la lumière courbée autour de son ombre. Le bandeau affiche ses sources : GRAVITY 2022, orbites des étoiles S d'après Gillessen et al. 2017.*

Tout est extrêmement précis et l'échelle réelle est conservée, puisque c'est vraiment le cœur du produit. Le développeur met donc un point d'honneur à ne jamais truquer une taille, une distance ou une vitesse pour faire joli.

Et vous pouvez vérifier qu'il s'y tient ! Appuyez sur X et tout se recolore selon la provenance avec couleurs naturelles pour ce qui est mesuré, ambre pour ce qui a la bonne taille mais un rendu stylisé, cyan pour ce qui est purement illustratif.

Par contre, je trouve dommage qu'on ne puisse pas régler la date et l'heure précisément, ou alors je n'ai pas trouvé comment. Et c'est assez difficile de se caler sur une date et une heure précises, sachant qu'on peut aller de 10 ans en 10 ans, et qu'ensuite le saut n'est pas de 100 ans en 100 ans, mais de 1000 ans en 1000 ans, donc c'est un peu dur de doser. J'y ai passé un petit peu de temps.

Pour que ça fonctionne, il vous faudra WebGPU c'est-à-dire Chrome / Edge ou Safari depuis la version 26. Après Firefox, c'est plus tordu car c'est activé sur Windows depuis la 141, sur les Mac Apple Silicon depuis la 145 mais y'a toujours rien côté Firefox pour les Mac Intel ni pour Linux. Sous Linux, prenez donc plutôt Chrome 144 ou plus récent.

Dans le même genre, je vous avais montré AstroClick pour le système solaire en voxels, et le vénérable Space Engine . Bref, c'est par ici , c'est gratuit, et le code est sur GitHub sous licence MIT.

Ah et pensez à appuyer sur T pour la visite guidée !

Source

  • ✇Korben
  • Reviewer des patches git par mail sans quitter Thunderbird
    Marc Coquand avait très envie d'embarquer son équipe dans un nouveau genre de workflow Git à base d'emails et c'est pour ça qu'il a créé thunderbird-patch-review . Il s'agit d'une extension pour Thunderbird qui, lorsque vous ouvrez un mail qui contient une série de patchs, vous propose un bouton "Review" vous permettant d'accéder à une interface de relecture Git qui va vous être très familière, vous allez voir. Ensuite, si la sé

Reviewer des patches git par mail sans quitter Thunderbird

Par : Korben ✨
20 juillet 2026 à 15:02

Marc Coquand avait très envie d'embarquer son équipe dans un nouveau genre de workflow Git à base d'emails et c'est pour ça qu'il a créé thunderbird-patch-review .

Il s'agit d'une extension pour Thunderbird qui, lorsque vous ouvrez un mail qui contient une série de patchs, vous propose un bouton "Review" vous permettant d'accéder à une interface de relecture Git qui va vous être très familière, vous allez voir.

Ensuite, si la série des patchs vous convient, vous pouvez tous les approuver directement sur votre dépôt local avec la commande git-am sans jamais avoir à quitter votre client mail.

Pour lancer Git, l'extension utilise une API expérimentale maison qui embarque tout le nécessaire dans son paquet sans host de messagerie native à installer séparément. Ça fait un truc en moins à configurer et l'addon vérifie que tout est OK dans un worktree jetable, avant de valider la review.

Comme ça, s'il y a un conflit, le bouton Apply se grise et les erreurs remontent dans l'interface pour que vous puissiez toutes les revoir une par une et faire un retour propre à l'auteur.

Cet add-on a été vibe-codé avec GLM 5.2 et construit pour répondre aux besoins de son équipe. Il hésitait sincèrement à le partager parce que le monde n'est pas encore prêt pour le Vibe Coding, mais il explique sur son site qu'il y avait un sérieux manque d'outils dans l'écosystème pour pouvoir travailler sur des revues de patch directement dans son client mail.

Donc tant pis, yolo, il l'a publié quand même et je pense que ça devrait vous intéresser. Comme quoi faire bosser un agent pour soi n'oblige pas à le planquer.

Maintenant, les patches qui arrivent en pièce jointe ne sont pas encore gérés, les mails en HTML seul non plus, et la collecte d'une série ne cherche que dans le dossier du message ouvert. De plus, l'add-on n'est pas encore publié sur le store Thunderbird, donc vous devrez le packager vous-même en .xpi depuis la racine du projet :

git clone git://mccd.space/thunderbird-patch-review
cd extension && zip -qrX ../patch-review.xpi .

Ensuite, vous chargez le fichier obtenu via le menu engrenage du gestionnaire de modules complémentaires (Installer un module depuis un fichier) et c'est réglé ! Rien de méchant si vous avez déjà bidouillé des extensions Thunderbird, genre Send Later pour planifier vos envois dont je vous parlais il y a un petit moment maintenant.

Voilà, si vous faites déjà du git par email, ça vaut le détour. Le code est en EUPL 1.2, et tout se passe ensuite sur la mailing list de Marc.

Source

  • ✇Korben
  • Moonshine - Et votre serveur Linux sans écran devient une console
    NVIDIA a débranché GameStream, son système maison pour envoyer les jeux de votre PC vers une Shield ou un laptop. Sauf que le protocole, lui, n'est pas mort : Moonlight , le client open source qui le réimplémente, tourne toujours sur Windows, macOS, Linux, Steam Link, Raspberry Pi 4, Apple TV et Xbox, et même sur des Switch et des Vita en homebrew. Et surtout, Hans Gaiser bricole depuis début 2024 une pièce qui manquait côté serveur, Moonshine , qui commence à être sé

Moonshine - Et votre serveur Linux sans écran devient une console

Par : Korben ✨
20 juillet 2026 à 13:51

NVIDIA a débranché GameStream, son système maison pour envoyer les jeux de votre PC vers une Shield ou un laptop. Sauf que le protocole, lui, n'est pas mort : Moonlight , le client open source qui le réimplémente, tourne toujours sur Windows, macOS, Linux, Steam Link, Raspberry Pi 4, Apple TV et Xbox, et même sur des Switch et des Vita en homebrew.

Et surtout, Hans Gaiser bricole depuis début 2024 une pièce qui manquait côté serveur, Moonshine , qui commence à être sérieusement utilisable.

Moonlight n'étant qu'un client, il affiche l'image et renvoie votre clavier, votre souris et votre manette. Derrière, il faut donc forcément une machine qui capture le jeu et qui encode la vidéo en temps réel.

Bref, comme je vous le disais, depuis que NVIDIA a rangé GameStream au placard début 2023, ce rôle revient à des serveurs communautaires. Le seul que la FAQ Moonlight recommande, c'est Sunshine , du collectif LizardByte. C'est codé en C++ sous licence GPL-3 et ça tourne sous Windows, Linux, macOS et FreeBSD. Sauf que Sunshine capture une session de bureau existante ce qui veut dire que sur une machine sans écran, il faut composer avec ça, et c'est de là que vient toute la littérature sur les dongles HDMI factices et autres écrans virtuels...

Alors que Moonshine, lui, est codé en Rust et prend un autre chemin. En fait, chaque session de streaming tourne dans son propre environnement isolé, qui est totalement séparé de votre bureau. Du coup, vous n'avez plus besoin de session active du tout... Une simple tour sans écran fera parfaitement le boulot.

Voilà, si vous avez une machine Linux qui dort dans votre placard avec un GPU dedans, ça peut vous permettre de lancer Moonlight depuis votre canapé à distance, et c'est le serveur qui gérera la session rien que pour vous.

Après, c'est du Linux uniquement, testé sur Arch même si ça remonte que ça tourne aussi sur d'autres distribs, avec systemd obligatoire pour lancer et gérer tout ce qui est processus. Et du côté du GPU, il vous faudra de l'encodage vidéo Vulkan, donc, vous l'aurez compris, une Nvidia RTX ou une AMD RDNA2 ou plus récente, voire une Intel Arc pour les plus motivés.

Voilà, toutes vos vieilles GTX resteront sur le banc de touches... Sans oublier que vous aurez besoin du client Moonlight en version 6.0.0 minimum et que la compatibilité avec les portages non officiels n'est pas garantie.

Les codecs supportés, c'est du H.264, H.265 et AV1, avec du HDR en 10 bits. L'AV1 est marqué expérimental et Hans Gaiser prévient lui-même qu'il fait gonfler la taille des images au fil du temps sur les cartes NVIDIA. Sauf que c'est réglé depuis : NVIDIA a sorti le correctif dans son pilote Vulkan beta 595.44.3.0 et Hans Gaiser a confirmé début avril, mesures à l'appui, que la qualité était revenue à la normale. Son README, lui, n'a pas suivi et vous conseille encore de rester en H.264 ou H.265. Donc si l'AV1 vous tente, prévoyez le pilote Vulkan beta, pas celui de votre distrib.

Notez aussi que Moonshine n'est pas conçu pour être utilisé sur des réseaux publics puisque le protocole GameStream sous-jacent a des limites qui font que le trafic n'est pas entièrement chiffré au niveau applicatif. Donc, si vous vous y mettez, n'exposez jamais les ports de Moonshine directement sur internet. Préférez passer par Tailscale ou un WireGuard par exemple.

Bref, Moonlight, Sunshine, Moonshine... si comme moi, vous vous emmêlez dans les noms, c'est parfaitement normal. N'empêche que c'est un super truc, encore en dev, certes, mais ça promet pour le futur...

Source

  • ✇Korben
  • BMASS - Bootez direct votre PC sur une IA locale
    Balaji Bikshandi avait un rêve ! Il voulait booter sa machine directement sur un LLM sans avoir à passer par le moindre environnement de bureau ! Et il y est parvenu avec son outil BMASS , qui s'installe sur une clé USB de 8 Go, et qui embarque Alpine Linux, llama.cpp et un modèle Qwen3 0.6B évidemment quantisé. Vous allumez l'ordi portable, Alpine démarre depuis la clé et vous tombez sur un prompt BMASS>. Et voilà à partir de là, vous pouvez causer à votre ordinateur en langage

BMASS - Bootez direct votre PC sur une IA locale

Par : Korben ✨
20 juillet 2026 à 12:20

Balaji Bikshandi avait un rêve ! Il voulait booter sa machine directement sur un LLM sans avoir à passer par le moindre environnement de bureau ! Et il y est parvenu avec son outil BMASS , qui s'installe sur une clé USB de 8 Go, et qui embarque Alpine Linux, llama.cpp et un modèle Qwen3 0.6B évidemment quantisé.

Vous allumez l'ordi portable, Alpine démarre depuis la clé et vous tombez sur un prompt BMASS>. Et voilà à partir de là, vous pouvez causer à votre ordinateur en langage naturel. Ensuite, quand vous demandez à BMASS de faire des trucs, celui-ci injecte la commande qui va bien dans une balise et le runtime l'exécute pour de vrai sous un compte Linux non privilégié. Et ensuite, le LLM récupère la sortie brute, pour répondre, à partir de cette "preuve".

Operator: Which operating system is this?
Assistant: <shell>cat /etc/os-release</shell>

Tout le code de BMASS tient en 399 lignes de Python, et nécessite de faire tourner un llama-server en background sur le port 8080 avec 2048 tokens de contexte et 2 threads. Et ensuite lui fait le pont entre le modèle et le shell. Y'a rien de sorcier donc mais comme ça tourne sur du CPU, que c'est hors-ligne, et que ça peut se mettre sur des vieilles machines, c'est plutôt cool...

Voilà je vous laisse avec la vidéo que Balaji a filmée, ça montre le démarrage complet de son IA bootable :

Voir cette vidéo sur YouTube

Ah et petite subtilité qui va vous plaire, le code de BMASS contient une regex baptisée FALSE_EXECUTION_CLAIM dont le boulot est de détecter quand le modèle prétend avoir exécuté une commande alors qu'il n'a rien lancé du tout. Le runtime lui renvoie alors une correction pour lui dire qu'aucune commande n'a été exécutée lors de ce tour. Faut dire que la 0.6B de Qwen hallucine tellement parfois, qu'il lui fallait obligatoirement un garde-fou.

Donc, voilà, côté sécu c'est super léger... y'a juste une regex qui bloque les sudo, doas, pkexec et autres su, mais c'est tout. Pas de conteneur, encore moins de namespace et surtout pas de liste blanche, donc si vous vous lancez, ce sera à déployer uniquement pour rigoler sur une vieille machine sans importance, parce que si demain, le modèle décide de lancer un rm -rf, faudra pas venir chialer ^^.

Petit service au passage si vous voulez tester, la doc d'installation vous fait copier le prompt système dans /opt/bmass/config/system-prompt.txt, sauf que le launcher le cherche dans /opt/bmass/system-prompt.txt.

Dans le genre modèle local qui tient dans presque rien, j'en ai parlé avec Llamafile qui fait tourner un LLM depuis un fichier unique. Et si les bidouilles minimalistes vous amusent, il y a aussi ce mini-PC Linux piloté entièrement en morse .

Perso, je doute que ça serve à grand-chose. Mais le concept est marrant !

  • ✇Korben
  • RetroMac - Le retour des Flying Toasters et du dock en verre
    Maik Klotz, un développeur allemand, a sorti une app menu bar qui repeint votre Mac aux couleurs de Snow Leopard, System 6, Windows 98 ou encore BeOS. Elle s'appelle RetroMac et elle ne touche pas une ligne de votre système, donc pas de risques de tout casser. Le catalogue des thèmes couvre à peu près tout ce qui nous a fait vieillir : le System 6 de 1988 en noir et blanc 1 bit avec ses barres de titre à rayures et sa police Chicago, Mac OS 9 et son Control Strip, l'Aqua bleu bonb

RetroMac - Le retour des Flying Toasters et du dock en verre

Par : Korben ✨
20 juillet 2026 à 09:16

Maik Klotz, un développeur allemand, a sorti une app menu bar qui repeint votre Mac aux couleurs de Snow Leopard, System 6, Windows 98 ou encore BeOS. Elle s'appelle RetroMac et elle ne touche pas une ligne de votre système, donc pas de risques de tout casser.

Le catalogue des thèmes couvre à peu près tout ce qui nous a fait vieillir : le System 6 de 1988 en noir et blanc 1 bit avec ses barres de titre à rayures et sa police Chicago, Mac OS 9 et son Control Strip, l'Aqua bleu bonbon de 2001, le Snow Leopard de 2009, Windows 98, Windows XP et même BeOS. Chaque thème embarque son dock d'époque, ses curseurs, ses icônes et son écran de démarrage animé.

Les économiseurs d'écran sont de la partie aussi, un par thème avec 3D Pipes, FlowerBox, Flying Toasters, Flurry. Si vous ne voyez pas de quoi je parle, c'est que vous êtes trop jeune. Vous en avez de la chance !!

Par-dessus, y'a une trentaine de shaders qui simulent les vieilles dalles : CRT Royal, Sony Trinity, NTSC Composite, VHS, VCR, Game Boy. Vous pouvez les balancer en plein écran, sur un seul moniteur si vous en avez plusieurs, ou sur une seule fenêtre.

Le shader CRT Royal, scanlines et bombement d'écran compris

Le truc auquel je ne m'attendais pas, c'est la caméra virtuelle. RetroMac s'expose également comme une webcam système donc vous débarquez en réunion Zoom, Meet ou Teams avec une tête de VHS mal rembobinée. Effet garanti !! lol.

Et comme RetroMac se contente de peindre un shader par-dessus ce qui est déjà à l'écran, vos apps, vos fichiers et vos réglages système restent totalement intacts, donc c'est sans risques.

Après les thèmes, eux, modifient bel et bien des réglages du dock, de la barre de menus, des icônes du bureau et du fond d'écran, mais c'est rien d'irréversible. Et surtout RetroMac embarque un Health check et un bouton de restauration qui remet tout en place en un clic

Et le rythme de dev est assez dingue puisque le dépôt date du 22 mai et il en est déjà à sa dix-neuvième version. La 2.2, sortie il y a deux jours, ajoute Warcraft I et II qui tournent nativement sur le moteur open source Stratagus , avec le shader CRT qui se pose par-dessus le jeu.

Après le reste, c'est carré de chez Carré, il y a un binaire universel Intel et Apple Silicon. Et côté tarifs, tous les thèmes, tous les curseurs et une vingtaine de shaders sont gratuits. Après il y a un mode pro qui coûtera 8,88 euros une fois pour toutes et ajoutera le shader webcam et le fond d'écran animé.

Autrement, il n'y a pas d'abonnement. Et les sources sont sous GitHub sous licence GPL 3.0 avec même les fonctions payantes dedans. Donc c'est plutôt très ouvert mais pas encore complètement libre.

J'avais déjà parlé de ShaderBeam pour retrouver la netteté du CRT sur un écran moderne, d' Infinite Mac pour glisser un vieux Mac dans une page web, et du Virtual OS Museum et ses 1700 systèmes mais RetroMac la joue autrement, puisqu'il ne vous colle pas un vieil OS dans une fenêtre, mais déguise celui dont vous vous servez ;).

Voilà, si l'idée de faire booter votre M4 comme un Mac de 2001 vous amuse, c'est par ici . Et le jour où ça vous saoule, un clic et tout revient en place.

  • ✇Korben
  • Un demi-million de domaines anti-pub stockés dans 50 Ko de RAM
    Pi-hole sur un Raspberry Pi, c'est cool, mais ça vous coûte quand même quelques dizaines d'euros (lien affilié) et ça squatte une prise en permanence. C'est pourquoi M-Abozaid a fait tenir la même chose dans une clé ESP32-C3 à pas cher (lien affilié). Son firmware bloque ainsi 537 000 domaines de pub en utilisant à peine 50 Ko de RAM, et est capable de répondre à une requête bloquée en 10 millisecondes. Maintenant que j'ai toute votre attention, je vais vous expliqu

Un demi-million de domaines anti-pub stockés dans 50 Ko de RAM

Par : Korben ✨
20 juillet 2026 à 08:13

Pi-hole sur un Raspberry Pi, c'est cool, mais ça vous coûte quand même quelques dizaines d'euros (lien affilié) et ça squatte une prise en permanence. C'est pourquoi M-Abozaid a fait tenir la même chose dans une clé ESP32-C3 à pas cher (lien affilié). Son firmware bloque ainsi 537 000 domaines de pub en utilisant à peine 50 Ko de RAM, et est capable de répondre à une requête bloquée en 10 millisecondes.

Maintenant que j'ai toute votre attention, je vais vous expliquer comment ça marche. En fait, un Pi-hole classique charge toute sa liste de blocage en RAM, sauf que l'ESP32 lui, comme il n'a que quelques centaines de Ko de mémoire vive et pas de PSRAM, il est donc techniquement impossible d'y caser un demi-million de domaines comme ça simplement. Du coup notre cher développeur a dû ruser en hashant chacun des domaines bloqués à max 5 octets chacun (40 bits max).

Tous ces hashes sont ensuite triés une fois pour toutes, puis gravés directement dans la flash de la puce (4 Mo suffisent). Puis quand une requête DNS arrive, le firmware hashe le domaine demandé et fait une recherche par dichotomie dans la flash. Environ 18 lectures suffisent pour trancher parmi les 537 000 entrées, d'où les fameux 10 ms. Et la RAM ne sert jamais à stocker la liste, mais juste à faire tourner le bazar réseau.

Et là où c'est vraiment malin, c'est que 40 bits de hash restent quasi sans collision. Il n'en a eu aucune jusqu'à 141 000 domaines, et une seule à 537 000 donc autant dire rien du tout !

Voir cette vidéo sur YouTube

Après il y a peu de chances que ça remplace Pihole, en tout cas pour le moment, parce qu'il n'y a pas de serveur DHCP. Et activer les mises à jour OTA du firmware demande d'avoir deux partitions, du coup la capacité de l'ESP 32 tombe à 250 000 domaines.

Après le dashboard est plutôt sympa, ça tourne en mDNS sur l'adresse c3adblock.local, avec des compteurs de blocage par client, le bannissement d'un appareil et la possibilité d'ajouter vos propres noms de domaines à bloquer.

Voilà moi je vois vraiment ça comme un espèce de résolveur de secours plutôt qu'un vrai remplaçant pour Pi-hole. Vous le placez derrière votre serveur DNS principal et le jour où celui-ci est en panne, la petite clé prendra le relais pour pas cher. En plus comme on le voit dans la vidéo, ça peut s'alimenter sur le port USB de n'importe quel routeur, donc c'est pratique.

C'est totalement open source sous licence MIT et c'est livré avec un script python qui permet de construire la table des hashes à partir des listes StevenBlack et Hagezi. Pour plus tard, le développeur prévoit un Bloomfilter en mémoire RAM pour zapper la lecture flash sur les 99 % des requêtes qui ne matchent aucun domaine et puis le serveur DHCP dont je vous parlais.

Si les DNS auto-hébergés vous parlent, je vous ai déjà présenté Technitium qui remplace carrément Pi-hole, Unbound et BIND . Et pour les bidouilles ESP32 à quelques euros, y'en a plein, genre celle qui remplace le Touch ID d'Apple .

Bref, un demi-million de domaines de pub bloqués par une puce plus petite qu'une clé USB c'est bien joué !! Le repo est sur GitHub si ça vous tente.

Source

  • ✇Korben
  • Castor - Votre flux vidéo web sur la télé, en top qualité
    Vous avez déjà pesté contre votre télé qui refuse de lire une vidéo pourtant toute bête trouvée sur le web ? Hé bien Kilian Houpeurt aussi et c'est pourquoi il a décidé, plutôt que de râler dans le vide comme un mec lambda sur Twitter, qu'il allait prendre le taureau par les cornes et coder sa propre solution. Ça s'appelle Castor et évidemment ça envoie du bois, lol. En fait c'est un outil en ligne de commande écrit en Go qui est open source et qui permet d'envoyer le vrai flux vidéo d'une page

Castor - Votre flux vidéo web sur la télé, en top qualité

Par : Korben ✨
19 juillet 2026 à 09:57

Vous avez déjà pesté contre votre télé qui refuse de lire une vidéo pourtant toute bête trouvée sur le web ? Hé bien Kilian Houpeurt aussi et c'est pourquoi il a décidé, plutôt que de râler dans le vide comme un mec lambda sur Twitter, qu'il allait prendre le taureau par les cornes et coder sa propre solution.

Ça s'appelle Castor et évidemment ça envoie du bois, lol. En fait c'est un outil en ligne de commande écrit en Go qui est open source et qui permet d'envoyer le vrai flux vidéo d'une page Web directement sur votre télévision en qualité max sans avoir besoin de Chromecast, ni d'AirPlay.

L'astuce, c'est qu'il ne recopie pas votre écran comme le ferait un mirroring (qui rame et qui compresse tout, on est d'accord...). Vous lui donnez simplement l'adresse d'une page Web et lui va la charger dans un Chrome Headless, c'est-à-dire sans interface et capter le trafic réseau grâce au Chrome Devtools Protocol. C'est le flux vidéo ensuite qui transite qui est repéré et qu'il prend à la source.

Derrière, vous vous en doutez, ffmpeg transcode à la volée pour votre télé pendant que ffprobe détecte le format qui arrive. Pour alimenter Castor, vous avez alors trois possibilités, soit vous lui fournissez une page Web avec la commande castor cast player, soit vous lui passez un flux brut en .m3u8 avec la commande castor cast url, ou alors simplement un identifiant IMDB/TMDB que Castor résoudra via les sources que vous avez configurées de votre côté.

Et si vous renseignez une clé TMDB, castor cast tout court vous sortira alors un navigateur interactif en plein terminal Et c'est là-dedans que vous pourrez filtrer par genre (ou peu importe la métadonnée que vous voulez) ou parcourir les films comme vous le feriez sur Netflix, ou encore aller explorer les épisodes d'une série. Qui vous fait envie. Tout ça sans jamais quitter votre terminal. Ça a quand même un peu de gueule !

Le navigateur TMDB de Castor, directement dans le terminal.

Castor sait les générer lui-même les sous-titres avec whisper.cpp avant de les incruster dans la vidéo, Mais attention quand même, le modèle par défaut ne comprend que l'anglais, si vous voulez du français, faudra faire pointer Castor vers un modèle whisper multilingue.

Enfin, côté réception, Castor sait causer DLNA / UPnP, un protocole que Samsung, LG, Sony Bravia, Panasonic, Philips, Hisense ou encore TCL savent gérer depuis des années. Un petit castor scan et il vous liste tous les récepteurs qui traînent sur votre réseau et vous verrez que Kodi, VLC et Plex répondront aussi présents. Pour ce qui est du support du Chromecast, c'est encore un peu expérimental, donc ne comptez pas trop dessus pour le moment.

L'installation sur Mac se fait via brew install --cask stupside/tap/castor. Prévoyez juste Chrome ou Chromium sur la machine + ffmpeg et ffprobe accessibles dans le PATH. Une image Docker existe avec tout dedans, mais méfiance sur Docker Desktop macOS ou Windows puisque la découverte réseau ne passe pas le bridge, donc le conteneur ne verra jamais votre télé.

Maintenant, ce n'est pas un outil de piratage, puisque Castor n'héberge rien du tout. C'est un outil générique qui pousse un flux vers une TV, et c'est à vous de respecter la loi ainsi que les conditions d'usage des sites. Bref, ne castez que ce que vous avez le droit de regarder. Pour envoyer un flux IPTV ou un bête .m3u8 sur l'écran du salon, c'est en tout cas, super pratique.

Si vous bidouillez un serveur média maison, allez donc jeter un œil à Castor , le dépôt vaut le détour !

  • ✇Korben
  • Une demi-seconde a fait tomber la backdoor XZ - Voici son livre
    Une demi-seconde. C'est le retard qu'ont pris les connexions SSH d'Andres Freund, ingénieur chez Microsoft, lors d'un benchmark de routine en mars 2024. Cette demi-seconde, Adrian Mastronardi, CTO de Habi et linuxien depuis 1996, vient d'en tirer un bouquin gratuit, Half a Second , qui raconte toute l'affaire XZ du début à la fin. La plupart des gens auraient haussé les épaules mais lui, non. Il a tiré le fil, encore et encore, et a fini par déterrer une des backdoors les plus tord

Une demi-seconde a fait tomber la backdoor XZ - Voici son livre

Par : Korben ✨
19 juillet 2026 à 09:27

Une demi-seconde.

C'est le retard qu'ont pris les connexions SSH d'Andres Freund, ingénieur chez Microsoft, lors d'un benchmark de routine en mars 2024. Cette demi-seconde, Adrian Mastronardi, CTO de Habi et linuxien depuis 1996, vient d'en tirer un bouquin gratuit, Half a Second , qui raconte toute l'affaire XZ du début à la fin.

La plupart des gens auraient haussé les épaules mais lui, non. Il a tiré le fil, encore et encore, et a fini par déterrer une des backdoors les plus tordues jamais glissées dans un logiciel open source.

Half a Second, le livre gratuit d'Adrian Mastronardi sur le backdoor XZ

Pour ceux qui auraient loupé l'épisode, XZ Utils c'est un outil de compression qu'on retrouve sur à peu près tous les systèmes Linux, serveurs compris, donc autant dire une bonne partie d'Internet.

L'attaquant, lui, a joué le contributeur modèle pendant environ 2 ans. Gagner patiemment la confiance du mainteneur, puis glisser sa backdoor dans le code. Je vous en parlais à chaud à l'époque , le jour même de la découverte et quelqu'un avait même bricolé dans la foulée un agent SSH exploitant cette backdoor .

Mais la technique, dans ce livre, c'est presque secondaire. Le vrai sujet est dans le sous-titre : le travail invisible qu'il y a en dessous. Lasse Collin, le mainteneur de XZ, portait ce projet critique tout seul, bénévolement, et il était au bout du rouleau. Et c'est précisément cet épuisement que l'attaquant a retourné contre lui. Entre la pression des utilisateurs, les faux contributeurs qui râlent, la culpabilisation de ne pas pouvoir faire mieux tout de suite tout le temps.… Le mec a été intoxiqué / manipulé avant même que la moindre ligne de code.

Et des gars comme Lasse Collin, il y en a des milliers. Il y a des tas de gens qui maintiennent seuls gratuitement sur leur temps libre, des petites briques libres dont dépendent nos banques, nos hôpitaux, nos administrations et personne ne les paye, voire pire, personne ne les considère ni leur dit merci.

Et cela fait deux des proies faciles pour des attaquants bien organisés. Concernant le bouquin, rien à redire, la bibliographie s'appuie sur les rapports de l'OpenSSF, d'Akamai ou encore de Binarly. C'est une vraie enquête extrêmement bien sourcée qui ne tombe pas dans le charabaiat technique, ce qui fait que c'est parfaitement lisible pour tout le monde, même pour ceux dont la sécurité informatique n'est pas la spécialité.

Et le récit mélange les trois voix, celle du narrateur manipulé, celle de l'ingénieur curieux et celle de l'opérateur fantôme. Parce que oui je sais pas si vous savez, mais celui qui a fait cette backdoor n'a jamais été identifié et ne le sera peut-être jamais. Voilà, ça a l'air d'être un chouette bouquin distribué sous licence créative Commons non commercial. C'est donc gratuit et ça le restera pour toujours.Par contre, c'est en anglais, donc faudra faire un petit effort. Mais n'importe qui peut le traduire si ça l'amuse.

Bref, si l'affaire XZ vous avait marqués, c'est le récit qu'il vous fallait.

À lire ici en PDF ! Et merci à LWN d'avoir repéré le bouquin.

  • ✇Korben
  • Pix 2D to 3D - Des sprites aux modèles 3D, sans IA ni GPU
    Si vous faites du pixel art, voilà un petit outil qui devrait vous plaire. Pix 2D to 3D prend votre sprite et vous le transforme en modèle 3D voxelisé au format .obj, importable direct dans Blender, Unity ou Godot. Pas la moindre trace d'IA là-dedans, uniquement des maths, et son dev Prashant bosse chez Snaptrude sur du logiciel 3D, donc autant vous dire qu'il maîtrise. L'idée, c'est de vous épargner la modélisation quand vous montez un jeu en 3D iso ou un 2.5D et qu'il vous manque juste trois c

Pix 2D to 3D - Des sprites aux modèles 3D, sans IA ni GPU

Par : Korben ✨
17 juillet 2026 à 15:18

Si vous faites du pixel art, voilà un petit outil qui devrait vous plaire. Pix 2D to 3D prend votre sprite et vous le transforme en modèle 3D voxelisé au format .obj, importable direct dans Blender, Unity ou Godot. Pas la moindre trace d'IA là-dedans, uniquement des maths, et son dev Prashant bosse chez Snaptrude sur du logiciel 3D, donc autant vous dire qu'il maîtrise.

L'idée, c'est de vous épargner la modélisation quand vous montez un jeu en 3D iso ou un 2.5D et qu'il vous manque juste trois caisses et un tonneau pour meubler le décor. Vous dessinez le sprite, vous le passez dans l'app et hop, l'objet 3D ressort de l'autre côté.

Vous avez 4 modes selon ce que vous lui donnez à manger, plus un réglage Auto qui devine le format tout seul en regardant les proportions de votre image.

Single voxelise un sprite unique. Single + Repeated le répète sur les 4 côtés en l'extrudant sur la profondeur de votre choix. Dual accepte une planche à 2 vues (face et dos). Et mon préféré, Quad, avale carrément une planche de 4 vues alignées à l'horizontale dans un ordre bien précis : gauche, face, droite, dos. Résultat, un objet complet visible à 360°.

Si c'est sur ce dernier mode que vous voulez partir, sachez que le développeur conseille de passer par la fonction d'export de Frame d' un éditeur de sprites plutôt que de tout vous taper à la main.

L'interface de Pix 2D to 3D, avec le sélecteur de mode et les réglages de profondeur

L'algorithme calcule l'épaisseur des pixels en fonction de leur distance au bord, et les flancs sont arrondis pour une transition douce. L'outil modifie également les bords pour un effet plus naturel, en supprimant progressivement des voxels, ce qui évite l'aspect rigide et artificiel.

Du coup, pas de GPU qui chauffe, rien à installer à part l'app. Après cet outil est un convertisseur géométrique, pas un devin, hein donc à vous de bien gérer l'alignement du dessin dans les cases au départ. Sur Windows, la dernière pre-release est disponible par contre, pour macOS, il faut utiliser la version précédente et sous Linux, ça se compile facilement avec Go, Node, GTK3 et WebKit2GTK.

En tout cas, pour des formes simples et plutôt rondes, j'ai trouvé le rendu assez bluffant. Maintenant, si vous préférez rester dans votre éditeur, Pixelorama dispose de sa propre extension de voxélisation, mais sans le mode à 4 vues. Et pour vous rendre compte de ce que donnent des sprites voxélisés à grande échelle, je vous invite à jeter un œil à ce mod voxel de Duke Nukem 3D qui vaut vraiment le coup d'œil.

C'est par ici que ça se passe !

  • ✇Korben
  • Firefox en WebAssembly - Gecko s'embarque dans vos pages web
    Vous avez une TV connectée qui vous crache de la pub, un navigateur intégré dedans qui n'accepte aucune extension, et surtout aucun moyen d'installer quoi que ce soit dessus ? Bonne nouvelle les amis, l'équipe de Puter vient de compiler Firefox en WebAssembly, ce qui fait que ce mur commence sérieusement à se fissurer... On avait déjà de vieux OS et des émulateurs x86 qui tournaient dans une page web , et là on passe carrément au navigateur au complet. La démo est en l

Firefox en WebAssembly - Gecko s'embarque dans vos pages web

Par : Korben ✨
17 juillet 2026 à 13:56

Vous avez une TV connectée qui vous crache de la pub, un navigateur intégré dedans qui n'accepte aucune extension, et surtout aucun moyen d'installer quoi que ce soit dessus ? Bonne nouvelle les amis, l'équipe de Puter vient de compiler Firefox en WebAssembly, ce qui fait que ce mur commence sérieusement à se fissurer...

On avait déjà de vieux OS et des émulateurs x86 qui tournaient dans une page web , et là on passe carrément au navigateur au complet. La démo est en ligne si vous voulez tester tout de suite.

L'idée, la voilà... vous ouvrez un onglet dans votre navigateur, et dans cet onglet, c'est un Firefox complet qui tourne, avec son propre moteur d'affichage. Curieux de savoir ce que ça pesait, j'ai récupéré les fichiers, et une fois tout déballé, on arrive à 233 Mo. C'est exactement le même Firefox que sur votre machine, sauf qu'il vit à 100% sur une page web.

Le plus marrant là-dedans, c'est toutes les possibilités que ça ouvre... Par exemple, il y a un gars sur Hacker News qui vient de récupérer une TV sous VIDAA, ce système où tout s'affiche en pages web et où le navigateur maison refuse le moindre bloqueur de pub. Et maintenant son programme du week-end c'est de démarrer Firefox dans le navigateur de la télé, puis d'y glisser uBlock Origin . Et ça vaut pour tout ce qui est cadenassé, la borne d'accueil, le Chromebook du collège, le poste du boulot où l'informatique vous a tout bloqué sauf le navigateur.

La deuxième, c'est de pouvoir vérifier un site dans Firefox quand vous n'avez pas de Firefox sous la main. Vous êtes sur iPhone, ou coincé sur le Chrome tout naze de votre boîte sans les droits admin ? Bah vous ouvrez un onglet et vous avez un vrai moteur Mozilla sous la main pour vérifier que votre page ne part pas en vrille.

La troisième possibilité s'adresse aux développeurs. Pour fabriquer une miniature de page ou prévisualiser du HTML, il faut d'habitude un navigateur qui tourne sur un serveur, avec la machine à payer derrière. Là, le rendu peut se faire directement chez le visiteur, grâce à un peu de code :

import { Gecko } from 'gecko.js';

const gecko = new Gecko({ canvas: document.querySelector('canvas')! });
await gecko.init();
await gecko.load('data:text/html,# hello from Gecko

');

Maintenant, la limite de la démo actuellement en ligne, c'est que tout le trafic passe par les serveurs de Puter, sans quoi ça ne pourrait pas fonctionner du tout. Le HTTPS reste bien chiffré de bout en bout, mais évitez quand même d'y taper vos mots de passe. Ah et ça rame aussi un peu, et sur mobile c'est mort pour le moment. En tout cas, c'est pas un truc que je vous conseille d'utiliser au quotidien parce que bien employé par un cybercriminel, ça pourrait permettre s'il y a une faille dans le moteur de rendu évidemment de lire par exemple vos cookies.

Donc si vous l'utilisez, pensez bien à faire tourner chaque site que vous visitez avec ça, dans une instance séparée

Ce chantier a été entrepris avec l'aide de Claude d'Anthropic. Il a englouti une trentaine de milliards de tokens, soit dans les 25 000 $ au tarif normal. Mais heureusement, l'équipe de Puter avait un abonnement Max et s'en est tirée "que" pour une centaine de dollars. Voilà, c'est de la bidouille, avec les défauts qui vont avec mais avouez que c'est beau ^^.

Le code est ici sous licence MPL, et y'a aussi WebkitWasm qui fait la même chose avec WebKit.

Source : Simon Willison

  • ✇Korben
  • Open OSCAR Server - Faites revivre AIM sur vos vieilles bécanes
    Vous vous souvenez d'AIM ? Mais siiii, le petit bonhomme jaune qui courait, la porte qui claque quand un pote se connecte, les away messages passifs-agressifs à base de paroles de chanson... Et bien la bidouilleuse Veronica a remonté son propre serveur AIM, et ça a l'air de plutôt bien fonctionner Pour reposer un peu le cadre, AOL a débranché AIM fin 2017. Depuis, les millions de screen names de l'époque pointent dans le vide (Moi c'était FoxMDE ^^), et tous les vieux clients qui traînent actuel

Open OSCAR Server - Faites revivre AIM sur vos vieilles bécanes

Par : Korben ✨
17 juillet 2026 à 13:32

Vous vous souvenez d'AIM ? Mais siiii, le petit bonhomme jaune qui courait, la porte qui claque quand un pote se connecte, les away messages passifs-agressifs à base de paroles de chanson... Et bien la bidouilleuse Veronica a remonté son propre serveur AIM, et ça a l'air de plutôt bien fonctionner

Pour reposer un peu le cadre, AOL a débranché AIM fin 2017. Depuis, les millions de screen names de l'époque pointent dans le vide (Moi c'était FoxMDE ^^), et tous les vieux clients qui traînent actuellement sur vos disques durs ou CD-Rom se connectent à un serveur qui n'existe plus.

Fin de l'histoire, normalement (?).

Bah pas vraiment car AIM tournait sur un protocole qui s'appelle OSCAR, et qui est le même que celui d'ICQ. Du coup, un développeur du nom de mk6i a réimplémenté ce truc en open source, baptisé Open OSCAR Server . En gros, vous faites tourner le serveur sur votre propre machine, vous dites à votre vieux client AIM d'aller taper là plutôt que chez AOL, et hop, vous revoilà en 2003. Veronica utilise ainsi AIM 5.1 sur ses bécanes, et elle héberge le sien sur un petit VPS Debian qui coûte trois francs six sous.

Alors pourquoi avoir fait ça ? Eh bien comme elle le dit elle-même, Discord commençait à la gonfler, et elle avait la nostalgie du lycée. Je vous traduis le passage, il est chouette car je m'y suis bien retrouvé : "Au lycée, la plupart de mes journées commençaient et finissaient par AIM. C'était avant que tout le monde ait des SMS (ou des téléphones portables). Tout, des projets de classe aux relations entières, se passait dans une fenêtre AIM."

Voilà. On a tous connu ça, certains avec MSN ou ICQ...

Ce qui me plaît là-dedans, c'est que ça remet surtout des vieilles machines au boulot. C'est la même énergie que NeoCities et son web fait à la main , sauf qu'ici c'est votre messagerie. Votre Windows 98 dans le placard peut ainsi redevenir utile (gaffe aux virus quand même) ! Vous montez le serveur, vous filez l'adresse à vos potes, et vous avez votre messagerie privée à vous. Pas de pub, et surtout aucun webdesigner coké pour vous chambouler toute l'interface un matin sans prévenir.

Après faut quand même savoir bricoler un minimum sous Linux mais avec son tuto, vous devriez vous en sortir. Bref, si ça vous tente, elle détaille toute la manip sur son blog.

Source

  • ✇Korben
  • Comic Chat - L'IRC qui vous dessinait en BD fonctionne encore
    Microsoft vient de balancer sur GitHub le code source de Comic Chat. Je pense qu'on est peu nombreux à s'en souvenir mais c'était un logiciel sorti en 1996, imaginé par DJ Kurlander chez Microsoft Research, qui affichait nos discussions IRC sous forme de bande dessinée auto-générée, avec les personnages, les bulles et le cadrage gérés automatiquement. C'était codé en C++ et 30 ans plus tard, ça se compile encore ! Vous tapiez une phrase, et le logiciel décidait quels personnages coller dans la c

Comic Chat - L'IRC qui vous dessinait en BD fonctionne encore

Par : Korben ✨
17 juillet 2026 à 09:21

Microsoft vient de balancer sur GitHub le code source de Comic Chat. Je pense qu'on est peu nombreux à s'en souvenir mais c'était un logiciel sorti en 1996, imaginé par DJ Kurlander chez Microsoft Research, qui affichait nos discussions IRC sous forme de bande dessinée auto-générée, avec les personnages, les bulles et le cadrage gérés automatiquement.

C'était codé en C++ et 30 ans plus tard, ça se compile encore !

Vous tapiez une phrase, et le logiciel décidait quels personnages coller dans la case, quelle tête ils faisaient, comment les orienter, quelle forme donner à la bulle, à quel moment passer à la case suivante et même quel zoom appliquer. Le tout en temps réel, à partir de vos mots. Par exemple, si vous écriviez un point d'exclamation dans votre phrase, hop, votre avatar levait les bras.

Comic Chat recompilé sous Visual Studio 2022, sur Windows 11. La roue des émotions est en bas à droite.

Kurlander a présenté son bidule à SIGGRAPH 96 avec Tim Skelly et David Salesin et c'était assez innovant pour l'époque parce que Comic Chat ne se contentait pas d'afficher vos messages, mais prenait des décisions éditoriales suivant la gueule de votre conversation, tout ça sans IA ^^.

Les gens avec qui vous discutiez étaient sur des serveurs IRC à écrire de la ligne de commande. Et vous de votre côté, vous étiez dans une vraie bande dessinée à discuter avec eux et chacun d'entre eux avait un petit personnage attribué d'office. Les dessins que vous aviez sous les yeux, d'ailleurs, ne sortaient pas d'une banque de cliparts . C'est Jim Woodring , un auteur de BD indé américain, qui a créé ces personnages.

L'appli a été traduite en 24 langues, livrée avec Internet Explorer 3 puis bundlée avec Windows 98 donc vous l'avez peut-être eu sans le savoir. La version 2 est ensuite arrivée avec IE4 sous le nom de Microsoft Chat, avant que la messagerie instantanée ne bouffe tout au début des années 2000.

Microsoft écrit dans son annonce que Comic Chat a, je cite, "apporté Comic Sans au monde", sauf qu'en réalité c'est Vincent Connare qui avait dessiné la police en 1994 pour Microsoft Bob, dont les bulles en Times New Roman l'avaient rendu dingue. Et cette police est sortie dans le Plus! Pack de Windows 95, soit un an avant Comic Chat. Ouais on me la fait pas moi ^^.

Ce qui est rigolo, c'est que si vous allez fouiller un peu sur le dépôt GitHub et que vous regardez l'historique, vous verrez que Microsoft n'a pas juste poussé une archive et basta. Ils ont carrément reconstruit tout l'historique Git à partir des dates des fichiers. Du coup vous pouvez tomber sur des commits qui datent du 2 août 1996. C'est drôle non ?

Je trouve ça super cool que ce projet soit libéré. Microsoft avait déjà fait le coup avec Zork , passé en MIT l'an dernier. En tout cas, il y a eu chez Microsoft, un petit travail de réactualisation avec des versions qui peuvent fonctionner sur les écrans d'aujourd'hui et se connecter sur de vrais serveurs IRC actuels en TLS. Vous pouvez télécharger ces versions compilées récentes ici.

Et si vous voulez vous lancer, il y a Mermaid Elizabeth qui maintient même une liste de serveurs qui marchent encore avec. Perso, entre ça et un client IRC moderne , mon choix est vite fait ! ^^

Bref, si vous voulez voir à quoi ressemblait le web quand on se demandait sérieusement "et si les discussions étaient des BD ?", c'est sur GitHub .

Source

  • ✇Korben
  • Inky Bird Frame - Les piafs du jardin en planches naturalistes
    Vous vous souvenez de BirdNet-Pi ? Ce montage dont je vous avais parlé, qui collait un micro sur un Raspberry Pi pour reconnaître les piafs du jardin à l'oreille ? Et bien Henry Sowell, un maker qui signe sous le pseudo de veteranbv, vient de pousser le délire un cran plus loin avec Inky Bird Frame. Il s'agit d'un cadre e-ink accroché au mur qui affiche les oiseaux repérés autour de chez vous, façon planches naturalistes de carnet de terrain du 19e siècle. Dans le cadre, un écran

Inky Bird Frame - Les piafs du jardin en planches naturalistes

Par : Korben ✨
13 juillet 2026 à 16:16

Vous vous souvenez de BirdNet-Pi ? Ce montage dont je vous avais parlé, qui collait un micro sur un Raspberry Pi pour reconnaître les piafs du jardin à l'oreille ? Et bien Henry Sowell, un maker qui signe sous le pseudo de veteranbv, vient de pousser le délire un cran plus loin avec Inky Bird Frame. Il s'agit d'un cadre e-ink accroché au mur qui affiche les oiseaux repérés autour de chez vous, façon planches naturalistes de carnet de terrain du 19e siècle.

Dans le cadre, un écran Pimoroni Inky Impression de 13,3 pouces, du e-paper 6 couleurs en 1600x1200, avec un Raspberry Pi Zero 2 W planqué derrière qui se contente d'afficher l'image. Mais le vrai boulot se fait ailleurs, sur un contrôleur (un Pi 4, ou n'importe quel Mac ou Linux qui traîne chez vous) qui surveille les observations publiques d'oiseaux dans un rayon configurable autour de votre maison.

Le cadre en situation, avec sa planche Eastern Bluebird ( Source )

Pour les données, vous prenez ce qui vous arrange. iNaturalist par défaut, eBird si vous préférez (avec un plafond à 50 km et 30 jours), ou même votre propre station BirdWeather si vous en avez déjà une qui écoute le jardin. Et grâce à àa, dès que vos micros captent une fauvette, hop, elle s'affiche sur votre mur.

C'est chouette hein ? (vous l'avez ?)

Aussi, quand une espèce jamais croisée dans votre coin pointe le bout de son bec, et que sa planche n'existe pas encore, hé bien le contrôleur la fabrique alors avec Codex, le CLI d'OpenAI, que le projet fait tourner via un simple abonnement ChatGPT, en s'appuyant sur des photos de référence sous licence et une fiche documentée sur l'oiseau.

Et pour éviter l'effet slop IA, chaque planche passe ensuite devant une seconde IA qui joue les contrôleuses qualité, en la comparant avec des photos de référence (plumage, proportions, forme du bec), en la vérifiant avec 2 sources d'autorité minimum et les noms scientifiques exacts.

Le catalogue commun compte déjà 71 espèces approuvées via des pull requests validées par la CI, c'est vraiment joli en plus, regardez :

Une planche du catalogue, générée puis validée par le pipeline ( Source )

Bon, maintenant le tarif. Comptez environ 360 dollars pour le cadre seul, dont 275 dollars juste pour l'écran (l'e-paper couleur en 13 pouces, ça douille !), et si vous ajoutez le Raspberry Pi 4, la facture montera à 350$.

Autre point qui pique un peu, le catalogue actuel est bourré d'oiseaux nord-américains, Eastern Bluebird, Northern Cardinal et toute la clique. Vos mésanges charbonnières et vos rouges-gorges, il faudra donc les générer vous-même, ce qui rend l'abonnement ChatGPT quasi obligatoire pour un utilisateur français.

Après pour le reste, j'ai l'impression que c'est assez complet. Ça fait une rotation des planches en séquentiel, aléatoire ou pondérée selon le nombre d'observations. Vous recevez des notifications pushover. Ça peut se brancher sur Discord, Slack ou Home Assistant via Apprise. Et toute l'intelligence reste bien sûr du côté du contrôleur.

Voilà, si ça peut vous intéresser, c'est sous licence MIT sur GitHub Avec le guide de montage, la liste des courses et bien sûr les photos de la construction.

Et si vous aimez les piafs, mais que monter d'oras péripi, c'est pas trop votre truc., Merlin Bird ID jetez un oeil aussi à ce projet qui est beaucoup plus simple d'accès puisqu'il tourne directement sur votre smartphone.

Voilà, je parle souvent de petits bricolages dans ce style, et c'est assez rare que j'ai envie de me lancer moi-même dedans, mais là, celui-là me plaît vraiment bien. Je ne sais pas si j'aurai le temps, mais je me dis que c'est un projet cool que je ferais bien un jour.

  • ✇Korben
  • Swival – Le papa de libsodium se met aux agents de codage locaux
    Frank Denis , c'est le monsieur qui fait tourner un bon morceau d'Internet sans que personne le sache : libsodium, dnscrypt-proxy, Pure-FTPd, c'est lui. Et dernièrement, il s'est attaqué aux agents de codage IA avec Swival , un outil pensé pour les petits modèles qui tournent en local sur votre machine. Le truc de Frank c'est d'écrire du logiciel réputé incassable depuis 25 ans. Si vous chiffrez vos requêtes DNS, y'a des chances que ça passe par son dnscr

Swival – Le papa de libsodium se met aux agents de codage locaux

Par : Korben ✨
13 juillet 2026 à 11:03

Frank Denis , c'est le monsieur qui fait tourner un bon morceau d'Internet sans que personne le sache : libsodium, dnscrypt-proxy, Pure-FTPd, c'est lui. Et dernièrement, il s'est attaqué aux agents de codage IA avec Swival , un outil pensé pour les petits modèles qui tournent en local sur votre machine.

Le truc de Frank c'est d'écrire du logiciel réputé incassable depuis 25 ans. Si vous chiffrez vos requêtes DNS, y'a des chances que ça passe par son dnscrypt-proxy , et si vous utilisez du chiffrement dans à peu près n'importe quelle app moderne, libsodium n'est jamais bien loin. Du coup, quand ce profil-là sort un agent de codage en Python, licence MIT, gratuit, je pense que ça vaut le coup de s'y arrêter 2 minutes.

Il a codé cela parce que les outils d'agentique existants l'ont sérieusement gonflé. C'est beau, c'est neuf, c'est lavé avec Mir Laine mais.... ça plante !! Et l'autre reproche qu'il leur fait c'est concernant la confidentialité. En effet, utiliser un agent, c'est forcément voir partir on ne sait où nos données personnelles... nos clés API, nos URLs internes, nos noms de projets... tout ça est allègrement bouffé par le fournisseur de modèle qui derrière s'en sert pour tout un tas de choses pas cool. C'est notamment pour cela que Swival embarque une option --encrypt-secrets qui détecte les credentials dans les messages et les chiffre avant qu'ils quittent votre machine. Une denrée rare chez les agents de codage, et ça c'est du pur Frank Denis !

Y'a aussi la gestion du contexte, qui est le gros morceau. Les agents classiques sont conçus pour des modèles frontière avec des fenêtres géantes. Sauf que votre LLM local, lui, doit souvent se débrouiller avec 32K de contexte, et là tout déborde très vite. Swival, lui, prend le truc à l'envers. Chaque sortie d'outil est plafonnée direct à la source : 50 Ko max par fichier lu, 100 résultats de grep, 100 entrées par listing. Et une fois que l'agent a fini de fouiller votre code, un système de snapshots vire ses 12 000 tokens de lectures pour les remplacer par un résumé de 200 tokens.

Et c'est pas fini. Rajoutez là-dessus une compaction automatique en 7 niveaux progressifs (du simple ménage au grand débarras), plus des notes de travail qui survivent à tout ça. Résultat, un agent qui tient des sessions à rallonge sans partir en vrille. La doc montre d'ailleurs Swival en train d'avaler une refactorisation multi-fichiers avec Qwen3-Coder-Next dans 32K sous LM Studio sans broncher...

Et pour brancher tout ça, vous avez le choix. 11 backends quand même ! LM Studio par défaut (zéro config, il repère tout seul votre modèle chargé), llama.cpp pareil, HuggingFace, OpenRouter, Google Gemini et Vertex AI. Envie de lourd ? ChatGPT Plus ou AWS Bedrock. Et pour les curieux, les Apple Foundation Models en expérimental, un provider générique compatible OpenAI (ollama, vLLM, mlx_lm.server...) et même une commande externe de votre choix.

Pour trouver un modèle qui tienne dans votre RAM, Hugging Face sait filtrer selon votre matos et une fois que vous avez fait votre choix, l'installation tient en une ligne (via uv, Python 3.13 minimum) :

uv tool install swival

Ensuite, il suffit de taper, par exemple : "Refactore la gestion d'erreurs de src/api.py" et l'agent se met au travail pour peu que vous ayez déjà un LMStudio ou un llama.cpp qui tourne avec un modèle chargé...

Ah j'oubliais, si vous êtes sous Mac vous pouvez même l'installer avec Homebrew :

brew install swival/tap/swival

Ensuite, au niveau des commandes, il y a aussi, par exemple, une commande /audit qui vous permet de faire de la chasse aux failles de sécurité dans votre code. Tout cela avec des agents isolés chacun dans des worktrees séparés et qui sont obligés de reproduire chaque bug avant de l'inscrire dans le rapport.

Et côté sécurité, vous avez deux sandboxes au choix. Soit Agent FS d'un côté (l'agent bosse sur une copie de vos fichiers, votre projet reste intact) ou nono (non, pas le petit robot) de l'autre (avec barrières au niveau du noyau, blocage réseau compris). Sans oublier la mémoire persistante entre vos sessions, le support MCP et un mode serveur pour interconnecter vos agents entre eux.

Voilà donc de quoi venir jouer dans la cour de ZCode côté z.ai et compagnie...

Voilà, je me suis dit que ça allait vous intéresser, donc si vous voulez zieuter le code, direction GitHub , sinon, toute la doc se trouve sur le site officiel .

Merci Friendly_0day pour le lien !

  • ✇Korben
  • Un compteur de visiteurs sur votre site, sans payer un centime
    Vous avez peut-être remarqué un petit point rouge tout en bas de mon site, avec un nombre à côté. Il s'agit du nombre de personnes passées sur le site durant la dernière heure. Je voulais remettre ce truc depuis un bail, bien à l'ancienne comme dans les années 2000 mais sur un site statique, qui plus est sans tracker de stats JS type Google Analytics ou Matomo, et sans cookies de tracking, c'était pas franchement une option... jusqu'à maintenant !

Un compteur de visiteurs sur votre site, sans payer un centime

Par : Korben ✨
12 juillet 2026 à 07:45

Vous avez peut-être remarqué un petit point rouge tout en bas de mon site, avec un nombre à côté. Il s'agit du nombre de personnes passées sur le site durant la dernière heure.

Je voulais remettre ce truc depuis un bail, bien à l'ancienne comme dans les années 2000 mais sur un site statique, qui plus est sans tracker de stats JS type Google Analytics ou Matomo, et sans cookies de tracking, c'était pas franchement une option... jusqu'à maintenant !

Le compteur, en vrai, tout en bas de korben.info.

La solution évidente sur des sites statiques, c'est souvent un petit Worker Cloudflare qui compte les visiteurs et servirait le chiffre, mais ça se facture à chaque requête. À 390 000 pages vues par jour, ça grimpe vite à des dizaines de millions d'invocations par mois, soit dans les 6 à 7 dollars. C'est pas super cher mais pour un compteur qui n'est utile qu'à satisfaire mon égo tout en sachant s'il y a du monde aujourd'hui, ça ne sert strictement à rien ! Donc le Worker, je l'ai écarté direct.

Du coup j'ai fait ça à l'ancienne. Un petit script Python tourne sur la machine qui héberge le site, une fois par minute. Il pose une seule question à Cloudflare, à savoir combien d'adresses IP distinctes ont chargé une page durant la dernière heure (ou demi-heure, ou quart d'heure ou 5 min, c'est vous qui paramétrez), il écrit la réponse dans un minuscule fichier live.json de quelques centaines d'octets, et c'est tout. Ce fichier, Cloudflare le sert ensuite depuis son cache comme il servirait une image, gratuitement. Zéro Worker, zéro base de données, zéro abonnement, j'ai exactement le même résultat sans dépenser une thune.

Maintenant, faut que je sois clair sur ce que ce chiffre raconte. C'est le nombre de navigateurs distincts ayant chargé une page durant la dernière heure, hors trafic interne de Cloudflare. C'est un "*combien de monde est passé récemment *", pas un "combien lisent là tout de suite".

Et les bots là-dedans ?

En fait, les bots pourris , ceux qui scrapent en boucle, se font bloquer en amont par le Super Bot Fight Mode de Cloudflare, donc ils n'arrivent même pas jusqu'à mon site. Restent les gentils bots, du genre de Googlebot et compagnie, que je laisse passer exprès, parce que les bloquer reviendrait à me flinguer mon référencement. Sur les 7 derniers jours, Cloudflare classe à peine 4% comme bots vérifiés. Donc c'est une goutte d'eau, surtout qu'ils tournent sur une poignée d'IP. Donc oui, mon compteur avale deux ou trois crawlers au passage, mais je ne voulais pas vous mentir en écrivant "zéro bot". Mais l'essentiel c'est que les nuisibles, eux, ne soient pas comptabilisés.

J'ai aussi dû gérer un petit piège car l'API de Cloudflare plafonne sa réponse à 10 000 lignes. Et comme sur une heure entière de trafic ça peut se remplir vite, si je crève ce plafond, la requête sous-compterait sans rien dire. Donc le script lève un flag et le compteur affiche "10 000 personnes ou plus" plutôt qu'un faux nombre. Quand j'y serai aux 10 000 et plus, je pense que je réduirai alors le delta temps en passant de 1h à 30 min...etc.

Côté vie privée, c'est carré également. Cloudflare renvoie à mon serveur une liste JSON des IP passées dans l'heure, mon script en compte le nombre de distinctes, et efface cette liste de sa mémoire dans la milliseconde qui suit. Aucune IP n'est stockée, aucune n'atterrit dans un log, aucun fichier avec les IPs n'est créé sur le disque... Il ne reste qu'un entier. Comme je vous le disais, pas de cookie , pas de traceur, et rien qui touche votre navigateur . Et comme le compteur ne s'affiche jamais en dessous de 10 personnes, impossible d'isoler qui que ce soit.

Maintenant, si vous voulez le même chez vous, sachez que j'ai tout balancé en open source sur GitHub , sous licence MIT, donc servez-vous. Voici les pré-requis :

  1. votre site doit être derrière Cloudflare, le plan gratuit suffit largement.
  2. vous générez un token API Cloudflare avec le droit de lecture sur les analytics.
  3. vous posez le script live_count.py sur votre serveur et vous le lancez une fois par minute (ou toutes les 5 ou 10 min) via un cron.
  4. vous ajoutez le bout de JavaScript et son span dans vos pages, tout se règle par des attributs, aucun script inline, donc ça passe même avec une politique de sécurité stricte.

Le seul truc sur lequel ne pas vous louper, c'est de mettre un temps de cache court à live.json. Si c'est trop long, tous vos visiteurs verraient un chiffre périmé.

Voilà. Un petit compteur maison simili-live sans tracking et qui ne me coûte rien, c'est le bonheur !

  • ✇Korben
  • Moebius - Effacer un objet d'une photo depuis votre navigateur
    Simon Willison, le créateur de Datasette et co-créateur de Django, vient de porter un modèle d'inpainting d'image directement dans le navigateur. Sa démo vous permet de choisir une photo, de peindre sur la zone à faire disparaître et ensuite le modèle IA reconstitue ce qu'il manque. Et ce qui est merveilleux avec cette appli c'est que tout tourne sur votre carte graphique en local, comme ça vos données restent chez vous. Le modèle s'appelle M

Moebius - Effacer un objet d'une photo depuis votre navigateur

Par : Korben ✨
12 juillet 2026 à 05:55

Simon Willison, le créateur de Datasette et co-créateur de Django, vient de porter un modèle d'inpainting d'image directement dans le navigateur. Sa démo vous permet de choisir une photo, de peindre sur la zone à faire disparaître et ensuite le modèle IA reconstitue ce qu'il manque. Et ce qui est merveilleux avec cette appli c'est que tout tourne sur votre carte graphique en local, comme ça vos données restent chez vous.

Le modèle s'appelle Moebius, dispose de 0,22 milliard de paramètres, et a été développé par une équipe de l'université Huazhong en Chine. À l'origine c'est un modèle PyTorch, que Willison a converti au format ONNX pour le faire tourner via ONNX Runtime Web sur le backend WebGPU, une nouvelle API qui donne aux pages web un accès direct au GPU. Et ce qu'on obtient, c'est un modèle de diffusion qui s'exécute à 100% côté client dans Chrome ou Safari.

Lors de la première utilisation, l'outil télécharge 1,27 Go de poids depuis Hugging Face, ce qui est énorme pour une page web. Mais c'est un one-shot car ensuite, le navigateur range tout ça dans son Cache Storage, et les fois d'après il ne re-télécharge rien.

Je l'ai installé et testé et ça fonctionne vraiment très très bien. J'ai sélectionné quelques tuiles comme un bourrin et ça me les a enlevées très proprement en quelques dizaines de secondes (une fois le modèle initial téléchargé évidemment).

C'est du vrai inpainting génératif en tout cas et pas un truc qui recopie les pixels d'à côté.

Willison raconte dans le README que la conversion PyTorch vers ONNX et l'appli web complète ont été réalisées par Claude Code avec le modèle Claude Opus 4.8, et qu'il n'a "*pas regardé une seule ligne de code *". Il s'est juste contenté de tester dans le navigateur et de signaler ce qui clochait. Hé ouais c'est comme ça maintenant, les temps changent ;)

C'est open source sous licence Apache 2.0, la démo est en ligne, et le code est sur GitHub si vous voulez le lancer chez vous. Testez, et effacez ce gars avec son coup de soleil sur le crâne qui gâche votre plus belle photo de vacances, je ne vous juge pas ^^.

Source : Hackaday

  • ✇Korben
  • OpenLogi - Votre souris Logitech sans le bloatware d'Options+
    Logitech Options+, vous connaissez ce délire, je pense... Pour régler 3 boutons de souris, on vous pousse à créer un compte, à partager vos data, et à laisser une usine à gaz tourner H24 en tâche de fond. Le dev AprilNEA en a eu marre, du coup il a écrit OpenLogi en Rust et son truc fait le même boulot côté réglages, mais sans rien envoyer chez Logitech. Si vous me lisez régulièrement, ça devrait vous rappeler Mouser , dont je vous parlais en mars dernier. C'est la même philosophie, sauf que Mou

OpenLogi - Votre souris Logitech sans le bloatware d'Options+

Par : Korben ✨
11 juillet 2026 à 08:59

Logitech Options+, vous connaissez ce délire, je pense... Pour régler 3 boutons de souris, on vous pousse à créer un compte, à partager vos data, et à laisser une usine à gaz tourner H24 en tâche de fond. Le dev AprilNEA en a eu marre, du coup il a écrit OpenLogi en Rust et son truc fait le même boulot côté réglages, mais sans rien envoyer chez Logitech.

Si vous me lisez régulièrement, ça devrait vous rappeler Mouser , dont je vous parlais en mars dernier. C'est la même philosophie, sauf que Mouser restait coincé, à l'époque, sur la MX Master 3S en Bluetooth uniquement, sans SmartShift et sans Linux. OpenLogi reprend donc le flambeau et va beaucoup plus loin.

Alors, qu'est-ce que vous pouvez faire avec ?

Hé bien d'abord remapper vos boutons (41 actions prêtes à l'emploi, quand même), régler le DPI, activer le SmartShift, ce fameux défilement en roue libre. Vous pouvez aussi créer des profils qui basculent tout seuls selon l'appli active. Et tout ça cause directement avec le protocole HID++ de Logitech à votre MX Master , sans jamais lancer le pilote maison.

Peu importe comment la bête est branchée d'ailleurs, récepteur Bolt, clé Unifying, Bluetooth ou un bon vieux câble, les quatre passent ! Toute votre config ensuite se trouve dans un simple fichier TOML posé en local, que vous pouvez versionner dans un Git si ça vous chante. L'outil dispose d'une interface graphique, mais vous pouvez également l'utiliser en ligne de commande.

Pour l'installer sous macOS, c'est facile, il suffit de faire un brew install --cask openlogi et voilà ! Quant à Linux, vous avez des paquets .deb et .rpm. Notez que ça tourne aussi sous Windows, mais uniquement en beta.

OpenLogi est compatible avec les MX Master 4, 3S et 3, MX Anywhere 3, Signature M650, Ergo M575 et le code est libre sous double licence Apache 2.0 et MIT au choix.

Voilà, si Options+ vous gonfle de fou, OpenLogi mérite sans doute un petit test de votre part. C'est par ici , et le code est sur GitHub .

Vous m'en direz des nouvelles !

  • ✇Korben
  • EVE Online - 30 dépôts MIT sur GitHub, dont un qui ne compile pas
    8 825 joueurs qui se canardent au même endroit, sur un seul serveur, pendant 14 heures. C'était en 2020 dans le système FWST-8 d'EVE Online, et le moteur qui a encaissé ça s'appelle Carbon. Et si je vous cause de ça c'est parce que Fenris Creations (le studio du jeu, ex-CCP Games) vient de le poser sur GitHub , en licence MIT, gratuit ! Au fil des mois, ils ont ainsi mis en ligne 33 dépôts à cloner, dont 30 sous licence MIT. Vous y trouvez Trinity, le moteur de rendu, Destiny , qui simule la phy

EVE Online - 30 dépôts MIT sur GitHub, dont un qui ne compile pas

Par : Korben ✨
10 juillet 2026 à 17:04

8 825 joueurs qui se canardent au même endroit, sur un seul serveur, pendant 14 heures. C'était en 2020 dans le système FWST-8 d'EVE Online, et le moteur qui a encaissé ça s'appelle Carbon. Et si je vous cause de ça c'est parce que Fenris Creations (le studio du jeu, ex-CCP Games) vient de le poser sur GitHub , en licence MIT, gratuit !

Au fil des mois, ils ont ainsi mis en ligne 33 dépôts à cloner, dont 30 sous licence MIT. Vous y trouvez Trinity, le moteur de rendu, Destiny , qui simule la physique et calcule les trajectoires de vos vaisseaux, et même une bibliothèque C++ dédiée au calcul d'itinéraire sur la carte du jeu. Du code qui tourne en production depuis 20 ans.

Et ça se monte tout seul puisque le README de Trinity dit simplement ceci : "*Compilez en utilisant le fichier CMakeLists.txt fourni à la racine du dépôt. *".

Un moteur de rendu avec 20 ans de production dans les pattes et pas une seule dépendance planquée, c'est fou.

Par contre, Destiny, lui, c'est le meuble en kit livré sans le sachet de vis. Son README prévient : "Pour compiler la bibliothèque, vous devez avoir accès à Perforce, car c'est là que se trouvent certaines de nos dépendances."

Pour vous la faire courte, chez vous, ça ne compilera pas, donc.

Car le 8 juillet, un développeur a ouvert l'issue #5 pour demander gentiment la liste des dépendances liées à Perforce et jusqu'à aujourd'hui, c'est resté sans réponse. Donc non, vous ne monterez pas votre serveur EVE privé ce week-end car l'économie du jeu et l'infrastructure serveur ne sont pas dans les cartons.

Alors pourquoi maintenant ??? Eh bien en mai, le studio a repris son indépendance en se rachetant 120 millions de dollars à Pearl Abyss, et il prépare EVE Frontier, un MMO de survie spatiale qu'il annonce "personnalisable, adapté au joueur". Donc "ouvrir la maison", ça prépare le terrain...

En tout cas, je trouve que ça nous change des jeux qu'on libère une fois morts, comme Arma Cold War Assault, dont Bohemia a ouvert le code pour ses 25 ans . Et vu ce que les moddeurs sortent sans même avoir le code ( un type a collé un mode multijoueur dans le Witcher 3 , j'vous rappelle ^^), avec les sources sous la main ça va être drôle.

Merci Emmanuel pour le lien !

Source

  • ✇Korben
  • Cette Atari Jaguar de 1993 boote sous Linux avec 2 Mo de RAM
    Une Atari Jaguar, la console de 1993 qu'Atari vendait comme la première machine 64 bits et que le marché a snobée, vient de booter sous Linux pour la première fois ! Derrière ce hack, un développeur connu sous le pseudo de Cakehonolulu , qui a collé un vrai noyau sur le Motorola 68000 de la bécane. Le 68000 n'a pas de MMU , ce circuit qui gère la mémoire virtuelle et dont dépend le Linux que vous faites tourner sur votre PC. Sauf que le noyau embarque depuis toujours une branche pour les puces q

Cette Atari Jaguar de 1993 boote sous Linux avec 2 Mo de RAM

Par : Korben ✨
8 juillet 2026 à 14:12

Une Atari Jaguar, la console de 1993 qu'Atari vendait comme la première machine 64 bits et que le marché a snobée, vient de booter sous Linux pour la première fois ! Derrière ce hack, un développeur connu sous le pseudo de Cakehonolulu , qui a collé un vrai noyau sur le Motorola 68000 de la bécane.

Le 68000 n'a pas de MMU , ce circuit qui gère la mémoire virtuelle et dont dépend le Linux que vous faites tourner sur votre PC. Sauf que le noyau embarque depuis toujours une branche pour les puces qui en sont privées, l'antique μClinux , et c'est elle qui fait tout le taf ici.

La Jaguar offre seulement 2 Mo de RAM et jusqu'à 6 Mo de ROM sur la cartouche, du coup Cakehonolulu a coupé le noyau en deux : le code qui ne bouge pas, le .text et le .rodata, reste dans la ROM et s'exécute directement depuis là en XIP, pendant que les données qui changent atterrissent dans les 2 Mo de RAM. Bref, chaque octet compte.

Après, ce n'était pas simple non plus parce que le 68000 ne sait pas lire une donnée qui serait mal alignée en mémoire. Alors que les processeurs modernes savent le faire sans broncher. Et comme le cross-compilateur d'Ubuntu générait quand même ce type de données mal alignées, alors qu'on lui précise bien que la cible c'était un 68000, ça faisait des plantages en cascade.

L'astuce a donc été de recompiler tout le toolchain à la main, puis de bâtir un user space minimal avec BusyBox et uClibc, tout ça en binaire FLAT au lieu du classique format ELF.

Et voilà, la Jaguar affiche maintenant fièrement ses 1,04 BogoMIPS. Soit une puissance de feu qui ferait chialer une calculatrice. Mais bon, elle boote et c'est le principal. Si vous avez encore une Jaguar dans un placard, vous pouvez parfaitement installer ça dessus, puisque le code est disponible sur GitHub .

Voilà, c'est assez génial parce qu'en fait, ça montre bien que Linux est vachement résilient. On est en 2026 et pourtant, le support des 68000 est encore présent dans le noyau, et bien vivant même !

Voilà, tant que ce bon vieux noyau gardera tous ses vieux pilotes, eh bien n'importe quelle console oubliée pourra toujours renaître avec un petit terminal dessus. Et ça, je trouve que ça clôt tous les débats sur la conservation et le poids du code legacy dans le kernel.

Source

  • ✇Korben
  • Wealthfolio - Suivez vos investissements sans les filer au cloud
    Si vous êtes une grosse feignasse et que votre seul plan pour gratter un peu de thunes, c'est pas juste de bosser, mais de vous faire adopter par un vieux en espérant qu'il y passe très vite, cet article ne va pas vous intéresser, désolé. Par contre, si vous économisez, que vous avez mis un petit peu d'argent en bourse, si vous avez investi dans les cryptos ou que sais-je encore, je pense que cet outil va vous être utile. Wealthfolio, imaginé par afadil, c'est une application de bureau open sour

Wealthfolio - Suivez vos investissements sans les filer au cloud

Par : Korben ✨
7 juillet 2026 à 15:41

Si vous êtes une grosse feignasse et que votre seul plan pour gratter un peu de thunes, c'est pas juste de bosser, mais de vous faire adopter par un vieux en espérant qu'il y passe très vite, cet article ne va pas vous intéresser, désolé.

Par contre, si vous économisez, que vous avez mis un petit peu d'argent en bourse, si vous avez investi dans les cryptos ou que sais-je encore, je pense que cet outil va vous être utile.

Wealthfolio, imaginé par afadil, c'est une application de bureau open source qui range tout ça au même endroit : vos comptes d'investissement, votre patrimoine, vos dépenses, et même des simulations pour vos vieux jours. Le parti pris est radical puisque tout reste en local sur votre machine. C'est donc juste une base SQLite posée sur votre disque là où un Finary par exemple, agrège tout sur ses serveurs.

Une fois installé, vous balancez tout dedans. Compte courant, épargne, actions, ETF, crypto, le cash qui dort et l'application vous recrache votre patrimoine net ainsi que la vue d'ensemble que vous n'avez peut-être jamais eue (Surtout si votre banque c'est la Caisse d'Epargne... loool).

Même votre appartement / maison, la voiture, les métaux précieux, et compagnie ça rentre dedans aussi. Ah et vos dettes surtout, parce que le vrai chiffre inclut aussi ce qui fâche, et pas seulement la colonne qui fait plaisir.

Maintenant concernant les dépenses, ça fait à peu près ce qu'on peut retrouver sur des banques en ligne, c'est-à-dire que ça catégorise toutes vos transactions et ensuite ça vous monte des budgets un peu comme ce que propose ReSubs mais élargi à toute votre thune et pas seulement à vos abonnements.

À vous ensuite de définir une allocation cible comme ça quand votre portefeuille s'en écartera, et bien Wealthfolio vous pondra un joli plan de rebalancing qui vous aidera à rentrer dans le rang fissa et ainsi éviter de finir interdit bancaire.

Ajoutez à ça un chouette tableau de bord avec les performances de vos investissements et de vos comptes. Et si vous menez bien votre barque, vous verrez aussi vos dividendes au même endroit.

Ah et puis le truc qui va finir de vous convaincre, c'est le simulateur de retraite inclus. En gros, vous lui donnez tout votre portefeuille et lui il le projette année par année avec des simulations qu'on appelle Monte Carlo . Et là ensuite, eh bien ce sera soit la douche froide, soit la bouteille de champagne, car vous saurez immédiatement si votre plan FIRE tient debout ou si vous vous racontiez des histoires depuis le début.

C'est une capture d'écran que j'ai prise sur le site, donc venez pas me cambrioler, hein ^^

Et puis comme en 2026, un outil sans IA n'est pas un vrai outil (lol) sachez qu'il y a également un assistant IA à qui vous pourrez demander en langage naturel d'interroger votre portefeuille. Par exemple vous pourrez lui dire, "Hey assistant, combien est-ce que j'ai gagné avec mes ETF cette année ?". Et rassurez-vous, les accros à la vie privée, ça peut tourner avec un modèle local via Ollama.

Wealthfolio propose également un outil d'import CSV mais vous pouvez aussi tout saisir manuellement. Aaah l'époque a changé depuis Microsoft Budget surtout que là, vous avez même de la synchro automatique via l'offre payante, si vous voulez brancher ça avec les systèmes de vos courtiers.

Si le concept vous rappelle Maybe Finance , c'est logique, c'est la même famille open source. Sauf que Maybe est une appli web que vous devez auto-héberger vous-même avec Docker, là où Wealthfolio est une vraie application de bureau que vous installez comme n'importe quel logiciel. C'est dispo sous macOS, Windows et Linux, et il y a même une version iOS et Android qui devraient arriver très bientôt. Quant aux plus tordus qui tiennent absolument à leur version web, ça s'auto-héberge en Docker.

Un truc à savoir quand même avant de foncer, la partie fiscale vise les Américains et les Canadiens donc pas de PEA ni d'assurance-vie française là-dedans. Du coup pour coller au fisc hexagonal vous devrez ruser et faire vos trucs à la main ou développer vos propres plugins. Après en ce qui concerne le cœur du bazar, c'est-à-dire suivre son portefeuille et son patrimoine, ça fera bien le taf pour tout le monde.

Le tout sous licence AGPL, code ouvert et forkable, directement sur GitHub et l'app se télécharge sur wealthfolio.app .

  • ✇Korben
  • Command & Conquer Generals débarque sur iOS / macOS - Merci l'IA !
    Il y a six mois, je vous parlais de Command & Conquer Generals, un jeu mort depuis 12 ans qu'un ver s'amusait à attaquer. Hé bien Ammaar Reshi, un designer connu pour ses projets IA (dont un livre pour enfants généré full IA qui a fait le tour des médias) vient de le ressusciter grâce à l'IA pour le faire tourner nativement sur iPhone, iPad et même Mac. Je dis nativement puisque c'est le moteur original de 2003 qui a été recompilé en ARM64 pour Apple Silicon. Niveau dev, c'est donc Claude Co

Command & Conquer Generals débarque sur iOS / macOS - Merci l'IA !

Par : Korben ✨
5 juillet 2026 à 16:41

Il y a six mois, je vous parlais de Command & Conquer Generals, un jeu mort depuis 12 ans qu'un ver s'amusait à attaquer. Hé bien Ammaar Reshi, un designer connu pour ses projets IA (dont un livre pour enfants généré full IA qui a fait le tour des médias) vient de le ressusciter grâce à l'IA pour le faire tourner nativement sur iPhone, iPad et même Mac.

Je dis nativement puisque c'est le moteur original de 2003 qui a été recompilé en ARM64 pour Apple Silicon. Niveau dev, c'est donc Claude Code qui a fait tout le boulot et quand son modèle par défaut, Opus 4.8, s'est mis sérieusement à pédaler dans la semoule, c'est finalement grâce à Fable 5 qu'il a réussi à conclure l'histoire.

Et ça a pris un peu de temps puisque comme à la base, c'est un jeu DirectX, il a fallu guider l'IA pour qu'elle développe une jolie chaîne de traduction DirectX 8 -> DXVK -> Vulkan -> MoltenVK -> pour finir par arriver sur Metal.

5 couches empilées pour convertir en temps réel les appels graphiques d'un jeu de 2003 vers l'API d'Apple, si ça c'est pas une usine à gaz, je m'y connais pas ^.

Après, rendons à César ce qui appartient à César, le gros du portage, c'est-à-dire la recompilation du moteur EA (sous licence GPL v3) vers macOS et Linux, TOUT vient du projet communautaire GeneralsX de fbraz3 . Grâce à ça, tout est fonctionnel, et les modes Campagne, escarmouche et Generals Challenge sont parfaitement jouables.

Ce que Reshi a ajouté par-dessus, c'est surtout la couche Apple, et des contrôles tactiles (car je le rappelle, ce jeu c'était du 100% souris niveau gameplay). Un tap pour sélectionner, on glisse ses doigts boudinés pour encadrer ses unités, un appui long pour désélectionner, deux doigts pour scroller, et un pinch pour zoomer.

Après si vous voulez tester, ce sera pas sur l'AppStore que ça se passe... Faudra compiler ça vous-même avec Xcode, CMake, Ninja, Meson, SteamCMD, vcpkg et le SDK Vulkan de LunarG (Et surtout pas celui de Homebrew, c'est bien précisé dans la doc !!).

Et comme la GPL ne couvre que le moteur, pas les assets, vous devrez aussi fournir votre propre copie du jeu (il est sur Steam).

Tout le projet est sur GitHub !

Source

  • ✇Korben
  • wacli - Archivez tout WhatsApp en local et faites-y des recherches hors ligne
    Peter Steinberger, le papa de PSPDFKit , s'est mis en tête de faire sortir WhatsApp de sa prison dorée. Et pour cela, il a mis au point wacli, un client WhatsApp qui tourne exclusivement dans votre terminal. Ça se compose donc de commandes que vous pouvez scripter dans la joie et la bonne humeur pour enchaîner et automatiser toutes vos idées folles sur Whatsapp comme avec n'importe quel outil Unix. Wacli se connecte à votre compte comme un appareil lié, exactement comme WhatsApp Web, vous scanne

wacli - Archivez tout WhatsApp en local et faites-y des recherches hors ligne

Par : Korben ✨
4 juillet 2026 à 10:00

Peter Steinberger, le papa de PSPDFKit , s'est mis en tête de faire sortir WhatsApp de sa prison dorée. Et pour cela, il a mis au point wacli, un client WhatsApp qui tourne exclusivement dans votre terminal. Ça se compose donc de commandes que vous pouvez scripter dans la joie et la bonne humeur pour enchaîner et automatiser toutes vos idées folles sur Whatsapp comme avec n'importe quel outil Unix.

Wacli se connecte à votre compte comme un appareil lié, exactement comme WhatsApp Web, vous scannez un QR code depuis votre téléphone et hop, l'outil rapatrie vos conversations dans une base SQLite locale, sur votre machine. À partir de là, la recherche se fait hors ligne.

Un wacli messages search "réunion" et vous ressortez un vieux message noyé dans la masse, sans même être connecté. Pour envoyer un message, un wacli send file --to maman --file ./photo.jpg et c'est parti. Et les groupes et les contacts se pilotent de la même façon, réactions comprises, au clavier.

Côté technique, c'est du Go bâti sur whatsmeow , la bibliothèque de référence qui parle le protocole WhatsApp Web multi-device. Comme ça vos messages restent chiffrés de bout en bout. Et de son côté, la base locale offre une recherche plein texte instantanée (FTS5), et à peu près tout ressort en JSON avec le flag --json, ce qui veut dire que vous pouvez brancher wacli sur vos propres scripts, un cron, un pipeline de sauvegarde, ou tout ce que vous voulez.

Les données atterrissent ensuite dans ~/.wacli sur votre Mac, et vous en faites ce que bon vous semble. Un brew install openclaw/tap/wacli et c'est installé (Oui, le projet est passé sous l'organisation openclaw).

Et comme le tout est sous licence MIT, vous pouvez bidouiller ça comme bon vous semble.

Maintenant, la partie où je dois être franc avec vous c'est que wacli n'est pas un outil officiel. Il passe par le protocole WhatsApp Web récupéré par rétro-ingénierie via whatsmeow, et Meta n'aime pas trop ça.

Le README le dit noir sur blanc, c'est un outil tiers non affilié à WhatsApp. En clair, vous jouez avec les conditions d'utilisation, et un compte repéré sur ce genre de manip peut se faire suspendre. À réserver donc à un usage perso et raisonnable, et pas pour faire du spam de masse.

Reste que pour qui veut reprendre la main sur ses données, c'est pile le genre d'outil que j'aime. Dans le même esprit que msgvault qui libère vos emails de la prison Gmail , mais pour la messagerie de Meta.

Merci Camille Roux pour le lien !

Source : https://github.com/openclaw/wacli

  • ✇Korben
  • Valve refuse de vendre ce faceplate e-ink mais file les plans
    Ils sont trop sympas chez Valve ! Ils viennent de balancer sur GitLab tous les fichiers nécessaires à la fabrication d'un FacePlate pour leur Steam Machine avec un écran e-ink intégré. Les plans 3D, la liste des composants, le firmware et même les vidéos de montage, tout est sous licence MIT et je pense que quand vous aurez vu ce que ça permet de faire, vous vous lancerez peut-être. Ce truc, ça s'appelle Inkterface et c'est donc un faceplate (une façade de remplacement pour la Steam Machine) dis

Valve refuse de vendre ce faceplate e-ink mais file les plans

Par : Korben ✨
3 juillet 2026 à 11:34

Ils sont trop sympas chez Valve ! Ils viennent de balancer sur GitLab tous les fichiers nécessaires à la fabrication d'un FacePlate pour leur Steam Machine avec un écran e-ink intégré. Les plans 3D, la liste des composants, le firmware et même les vidéos de montage, tout est sous licence MIT et je pense que quand vous aurez vu ce que ça permet de faire, vous vous lancerez peut-être.

Ce truc, ça s'appelle Inkterface et c'est donc un faceplate (une façade de remplacement pour la Steam Machine) dispose d'un écran à encre électronique monochrome permettant d'afficher la température, la vitesse des ventilos et la charge CPU/GPU de la machine. Ce qui est rigolo, j'sais pas si vous vous souvenez, mais Valve avait montré ce panneau lors de l'annonce de la Steam Machine en précisant bien que ce ne serait jamais commercialisé.

Tout le monde était triste de ça, et je pense que personne n'avait imaginé qu'ils mettraient carrément les plans sous licence libre. La vie est folle !

Après, oui c'est pour ceux qui aiment mettre les mains dans le cambouis, mais si ça vous chauffe comme projet pour les vacances, voici ce que vous allez devoir mettre sur votre liste de courses : un Adafruit ESP32 Feather (2 Mo de PSRAM), un eInk Breakout Friend, le panneau e-ink 5,83 pouces d'Adafruit, 13 vis M2.5 et 4 aimants.

Vous imprimez les pièces en 3D (fichiers STEP et STL fournis), vous soudez une poignée de fils entre les deux cartes, une batterie se cale dedans, et hop, ça se clipse magnétiquement sur le cube. Parce que oui, ce bidule est autonome et dispose de sa propre batterie. En fait il se connecte à la Steam Machine en Bluetooth et basta.

Côté soft, Valve promet une vraie app sur Steam un jour, mais pour l'instant vous devrez builder un AppImage à la main. Le firmware est en C++, entièrement ouvert, et si les stats de base vous suffisent pas, vous pouvez ajouter les vôtres en écrivant votre propre fonction dans le code.

Valve avait déjà lâché les fichiers CAD de la Steam Deck pour qu'on la répare et qu'on la bidouille donc même si ici c'est pas du plug and play, c'est quand même un beau cadeau fait à la communauté. Je pense que cette Steam Machine va être un vrai petit succès ! En tout cas, c'est bien parti pour !

Source

  • ✇Korben
  • oomwoo - Le robot aspirateur open source à monter soi-même
    La société Maker's Pet vient de lancer oomwoo , un robot aspirateur open source que vous construisez vous-même ! C'est fait à base de Raspberry Pi 5, LiDAR 2D, ROS 2, châssis imprimé en 3D, et le tout fonctionne en local. Sauf qu'il y a un détail rigolo, pour l'instant il fait à peu près tout... sauf aspirer ^^. Je m'explique... Votre Roborock ou votre iRobot, vous ne le savez pas mais vous ne le possédez pas vraiment. Il se balade partout, cartographie votre apart ou votre maison, envoie tout s

oomwoo - Le robot aspirateur open source à monter soi-même

Par : Korben ✨
3 juillet 2026 à 10:28

La société Maker's Pet vient de lancer oomwoo , un robot aspirateur open source que vous construisez vous-même ! C'est fait à base de Raspberry Pi 5, LiDAR 2D, ROS 2, châssis imprimé en 3D, et le tout fonctionne en local.

Sauf qu'il y a un détail rigolo, pour l'instant il fait à peu près tout... sauf aspirer ^^.

Je m'explique... Votre Roborock ou votre iRobot, vous ne le savez pas mais vous ne le possédez pas vraiment. Il se balade partout, cartographie votre apart ou votre maison, envoie tout sur des serveurs distants et surtout, le jour où le fabricant ferme boutique, bah votre robot il termine à la casse.

Alors c'est vrai, des bidouilleurs libèrent déjà ces engins du cloud en leur greffant un firmware ouvert. Mais oomwoo prend le problème à l'envers, puisqu'au lieu de libérer un robot fermé, vous en montez un qui soit libre dès la première vis !

Côté matos, vous allez avoir besoin, comme je vous le disais, d'un Raspberry Pi 5 (ou d'un Pi 4), d'un petit LiDAR 2D, de quelques moteurs et d'un châssis que vous sortirez de votre imprimante 3D. Son cerveau, lui, tourne sous ROS 2 avec Nav2 pour la navigation, et vous pouvez tout tester virtuellement dans une simulation Gazebo avant même de visser quoi que ce soit.

Côté maison connectée, ça se branche direct sur Home Assistant et toutes les datas restent chez vous en local. Le LiDAR c'est vraiment le cœur du projet puisque c'est ce capteur qui donne la vue en relief aux petits robots . Avant ça coûtait une petite fortune, mais aujourd'hui, ça peut se trouver pour une trentaine d'euros comme ce LDS02RR qui équipe notamment les Roborock.

Et pour orchestrer toute cette joyeuse bande hardware, le projet utilise un micro-contrôleur à quelques euros qui gère toutes les entrées et les sorties, pendant que le RPi se tape le gros des calculs.

oomwoo en est à sa toute première version, en mode RFC (request for comments), autrement dit le truc se conçoit en public au grand jour et leur objectif premier, c'est donc d'avoir un robot qui cartographie votre appart au LiDAR et se balade tout seul avant même de penser à aspirer.

Alors oui, pour le moment, c'est uniquement de la simulation et aucun proto n'a été assemblé mais ça ne saurait tarder. Quoiqu'il en soit, vous pouvez suivre toutes les étapes du projet en live sur GitHub et intervenir si vous voulez aider .

Après, un aspi robot qui n'aspire pas, ça ne vous inspire peut-être pas (jeux de moooots) mais c'est surtout un projet en train de naitre, qui si vous l'attrapez en route, vous permettra d'apprendre de nouveaux concepts en robotique comme le SLAM, la navigation autonome ou ROS 2 sans avoir à lâcher un billet dans du matos hors de prix (ils visent 200 dollars de matos au max).

Bref, c'est moins un aspirateur qu'un cours de robotique déguisé mais ça vaut le coup d'oeil. Le code vous attend sur GitHub .

  • ✇Korben
  • Lire la puce de sa carte d'identité en Python sous Linux
    Hubert, fidèle lecteur de Korben.info m'a envoyé un mail pour me dire qu'il avait reçu sa nouvelle carte d'identité. Vous savez celle en petit format avec la puce dedans qu'on peut scanner avec l'app France Identité. Et il en est bien content ! Voilà, l'histoire s'arrête là ! Mais non, je plaisante ! En fait, Hubert s'est posé LA question que personne ne se pose à l'heure de l' identité numérique européenne : Y'a quoi là dedans ? Et plutôt que d'attendre qu'un employé de mairie expert en technol

Lire la puce de sa carte d'identité en Python sous Linux

Par : Korben ✨
1 juillet 2026 à 18:28

Hubert, fidèle lecteur de Korben.info m'a envoyé un mail pour me dire qu'il avait reçu sa nouvelle carte d'identité. Vous savez celle en petit format avec la puce dedans qu'on peut scanner avec l'app France Identité. Et il en est bien content !

Voilà, l'histoire s'arrête là !

Mais non, je plaisante ! En fait, Hubert s'est posé LA question que personne ne se pose à l'heure de l' identité numérique européenne : Y'a quoi là dedans ?

Et plutôt que d'attendre qu'un employé de mairie expert en technologie ne lui explique (j'rigole, ça n'existe pas), il a passé son week-end à coder cnie-python-tools , un projet codé en python (vous aviez deviné je pense) capable de lire la puce de la CNI et de vous ressortir les infos y compris la photo d'identité.

Le tout sous Linux, évidemment, sans smartphone ni app officielle.

Pour l'utiliser, vous devez brancher un lecteur de carte à contact (un ACR38U , un Omnikey (liens affiliés), ce genre de bestiole compatible PC/SC), vous lancez uv run cnie-dump, et vous tapez le CAN, c'est-à-dire les 6 chiffres imprimés au recto de votre carte.

Photo envoyée par Hubert, je me suis permis d'enlever ses données personnelles #RGPD-way-of-life ^^

Y'a besoin de cette clé car c'est elle qui permet de déverrouiller la puce via un protocole qui s'appelle PACE. C'est ce mécanisme précis qu'utilise la carte France Identité quand elle lit votre carte en NFC sauf que là c'est direct sur votre PC. Son script permet alors de récupérer toutes les data dans des fichiers bruts + un summary.json qui liste tout ce que la carte a bien voulu cracher.

Et c'est qu'elle est bavarde cette coquine, puisqu'avec ce simple script, elle vous sort votre état civil complet (nom, prénoms, date et lieu de naissance, nationalité), votre adresse, votre taille, la MRZ (la fameuse bande de caractères qu'on retrouve aussi sur les passeports), mais aussi la photo qui est dessus au format JPEG 2000, un format parfois un peu pénible à ouvrir.

Bref, de quoi remplir un formulaire administratif sans avoir à tout retaper.

Maintenant rassurez-vous, il y a quand même des données qu'on ne peut pas extraire. Sur la CNIe française, la donnée biométrique sensible, ce sont vos deux empreintes digitales (DG3), et celles-là restent bouclées à double tour derrière l'EAC, une couche de sécurité réservée aux terminaux officiels de l'État. Quand le script tape à cette porte, la carte répond aussi sèchement qu'un agent assermenté sans clim, avec le code 6982, ce qui veut dire "security status not satisfied", cause toujours.

Si ça vous dit d'essayer bien sûr, c'est à utiliser uniquement avec votre propre carte. Et si le lecteur sur la photo ci-dessus vous parle, c'est normal. Plutôt que d'acheter un lecteur de carte tout neuf, Hubert a simplement réalisé ses tests avec le lecteur fourni par les TCL (le réseau de transport Lyonnais) qui visiblement est dans le tur-fu en ce qui concerne la recharge des abonnements de métro ^^.

Merci Hubert pour le partage !!

cnie-python-tools

  • ✇Korben
  • OpenClaw - L'assistant IA arrive sur iPhone et Android
    Chers amateurs d'OpenClaw, bonne nouvelle, votre outil préféré débarque sur iPhone et Android. Mais contrairement à ce que vous faites d'habitude, pour une fois, je vous conseille de bien lire mon article avant de foncer. En janvier, je vous faisais découvrir rapidement OpenClaw , un assistant IA personnel et open source qui a beaucoup fait parler de lui. Perso, moi je ne suis pas fan (ni de Hermes) parce que je trouve ça plus pratique de dev mes propres outils plus adaptés et mieux pensés plutô

OpenClaw - L'assistant IA arrive sur iPhone et Android

Par : Korben ✨
1 juillet 2026 à 13:33

Chers amateurs d'OpenClaw, bonne nouvelle, votre outil préféré débarque sur iPhone et Android. Mais contrairement à ce que vous faites d'habitude, pour une fois, je vous conseille de bien lire mon article avant de foncer.

En janvier, je vous faisais découvrir rapidement OpenClaw , un assistant IA personnel et open source qui a beaucoup fait parler de lui. Perso, moi je ne suis pas fan (ni de Hermes) parce que je trouve ça plus pratique de dev mes propres outils plus adaptés et mieux pensés plutôt que de partir sur une solution comme ça. Mais breeef, ce n'est que mon avis.

Maintenant si vous êtes utilisateur d'OpenClaw, vous allez pouvoir lancer ça gratuitement sur votre iOS ou Android . Toutefois, ce ne sont pas des OpenClaw complets embarqués dans une app pour smartphone mais plutôt des appli "compagnons", c'est-à-dire un relais pour un vrai OpenClaw installé sur votre Mac, Linux ou Windows (avec WSL évidemment). L'app mobile ne fait donc que s'y connecter pour que vous puissiez interagir avec.

Ce qui est plutôt bien pensé c'est que l'app utilise les capteurs du téléphone pour par exemple pouvoir envoyer des photos, votre position GPS ou écouter ce que vous lui racontez avec le mode "Talk". Ou tout simplement affiche le Canvas qui est l'interface web dans laquelle l'agent bricole en direct.

Bref, OpenClaw bosse sur votre ordinateur et votre smartphone c'est sa télécommande.

L'app est encore un peu brut de décoffrage avec des petits bugs par ci par là mais ça fonctionne quand même alors on ne va pas se plaindre. Par contre, attention si vous l'utilisez sur des réseaux wifi public... je vous conseille de passer par un VPN ou un Tailscale pour éviter de vous faire maninzemideuler par un script kiddy qui passe par là.

Tout est open source sur GitHub , amusez-vous bien !

Source

  • ✇Korben
  • Google agents-cli - Quand votre agent IA en crée d'autres
    Les devs de chez Google viennent de sortir un outil conçu pour les agents IA qui codent afin qu'ils deviennent des experts en développement d'agents IA sur Google Cloud. J'sais pas si je suis très clair, alors je vais essayer de vous expliquer tout ça. Que vous soyez sur Claude Code, Codex d'OpenAI ou Gemini CLI (ça s'appelle agy cli maintenant d'ailleurs pour Antigravity CLI...), écrire un agent qui tient la route et le faire tourner dans le cloud de Mountain View, ça exige déjà de connaître pa

Google agents-cli - Quand votre agent IA en crée d'autres

Par : Korben ✨
1 juillet 2026 à 11:31

Les devs de chez Google viennent de sortir un outil conçu pour les agents IA qui codent afin qu'ils deviennent des experts en développement d'agents IA sur Google Cloud. J'sais pas si je suis très clair, alors je vais essayer de vous expliquer tout ça.

Que vous soyez sur Claude Code, Codex d'OpenAI ou Gemini CLI (ça s'appelle agy cli maintenant d'ailleurs pour Antigravity CLI...), écrire un agent qui tient la route et le faire tourner dans le cloud de Mountain View, ça exige déjà de connaître par cœur l'ADK (Agent Development Kit) maison de Google, de savoir évaluer et coder le projet et surtout de tout déployer sans tout péter.

Ce sont clairement plusieurs métiers différents, et ça demande pas mal de connaissances, alors plutôt que de vous faire lire une doc bien chiante, les dev de Google ont eu l'idée de packager toute cette expertise dans des skills que votre agent de coding va lire à votre place.

Après, vous votre rôle, c'est de décrire tout ce que vous voulez en anglais ou en français et de siroter votre mojito. Et une fois que vous aurez fini, votre super agent générera le squelette du projet, le testera en local et poussera tout ça dans un runtime sur Google Cloud.

Pour l'installer, suffit de faire un petit :

uvx google-agents-cli setup

ou si vous voulez juste injecter les skills dans votre agent sans la CLI complète :

npx skills add google/agents-cli

Une fois la machinerie en place, vous aurez à votre service 7 modules de skills et 25 commandes qui couvrent tout le cycle de vie des agents Google Cloud, du scaffolding (croyez le ou non, en français, ça se dit échafaudage ...lol) à la publication sur Gemini Enterprise (ex-Vertex AI). Et puis Agents-CLI sait surtout générer tout ce qui est jeux de tests, noter les réponses avec un LLM qui fait office de juge, comparer 2 versions d'un même agent ou encore optimiser les prompts à partir des résultats collectés.

C'est du taf pénible qui rebute tout le monde, alors qu'un agent IA se le tape, je pense que ça ne manquera à personne. On est dans la même veine que les outils qui font collaborer plusieurs IA sur votre code, sauf qu'ici l'objectif final c'est de déployer des agents dans le cloud en prod.

Le code et les instructions sont sur le GitHub de Google .

  • ✇Korben
  • FaceGate - Verrouiller ses apps macOS en FaceID
    J'sais pas si vous avez remarqué mais autant sous iOS on peut mettre une authentification Face ID sur n'importe quel app, autant sous MacOS, on peut certes verrouiller tout son ordi, mais on ne peut pas locker une app en particulier. Et c'est chiant parce que parfois, on doit laisser son ordi à un collègue, un enfant ou PIRE sa mère, et ils ont alors accès sans restriction à vos Messages, vos Photos, votre gestionnaire de mots de passe , votre boîte mail et j'en passe des vertes et des pas mûres

FaceGate - Verrouiller ses apps macOS en FaceID

Par : Korben ✨
1 juillet 2026 à 08:20

J'sais pas si vous avez remarqué mais autant sous iOS on peut mettre une authentification Face ID sur n'importe quel app, autant sous MacOS, on peut certes verrouiller tout son ordi, mais on ne peut pas locker une app en particulier.

Et c'est chiant parce que parfois, on doit laisser son ordi à un collègue, un enfant ou PIRE sa mère, et ils ont alors accès sans restriction à vos Messages, vos Photos, votre gestionnaire de mots de passe , votre boîte mail et j'en passe des vertes et des pas mûres...

Dweep Desai, un développeur qui s'est visiblement retrouvé dans cette galère, a heureusement sorti FaceGate , un petit utilitaire open source tiers qui ajoute enfin du verrouillage par application sur macOS, avec déverrouillage à la trombine !

Dans FaceGate, vous choisissez quelles apps protéger, et à chaque lancement, l'outil intercepte et vous demande alors une authentification. Au choix, ça peut être de la reconnaissance faciale via le Neural Engine d'Apple (ça tourne on-device, rien ne part sur un serveur), Touch ID, ou un mot de passe. Rassurez-vous, vos empreintes faciales sont chiffrées en AES-256-GCM et stockées en local, et les clés au chaud dans le trousseau macOS.

Pour l'installer, suffit d'aller télécharger le DMG ici ou de lancer la commande curl suivante :

curl -fsSL https://raw.githubusercontent.com/dweep-desai/FaceGate-Mac/main/install.sh | bash

Le truc intéressant avec FaceGate, c'est qu'il fait ce qu'on appelle de la "détection du vivant". L'outil ne se contente pas de comparer votre visage à une photo, mais vous demande de tourner la tête à gauche ou à droite, du coup, mettre devant la cam une photo imprimée ou une vidéo de votre face ne marche pas en principe (une vidéo deepfake soignée reste l'angle mort évidemment...).

Vous pouvez même enroller jusqu'à 3 visages, brancher une webcam USB, programmer des plages de verrouillage horaires, ou balancer un raccourci clavier qui ferme tout net en cas d'urgence.

FaceGate n'est pas le premier app-locker sur Mac puisque MakLock fait ça aussi en open source, avec Touch ID, déverrouillage par Apple Watch et bientôt du Wi-Fi de confiance. Mais par contre, c'est le premier à proposer du Face ID et ça c'est top ! Puis macOS, faut pas l'oublier, propose aussi en natif des limites d'applications dans ses paramètres de Temps d'Écran mais c'est moins fun que FaceGate, c'est sûr !

Et n'oubliez pas que même un Mac verrouillé, ça se contourne si on sait s'y prendre...

  • ✇Korben
  • GLM 5.2 - Le premier modèle IA open source que je garde
    Les amis, il faut que je vous parle de GLM 5.2 . Je l'utilise en ce moment même à travers Z.ai, et c'est la première fois qu'un modèle open weights me donne satisfaction sur ce que je lui demande de faire. Et dieu sait que j'en ai testé de ces putains de modèles ! GLM 5.2, c'est le dernier-né de Z.ai, le lab chinois connu avant sous le nom de Zhipu AI. Il est sorti en ce mois-ci (en juin), et c'est un gros bébé avec ses 744 milliards de paramètres en Mixture-of-Experts (MoE), dont à peu près 40

GLM 5.2 - Le premier modèle IA open source que je garde

Par : Korben ✨
30 juin 2026 à 18:42

Les amis, il faut que je vous parle de GLM 5.2 . Je l'utilise en ce moment même à travers Z.ai, et c'est la première fois qu'un modèle open weights me donne satisfaction sur ce que je lui demande de faire. Et dieu sait que j'en ai testé de ces putains de modèles !

GLM 5.2, c'est le dernier-né de Z.ai, le lab chinois connu avant sous le nom de Zhipu AI. Il est sorti en ce mois-ci (en juin), et c'est un gros bébé avec ses 744 milliards de paramètres en Mixture-of-Experts (MoE), dont à peu près 40 milliards qui s'activent pour chaque token, ainsi qu'une fenêtre de contexte qui monte à 1 million de tokens via la déclinaison glm-5.2[1m]. Le tout publié, comme toujours, sous licence MIT, avec les poids téléchargeables sur HuggingFace.

Bref, j'y croyais pas trop, mais j'ai quand même pris le petit abonnement Z.ai et j'ai lancé mes outils habituels et codé quelques nouvelles features sur mes logiciels. Et Ô surprise, il s'en sort très très bien pour mes usages (je dis bien pour mes usages !). J'ai eu aucun bug, pas de discussion à l'infini qui tourne autour du pot, ni de fin de conversation qui part en caractères chinois comme me faisait souvent Qwen.

Après, le truc chouette, c'est que je l'ai branché directement dans Claude Code. Si ça vous intéresse, je me suis fait un petit launcher spécifique. C'est cadeau :

#!/usr/bin/env bash
export ANTHROPIC_BASE_URL="https://api.z.ai/api/anthropic"
export ANTHROPIC_AUTH_TOKEN=VOTRE_CLE_API
export ANTHROPIC_DEFAULT_SONNET_MODEL="glm-5.2[1m]"
export ANTHROPIC_DEFAULT_OPUS_MODEL="glm-5.2[1m]"
export CLAUDE_CODE_AUTO_COMPACT_WINDOW="1000000"
claude "$@"

Vous le sauvegardez sous le nom de votre choix, par exemple "glm". Puis vous faites un :

chmod +x glm

Et ensuite vous le lancez comme ceci :

./glm

L'idée, c'est que comme l'API de Z.ai est compatible Anthropic, il suffit de pointer Claude Code vers leur endpoint, de glisser votre clé, et il cause à GLM 5.2 comme il causerait à Claude. Mes skills, mes scripts, tout marche pareil, c'est le feu !

Je regrette juste une chose, c'est de ne pas pouvoir le faire tourner en local chez moi. Parce que le bestiau, il est TROP gros. Même raboté et quantifié en 2-bit pour la maison , il vous bouffe dans les 240 Go de RAM. Chez moi, j'ai pas le matos, et vous probablement pas non plus. Donc pour le moment, l'API, c'est la seule porte d'entrée réaliste et abordable.

Que ce soit Qwen, Llama, Kimi, DeepSeek, peu importe ce que j'ai testé en local, pour mes usages un peu chiadés, à chaque fois je suis super déçu. Alors celui-là, pour ce que je lui demande, il tient très bien la route.

Maintenant, je vais pas vous vendre ça non plus comme un Claude Killer mais j'ai quand même trouvé un benchmark qui confirme mon ressenti. Sur le leaderboard Arena.ai dédié au code front-end, GLM 5.2 pointe à la deuxième place, juste derrière Fable 5. Et comme tout ce qui le précède est propriétaire, ça en fait le premier modèle open weights à ce niveau du classement.

Donc c'est pas la meilleure IA du monde, hein, mais c'est la première open source qui me donne un résultat qui me convient. Et vous savez tous à quel point je suis chiant et exigeant avec ce genre d'outil. En tout cas, c'est la première fois que je me dis que l'IA open source pourrait vraiment entrer dans mon flux du quotidien, et pas juste rester un joujou pour classer des trucs ou faire du slop sur des blogs de SEO. Maintenant, entre nous, j'attends surtout que Fable 5, ou son équivalent, revienne mettre le feu !!

Si ça vous tente d'essayer, il y a donc le GLM Coding Plan de Z.ai, qui démarre à 18 dollars par mois et qui est surtout taillé pour le code. Il se branche sur Claude Code, Cline et une vingtaine d'outils du même acabit. Petit conseil au passage, ce lien vers le Plan GLM est un lien affilié certes, mais il vous offre 10 % de réduc si vous l'utilisez, et ça me file un petit truc aussi, donc tout le monde y gagne.

Voilà, si vous codez avec autre chose jusqu'ici, ça vaut le coup d'y jeter un œil par curiosité.

Source : Z.ai

  • ✇Korben
  • GeoSpoof - Le VPN cache votre IP mais le navigateur vous trahit
    Anthony Sgro vient d'open-sourcer un truc que tout utilisateur de VPN devrait avoir sous la main. C'est extension pour Safari, Chrome et Firefox (et pas Faille-Fox, déso) qui s'appelle GeoSpoof et qui part d'un constat tout bête que la plupart des gens ignorent. En fait, votre VPN change masque bien votre adresse IP réelle (s'il est bien configuré, hein), d'accord, super, mais votre navigateur, lui, continue tranquillement de tout balancer aux sites web et notamment le lieu où vous vous trouve

GeoSpoof - Le VPN cache votre IP mais le navigateur vous trahit

Par : Korben ✨
30 juin 2026 à 14:48

Anthony Sgro vient d'open-sourcer un truc que tout utilisateur de VPN devrait avoir sous la main. C'est extension pour Safari, Chrome et Firefox (et pas Faille-Fox, déso) qui s'appelle GeoSpoof et qui part d'un constat tout bête que la plupart des gens ignorent.

En fait, votre VPN change masque bien votre adresse IP réelle (s'il est bien configuré, hein), d'accord, super, mais votre navigateur, lui, continue tranquillement de tout balancer aux sites web et notamment le lieu où vous vous trouvez vraiment.

Venez pas chez moi, c'est pas mon adresse...

Et il a mille façons de le faire. Y'a d'abord l'API de géolocalisation qui balance vos coordonnées GPS si vous l'autorisez, mais surtout y'a tout le reste, beaucoup plus sournois comme votre fuseau horaire, par exemple. Vous êtes connecté à un serveur VPN à New York mais votre navigateur répond Europe/Paris quand un script lui demande l'heure, et hop, le site comprend en une milliseconde que vous bluffez. Pareil avec l'objet Intl.DateTimeFormat, avec le Date du système, avec WebRTC qui adore fuiter votre vraie IP locale.

Vous pouvez avoir le meilleur VPN du monde, si ces signaux-là pointent tous vers chez vous pendant que votre IP dit le contraire, et vous êtes encore plus repérable qu'un mec sans VPN. C'est exactement ce qu'un VPN ne fait pas tout seul et c'est pour ça que votre abonnement à Youtube Premium, Netflix, ou Disney+ à 30 centimes acheté en Turquie ou je ne sais où, fini par se faire flagger.

GeoSpoof colmate donc ce trou en venant rebrancher directement ces APIs dans le navigateur sur du contenu factice. L'extension s'injecte au tout début du chargement de la page, avant que le JavaScript du site ait eu le temps de tourner et ensuite quand un script demande votre position, votre heure ou votre fuseau, il reçoit la localisation que VOUS avez choisie, et tout est cohérent. Géoloc, timezone, dates, WebRTC, tout raconte la même histoire et y'a plus de signal contradictoire qui dépasse.

Le mode que je trouve le plus pratique, dans GeoSpoof c'est surtout la synchro VPN automatique. L'extension repère l'IP de sortie de votre VPN, et elle aligne toute seule votre localisation navigateur dessus. Si vous changez de serveur, et que vous passez de Tokyo à Montréal, hé bien elle resynchronise sans que vous n'ayez à toucher à quoi que ce soit.

Sinon vous pouvez aussi y aller à la main, chercher une ville précise ou taper vos coordonnées directement. Pour vérifier que ça marche vraiment, l'auteur a même monté une page de test sur geospoof.com/verify , et l'extension passe les outils classiques de fingerprinting comme CreepJS ou BrowserLeaks.

Petit détail qui prouve le soin du travail, les overrides sont déguisés pour répondre [native code] quand un script essaie de vérifier s'ils ont été trafiqués. Héhé, malin !

Là où Anthony Sgro est honnête, c'est qu'il ne vous vend pas l'invisibilité totale. C'est écrit dans la doc que GeoSpoof ne change PAS votre IP. Sans un VPN derrière, votre adresse continue donc de pointer vers chez vous, et le bénéfice restera limité face aux sites qui recoupent l'IP.

Ça ne bypasse pas non plus la détection côté serveur, votre historique de compte ou votre moyen de paiement vous trahiront toujours. Et le mode le plus agressif, qui passe par le protocole de debug de Chrome pour verrouiller le fuseau jusque dans les workers, reste détectable par les outils qui cherchent spécifiquement ce genre de bidouille. C'est juste un outil de cohérence à utiliser en complément du meilleur VPN auquel vous vous êtes abonnés ^^.

Ça tourne sur Firefox, Chrome, Brave, Edge et même Safari sur iOS et macOS via l'App Store. Tout est sous licence MIT, et y'a pas de tracking ni de collecte de données dedans. C'est rare de voir des extension d'une si bonne qualité de finition, encore bravo à Anthony !!

Puis si vous bidouillez déjà votre vie privée avec un truc comme Fingerprint Defender , GeoSpoof complètera le tableau parfaitement sur la partie localisation.

Bref, un VPN sans ça, c'est une porte blindée avec une fenêtre grande ouverte à côté. Allez jeter un œil, ça prend 2 min à installer !

  • ✇Korben
  • Allégez Nextcloud en virant les dossiers node_modules de l'index
    Si vous avez déjà branché un stockage externe sur votre Nextcloud et regardé occ files:scan ramper en mode larve durant des plombes lors d'une indexation, vous connaissez le coupable. C'est évidemment un dossier node_modules qui contient des dizaines de milliers de tout petits fichiers, qui se fait indexer dans la base de Nextcloud, faisant tout ramer jusqu'à l'infini (ou presque...). Heureusement, Marc Palaus a repris le vieux plugin files_excludedirs (lancé à l'origine par Roeland Jago Douma,

Allégez Nextcloud en virant les dossiers node_modules de l'index

Par : Korben ✨
30 juin 2026 à 13:18

Si vous avez déjà branché un stockage externe sur votre Nextcloud et regardé occ files:scan ramper en mode larve durant des plombes lors d'une indexation, vous connaissez le coupable.

C'est évidemment un dossier node_modules qui contient des dizaines de milliers de tout petits fichiers, qui se fait indexer dans la base de Nextcloud, faisant tout ramer jusqu'à l'infini (ou presque...).

Heureusement, Marc Palaus a repris le vieux plugin files_excludedirs (lancé à l'origine par Roeland Jago Douma, puis passé de fork en fork) et l'a remis d'aplomb pour Nextcloud 32 à 34. Le taf de ce plugin c'est tout simplement d'ordonner à Nextcloud d'ignorer purement et simplement les dossiers que vous lui indiquez.

Donc si vous lui donnez ce pattern, il esquivera tout ce qui correspond :

occ config:app:set files_excludedirs exclude \
--value '[".snapshot","node_modules","cache/*/tmp"]'

Un tableau JSON, un pattern par entrée, et vous pouvez glisser des wildcards comme cache/*/tmp pour taper plusieurs sous-dossiers d'un coup.

Ensuite, pour voir ce qui tourne, occ config:app:get files_excludedirs exclude. Ou si vous préférez cliquer, l'app propose aussi un menu Exclude Directories dans les réglages admin, avec un bouton Preview Changes pour voir ce que vous allez virer avant de valider.

Pour les fichiers qui n'ont pas encore été indexés, c'est nickel donc. Mais pour ceux qui sont déjà dans la base, cette exclusion les rendra inaccessibles mais ils seront toujours là à traîner dans les résultats de recherche.

Alors pour les dégager pour de bon, voici quelle ligne de commande vous devez lancer :

occ files_excludedirs:clean-cache --dry-run

J'ai mis un dry-run en paramètre, parce que ça permet de faire tourner ça à blanc sur quelques résultats, sans flinger la mauvaise arborescence. Mais une fois que vous êtes chaud patate et sûr de vous, vous devrez relancer la même commande sans le --dry-run.

Notez que si vous montez par exemple un partage genre "Shared/Holiday" directement à la racine d'un utilisateur, vos fichiers ont un chemin du style photo.jpg, et pas Shared/Holiday/photo.jpg. C'est le chemin complet qu'il faudra viser donc...

En tout cas, j'ai été surprise d'apprendre qu'exclure des dossiers du scan, c'est une demande qui traîne sur le tracker Nextcloud depuis l' issue #6888 publiée en 2017... Ça existait pourtant côté ownCloud. Dommage quoi.

Pour installer ce plugin, vous récupérez l'archive sur la page Releases, vous décompressez dans nextcloud/apps, vous activez depuis l'admin. Ou alors un petit git clone + un composer install pour la version source et le tour est joué !

Et si la lourdeur de Nextcloud vous gonfle plus globalement, il y a des alternatives plus légères comme OpenCloud .

  • ✇Korben
  • Arma Cold War Assault - Code source ouvert pour ses 25 ans
    Il y a 25 ans, le studio tchèque Bohemia Interactive sortait Operation Flashpoint : Cold War Crisis, un shooter tactique qui a marqué toute une génération de joueurs PC. Eh bien, pour l'anniversaire du jeu, ils n'ont pas fait les choses à moitié puisqu'un remaster est en route, une démo gratuite est dispo sur Steam , et surtout, ils ouvrent le code source du moteur. Tout ça d'un coup et c'est trop cool ! Le dépôt est public sur GitHub , sous le nom BohemiaInteractive/CWR et dedans, vous trouvere

Arma Cold War Assault - Code source ouvert pour ses 25 ans

Par : Korben ✨
30 juin 2026 à 09:00

Il y a 25 ans, le studio tchèque Bohemia Interactive sortait Operation Flashpoint : Cold War Crisis, un shooter tactique qui a marqué toute une génération de joueurs PC.

Eh bien, pour l'anniversaire du jeu, ils n'ont pas fait les choses à moitié puisqu'un remaster est en route, une démo gratuite est dispo sur Steam , et surtout, ils ouvrent le code source du moteur. Tout ça d'un coup et c'est trop cool !

Le dépôt est public sur GitHub , sous le nom BohemiaInteractive/CWR et dedans, vous trouverez le moteur ET le code du jeu, le tout modernisé en C++20, compilé avec CMake et Clang, et compatible Windows x64 comme Linux x64. La démo Steam, elle, vous pose directement dans la sandbox open-world d'origine, avec les véhicules, l'IA et le système de missions. Enfin, un asset-pack est fourni pour que vous bricoliez vos propres mods.

Le moteur s'appelle Poseidon et détail rigolo, c'était le nom interne du projet en 1999, avant que le jeu ne devienne Operation Flashpoint et le moteur Real Virtuality. Et si vous vous demandez pourquoi le titre a fini renommé Arma : Cold War Assault en 2011, c'est à cause d'un litige sur la marque avec Codemasters, l'éditeur d'origine.

Attention quand même aux licences puisque Bohemia ouvre le code, mais les marques "ARMA", "Operation Flashpoint" et les logos restent chez leurs détenteurs respectifs (la marque "ARMA" appartient bien à Bohemia, mais "Operation Flashpoint" n'est pas à eux). En clair, si vous voulez forker le projet, vous devez le renommer et surtout pas le vendre comme un produit officiel Bohemia. Logique, mais autant le savoir avant !

Operation Flashpoint c'est LE jeu qui a lancé toute la franchise Arma, devenue une référence du "simulationnisme" militaire sur PC, avec une communauté de moddeurs énorme dans son sillage. Libérer le code d'un jeu culte, c'est très rare (id Software l'avait fait avec Doom , sans oublier ce bon vieux Commander Keen ), et ça donne à la communauté de quoi préserver et faire vivre le jeu pour les 25 prochaines années !

La version complète du remaster, elle, n'a pas encore de date officielle et Bohemia parle juste d'un "plus tard".

Bref, si vous voulez trifouiller le moteur d'un classique, le code est sur Github et la démo gratuite sur Steam .

Source

  • ✇Korben
  • SB-mini-II - Il reconstruit un Apple II Plus de zéro
    L'Apple II, ce vieux bouzin de 1977, n'a jamais eu le moindre secret pour personne. C'est d'autant plus vrai qu'Apple livrait carrément les schémas électronique de sa machine dans le manuel d'origine et à l'époque, des bouquins entier décortiquant chaque circuit étaient vendus dans le commerce. C'était fou et ça a bien changé depuis ! Mais surtout c'est grâce à ça que Simon Boak s'est dit qu'il pouvait en refaire un de zéro ! Son projet s'appelle le SB-mini-II , et c'est un clone maison de l'App

SB-mini-II - Il reconstruit un Apple II Plus de zéro

Par : Korben ✨
29 juin 2026 à 19:21

L'Apple II, ce vieux bouzin de 1977, n'a jamais eu le moindre secret pour personne. C'est d'autant plus vrai qu'Apple livrait carrément les schémas électronique de sa machine dans le manuel d'origine et à l'époque, des bouquins entier décortiquant chaque circuit étaient vendus dans le commerce.

C'était fou et ça a bien changé depuis ! Mais surtout c'est grâce à ça que Simon Boak s'est dit qu'il pouvait en refaire un de zéro !

Son projet s'appelle le SB-mini-II , et c'est un clone maison de l'Apple II Plus assemblé avec des puces qu'on trouve encore aujourd'hui. Le 65C02 (la version CMOS du fameux 6502) tourne à 1,024 MHz, à un cheveu de l'original qui carburait à 1,023 MHz et au lieu de la DRAM capricieuse d'époque, il lui a collé de la SRAM statique (48 Ko sur une puce et demie de 32 Ko, le surplus part à la poubelle, tant pis).

Et pour atteindre les 64 Ko complets, il enfiche à l'intérieur une carte Saturn 128K dans le slot 0, comme ça c'est réglé.

Mais le plus gros morceau, ça a été la vidéo. Boak a viré toute la "circuiterie" composite de l'Apple II, un vrai sac de nœuds bien connu des anciens, pour la remplacer par une carte Apple II VGA (un projet open source de markadev).

Celui lui a permis d'obtenir une image VGA bien nette sur un écran moderne. Autrement, sans cette carte, y'aurait rien eu à l'écran, malheureusmeent.

Et le clavier suit le même mouvement grâce à un Raspberry Pi Pico qui lui sert d'interface entre un clavier USB et la machine, en générant les mêmes signaux parallèles que le clavier ASCII d'origine. Bonus, Control + Print Screen redémarre le CPU comme aux temps jadis ! Et comme le Pico crache du 3,3V, il cause directement avec la logique 74HC en CMOS, sans le moindre convertisseur de niveau.

Côté fabrication, c'est son premier PCB en 4 couches, avec des plans internes dédiés à l'alimentation. Une entrée 12V passe par un régulateur Pololu pour sortir du 5V, et le tout rentre dans un boîtier imprimé en 3D, vaguement inspiré du vieux disque dur ProFile d'Apple. Les fichiers (schémas, nomenclature, CAO) sont sur GitHub sous licence MIT, si jamais vous voulez vous lancer.

Et ça tourne pour de vrai !! Boak a même posté une capture d'un vrai logiciel Apple II qui démarre dessus.

Je suis nul en soudure, mais si je savais souder, ça me donnerait envie de m'y coller, je pense. D'ailleurs, si le rétro vous chatouille, allez voir aussi ce malade qui fait tourner MS-DOS sur un Apple IIe , ou ce Pico qui émule un Z80 .

Bref, le SB-mini-II, c'est par ici, et c'est entièrement libre.

Source

  • ✇Korben
  • Alexandria - Vos ebooks en livres audio multi-voix, en local
    Je ne suis pas très client des livres audio parce que mon cerveau, en général, part faire des trucs dans son coin et je me retrouve à rien écouter du tout. Je préfère un petit podcast où ça rigole qu'une œuvre littéraire qui demande de la concentration. Mais je sais que vous appréciez beaucoup les livres audio et il arrive très souvent qu'un bouquin n'ait pas sa version audio. Un vieux roman qui n'est plus édité, un PDF technique, une fanfiction de 800 pages, un article de korben.info ou juste u

Alexandria - Vos ebooks en livres audio multi-voix, en local

Par : Korben ✨
29 juin 2026 à 18:18

Je ne suis pas très client des livres audio parce que mon cerveau, en général, part faire des trucs dans son coin et je me retrouve à rien écouter du tout. Je préfère un petit podcast où ça rigole qu'une œuvre littéraire qui demande de la concentration.

Mais je sais que vous appréciez beaucoup les livres audio et il arrive très souvent qu'un bouquin n'ait pas sa version audio. Un vieux roman qui n'est plus édité, un PDF technique, une fanfiction de 800 pages, un article de korben.info ou juste un truc que personne chez Audible ne prendra le temps d'enregistrer parce que ça n'intéresse que vous.

Mais youpi, Finrandojin, un internaute, en a eu marre d'attendre l'audiobook de ses rêves et a codé Alexandria, un générateur de livre audio qui tourne 100% en local sur votre ordi.

Vous balancez un fichier .txt, .md ou .epub, dans l'appli, puis un LLM découpe le texte et annote chaque ligne avec le personnage qui parle et la manière dont il le dit, puis le moteur Qwen3-TTS joue le tout en local comme une vraie troupe de doubleurs professionnels. Et le résultat est assez propre, même si ça ne vaut pas encore un vrai enregistrement fait par un vrai humain. M'enfin, faute de mieux, pourquoi pas !

Et surtout, ce LLM qui fait le découpage, vous le branchez où vous voulez. En local via LM Studio ou Ollama, ou dans le cloud avec OpenAI ou n'importe quelle API compatible. Ensuite, une fois le script annoté, Alexandria vous propose 9 voix pré-entraînées avec contrôle de l'émotion et du ton.

Vous pouvez aussi cloner une voix à partir de 5 à 15 secondes d'échantillon, ou carrément en fabriquer une à partir d'une simple description écrite. Vous tapez par exemple "Une voix masculine chaude et grave, au ton calme et posé" (c'est ma voix quoi...lol) et hop, il vous la fabrique.

La fonctionnalité de génération de personnas fait également gagner un temps de dingue puisqu'en un clic, le LLM analyse le bouquin, invente une description de voix pour chaque personnage, génère l'audio de référence et assigne tout automatiquement.

Et pour les obsédés du détail, il y a même un éditeur web où vous regénérez n'importe quelle ligne individuellement, du training LoRA pour vous fabriquer des voix persistantes, et un export en MP3 en pistes séparées pour bidouiller ça ensuite dans Audacity, ou en M4B chapitré qui rentre direct dans Audiobookshelf, Apple Books ou VLC. Et tout ça bien sûr, dans une dizaine de langues, français compris.

Alexandria exigera par contre une carte graphique avec 8 Go de VRAM au minimum, 16 et plus si vous voulez du débit correct. Et si vous êtes sur Mac, mauvaise nouvelle, l'accélération MPS d'Apple Silicon n'est pas encore supportée, donc ça tournera en mode CPU, donc ce sera lent. Mais c'est pas très grave, vous lancez la génération, et vous retournez lire d'autres articles sur mon site pour passer le temps.

Même galère aussi pour les gens qui ont de l'AMD sous Windows. Les chanceux par contre, ce sont les possesseurs de NVIDIA sous Windows ou Linux et les AMD sous Linux. Maintenant si vous tenez juste à faire parler votre Mac sans y passer trois heures par chapitre , vous serez mieux servi ailleurs qu'avec Alexandria.

Pour l'installation, le plus simple passe par Pinokio en deux clics, et si vous n'avez pas le GPU qui va bien, il y a un notebook Google Colab pour tourner sur un T4 gratuit dans le navigateur. Comptez quand même un téléchargement de 3,5 Go pour les modèles TTS à la première utilisation, ils ne sont pas inclus dans l'install.

Vous l'aurez compris, c'est du DIY un peu gourmand en GPU, mais pour tous vos ebooks à écouter qui n'auront jamais de narrateur, ça ouvre les perspectives ! Le code est sous licence MIT et je vous invite quand même à tester avec un chapitre avant de vous lancer dans un roman entier.

Source

  • ✇Korben
  • Modos Flow - L'écran e-ink open source qui pousse le refresh à fond
    Wenting Zhang, le développeur derrière Modos Labs, s'est attaqué depuis des années à un truc qui faisait rire tout le monde, jusqu'à ce qu'il y parvienne. Son but dans la vie c'était de faire tourner un écran e-ink assez vite pour s'en servir comme écran de PC. Un vrai moniteur, branché en USB-C, sur lequel vous codez, écrivez et naviguez. Son projet est open source, s'appelle Glider , et le produit grand public qui en découle, le Modos Flow, est actuellement en pleine campagne de crowdfunding a

Modos Flow - L'écran e-ink open source qui pousse le refresh à fond

Par : Korben ✨
29 juin 2026 à 08:59

Wenting Zhang, le développeur derrière Modos Labs, s'est attaqué depuis des années à un truc qui faisait rire tout le monde, jusqu'à ce qu'il y parvienne. Son but dans la vie c'était de faire tourner un écran e-ink assez vite pour s'en servir comme écran de PC. Un vrai moniteur, branché en USB-C, sur lequel vous codez, écrivez et naviguez.

Son projet est open source, s'appelle Glider , et le produit grand public qui en découle, le Modos Flow, est actuellement en pleine campagne de crowdfunding avec la promesse folle de pousser le refresh rate de l'encre électronique bien au-delà du standard.

Le Glider, c'est un design matériel ouvert : PCB dessiné sous KiCad, un FPGA Xilinx Spartan-6 qui fait tourner Caster (le contrôleur e-ink maison, lui aussi open source), de la DDR3 pour le framebuffer, et des entrées USB-C DisplayPort Alt-Mode + DVI. Vous le branchez sur Mac, Windows ou Linux, et il affiche vos trucs comme un écran tout à fait normal.

Une latence de traitement annoncée sous les 20 microsecondes, du dithering matériel pour gratter des niveaux de gris, et un rail d'alim à ±15 V pour faire bouger les particules assez vite sur les grandes dalles.

Parce que le gros du travail, c'est bien de forcer l'e-ink à aller plus vite que ce pour quoi il est fait. Les écrans à encre électronique, c'est en général de l'ordre de 150 ms de temps de réponse contre 10 ms pour un LCD, et un contraste de 17:1 contre 1000:1. Mais côté Modos Flow, on est dans du 60 Hz, ce qui est déjà incroyable en soi.

Et le vrai intérêt de tout ça, c'est que pour la lecture, l'écriture, le code, vous n'avez pas besoin de 10 ms de réponse. Vous avez besoin d'un écran qui ne vous crève pas les yeux au bout de huit heures. Et sur ce terrain-là, l'e-ink reste imbattable : pas de rétroéclairage, ça ne scintille pas, c'est lisible en plein soleil... Bref, c'est que du bonheur. Le Modos Flow dispose même du tactile, d'un stylet, ainsi que d'un éclairage frontal, un support VESA, et différents modes d'affichage suivant ce que vous faites. Bref, c'est l'écran idéal pour celles et ceux qui, comme moi, passent leur vie dans du texte, à écrire, coder, dévorer des docs.

Côté tarif, le Modos Flow démarre à 619 $ sur Crowd Supply , et la campagne est déjà largement financée, plus de 540 000 $ récoltés pour 175 000 espérés, soit 308 %, avec une clôture prévue le 9 juillet 2026. Reste que c'est du crowdfunding, avec tout ce que ça implique de délais glissants et d'objectifs qui partent parfois en vrille. Mais si l'idée d'un écran reposant vous tente, c'est le moment de regarder ça de près.

En plus, le hardware, lui, reste ouvert alors c'est tout à fait possible de vous lancer de votre côté avec un FPGA et un fer à souder, et les plans du Glider dispos sur GitHub. C'est aussi ouvert que cette app de lecture libre dont je parlais il y a quelques jours.

On parlait déjà d' ebooks capables de lire de la vidéo il y a plus de dix ans, et l' e-ink couleur peine encore à percer mais là, j'avoue que Modos pousse le bouchon plus loin que personne. À voir maintenant si le Flow tient ses promesses à la livraison.

Merci à Maitretofu pour le lien.

  • ✇Korben
  • QR Font - La police qui transforme du texte en QR code
    Tapez [hello] dans votre éditeur, appliquez une police, et le mot se change en QR code scannable. Pas de générateur en ligne, pas d'image à exporter mais juste une police de caractères. C'est l'idée complètement barrée de qr-font , le projet de Jim Paris, et quand j'ai testé la démo, j'avoue, ça m'a plu. Vous installez une des polices TrueType du projet, vous écrivez votre contenu destiné à devenir un QR code entre crochets, et le texte autour s'affichera tout à fait normalement. Par exemple abc

QR Font - La police qui transforme du texte en QR code

Par : Korben ✨
28 juin 2026 à 12:56

Tapez [hello] dans votre éditeur, appliquez une police, et le mot se change en QR code scannable. Pas de générateur en ligne, pas d'image à exporter mais juste une police de caractères. C'est l'idée complètement barrée de qr-font , le projet de Jim Paris, et quand j'ai testé la démo, j'avoue, ça m'a plu.

Vous installez une des polices TrueType du projet, vous écrivez votre contenu destiné à devenir un QR code entre crochets, et le texte autour s'affichera tout à fait normalement.

Par exemple abc[hello]ghi vous donnera "abc", un QR code, puis "ghi", le tout sur la même ligne. Et comme rien n'est jamais transformé en image, votre QR code reste du texte pur. Vous pouvez le copier-coller comme un caractère lambda, le stocker en texte brut, ou encore le glisser au milieu d'un paragraphe dans n'importe quel document.

Le texte [https://korben.info] tapé avec la police QR Font 2-L : la police le transforme toute seule en QR code, sans aucune image.

Mais vrai tour de force surtout, c'est la fabrication de cette police car un QR code normalement, c'est une image dans laquelle un programme a encodé des données. Ce programme calcule une parité Reed-Solomon, positionne les petits carrés comme il faut, applique un masque par-dessus et ensuite tout est exporté dans un PNG ou un JPG. Alors que là, tout le calcul se fait DANS le fichier de la police de caractère.

Pour reproduire l'algo Reed-Solomon, la police fait des maths toute seule comme une grande, sous la forme de règles OpenType.

C'est dans la lignée des bidouilles à base de QR Code dont je vous ai déjà causé comme ces QR codes montés en LEGO ou de ces polices Unicode qu'on détourne pour frimer dans sa bio Insta.

Forcément, c'est un proof-of-concept, donc il y a des garde-fous. En effet, chaque police ne peut encaisser que 17 caractères pour la version light, 32 pour la standard et 53 pour l'étendue. Donc vous ne pourrez pas y mettre une URL à rallonge. Par contre, un petit mot ou une URL classique, ça passe tranquille.

Notez aussi que les navigateurs découpent le texte en ligne AVANT d'afficher les glyphes, ce qui veut dire qu'un de ces QR peut se retrouver coupé en 2 en fin de ligne. Mais y'a moyen de contourner le problème avec la règle CSS suivante sur le bloc et le tour est joué ! :

white-space: nowrap

Bref, c'est génial et pas si inutile que ça je trouve...

  • ✇Korben
  • Steam Controller - elle rampe toute seule vers son chargeur
    Il y a des problèmes qui n'existent pas, et des gens qui les résolvent quand même... Ray Foss en fait partie. Ce dernier a fait en sorte que sa Steam Controller flambant neuve rampe toute seule jusqu'à son chargeur, sans qu'il ait à lever le petit doigt. Et pour cela, il a codé son Triton Auto-Charge Vision Tracker qui tourne entièrement dans le navigateur et qui est utilisable par tous ! Le principe est bien tordu... Vous collez une webcam au-dessus de votre bureau, vous ouvrez la page, et vous

Steam Controller - elle rampe toute seule vers son chargeur

Par : Korben ✨
28 juin 2026 à 07:55

Il y a des problèmes qui n'existent pas, et des gens qui les résolvent quand même... Ray Foss en fait partie. Ce dernier a fait en sorte que sa Steam Controller flambant neuve rampe toute seule jusqu'à son chargeur, sans qu'il ait à lever le petit doigt. Et pour cela, il a codé son Triton Auto-Charge Vision Tracker qui tourne entièrement dans le navigateur et qui est utilisable par tous !

Le principe est bien tordu... Vous collez une webcam au-dessus de votre bureau, vous ouvrez la page, et vous cliquez sur trois points à l'écran : le palet de charge, l'avant de la manette, l'arrière. À partir de là, la vision par ordinateur suit la manette en temps réel pendant que le code pilote ses deux petits moteurs de vibration internes.

Petit rappel si vous aviez hiberné, Valve a ressorti sa Steam Controller en mai dernier, des années après avoir lâché la première. Elle se recharge sur un palet magnétique, et c'est pile poil cette dernière étape que Foss a automatisée. La Steam Controller, c'est aussi la manette dans laquelle Valve a planqué un cri Wilhelm , et visiblement elle attire les bidouilleurs.

En pulsant ces moteurs de façon asymétrique, autour de 70 Hz, la page fait littéralement ramper la manette sur le bureau et la réoriente petit à petit vers le palet. C'est le principe de ces bristlebots faits avec une brosse à dents et un moteur vibreur de téléphone, sauf qu'ici les moteurs étaient prévus pour faire vibrer la manette dans vos jeux, et surement pas pour la balader sur le bureau...

Pas d'install, pas de pilote à régler non plus, c'est la page qui se connecte directement à la manette via WebHID, la même techno qui permet déjà de tester son matos gaming dans le navigateur , à condition d'être sur Chrome ou Edge parce que Firefox et Safari boudent toujours cette API.

L'interface de l'outil, avec les points de repère à placer sur la manette et le palet.

Au passage, elle lit la batterie de la manette et vous affiche le pourcentage et même le voltage de la cellule, histoire de confirmer que le contact magnétique se fait bien.

Foss a aussi prévu un mode approche en douceur qui réduit de moitié la fréquence des vibrations quand la manette arrive tout près du palet, pour qu'elle se pose dedans au lieu de le percuter. Enfin, en théorie, parce qu'il prévient lui-même que l'amarrage n'est pas garanti.

La vraie limite du truc, c'est que le calage des points de repère reste assez pénible à faire.

Ça ne sert strictement à rien, mais c'est marrant. Le projet est en open source sur GitHub si vous voulez tenter le coup chez vous.

Source

❌
❌