Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

Z80 Sans, la police de caractères qui désassemble du code machine toute seule

Par : Korben
17 mars 2026 à 13:56

Un développeur a créé une police OpenType capable de convertir des opcodes hexadécimaux du processeur Z80 en instructions assembleur lisibles.

Il suffit de coller le code machine dans un traitement de texte, de changer la police, et les mnémoniques s'affichent en clair. Le projet, disponible sur GitHub, détourne les tables de substitution de glyphes de manière plutôt rigolote.

Une police, pas un logiciel

L'idée est en fait assez simple. Vous balancez une suite de caractères hexadécimaux dans LibreOffice Writer, puis vous sélectionnez cette police, Z80 Sans donc, et sous vos yeux ébahis, le texte se transforme en instructions assembleur.

Pas besoin d'installer un désassembleur, pas besoin de ligne de commande. La police fait tout le travail.

Derrière cette apparente simplicité, le développeur nevesnunes a exploité deux composants du standard OpenType que l'on retrouve habituellement dans des usages bien plus classiques : la table de substitution de glyphes (GSUB) et la table de positionnement (GPOS).

Ce sont les mêmes mécanismes qui permettent d'afficher correctement l'arabe ou de fusionner deux lettres en une ligature comme le "æ". Ici, ils servent à reconnaître des séquences hexadécimales et à les remplacer par les mnémoniques Z80 correspondants.

458 752 combinaisons à gérer

Le Z80 est un processeur 8 bits qui accepte des adresses sur 16 bits et plusieurs registres comme opérandes. Résultat : une seule instruction peut donner jusqu'à 458 752 combinaisons possibles.

Et comme les octets hexadécimaux sont encodés dans un ordre différent de celui dans lequel ils doivent être affichés en assembleur, le problème se corse vite. Les adresses en little-endian et les offsets signés en complément à deux ajoutent encore une couche de difficulté.

Pour s'en sortir, nevesnunes a construit un parseur par descente récursive qui génère automatiquement toutes les règles de substitution nécessaires. Chaque quartet (0 à f) dispose de ses propres glyphes, soit 96 au total pour la partie numérique.

Le tout repose sur une édition directe des fichiers .ttx, la représentation XML des données de police, à partir de Noto Sans Mono et Droid Sans Mono.

Du détournement de police à l'art de la bidouille

Z80 Sans n'est pas le premier projet à détourner les capacités des polices OpenType. On a déjà vu Fontemon, un jeu vidéo complet caché dans une police, ou encore Addition Font, capable d'additionner deux nombres rien qu'avec le rendu typographique.

Il y a même eu Llama.ttf, qui embarquait un modèle d'IA directement dans un fichier de police. Mais un désassembleur complet pour un jeu d'instructions entier, c'est quand même autre chose en termes de complexité.

Visiblement, le projet comporte encore quelques petits bugs d'affichage sur certaines instructions complexes, et le code est qualifié par son propre auteur de "qualité CTF", ce qui veut dire bidouille assumée.

Mais bon, on parle d'un type qui a réussi à faire rentrer un désassembleur Z80 dans une police de caractères. Les puristes de l'assembleur apprécieront le côté complètement absurde de la démarche, et les fans de rétro-informatique vont adorer.

Source : Lobste.rs

Google veut vérifier l'identité de tous les développeurs Android, et ça menace F-Droid

Par : Korben
16 mars 2026 à 15:19

Google va obliger tous les développeurs Android à s'enregistrer avec une pièce d'identité et à payer 25 dollars, même ceux qui distribuent leurs apps en dehors du Play Store. F-Droid, le dépôt d'applications open source qui existe depuis quinze ans, dit que c'est une menace pour sa survie.

Une inscription obligatoire dès septembre

L'été dernier, Google a annoncé que toutes les applications installées sur des appareils Android certifiés devront obligatoirement être liées à un compte développeur vérifié. Cette obligation entrera en vigueur dès le mois de septembre prochain au Brésil, en Indonésie, à Singapour et en Thaïlande. Le reste du monde suivra quatre mois plus tard.

Pour s'enregistrer, il faut fournir une pièce d'identité officielle, accepter les conditions de Google et payer 25 dollars. Et ça concerne tout le monde : les développeurs qui publient sur le Play Store, mais aussi ceux qui passent par des stores alternatifs, par F-Droid, ou qui proposent leurs apps en téléchargement direct depuis un site web.

F-Droid ne peut pas s'adapter

F-Droid héberge plus de 3 000 applications open source, sans pub et sans trackers. Le problème, c'est que F-Droid signe lui-même les apps qu'il distribue avec sa propre clé, et Google impose désormais une seule signature par application.

Ça casse tout le modèle : si l'app est déjà signée par le développeur sur le Play Store, la version F-Droid ne peut plus exister. Et F-Droid ne peut pas non plus forcer des centaines de contributeurs bénévoles à s'enregistrer chez Google et à fournir leurs papiers.

37 organisations ont signé une lettre ouverte contre ce projet, dont l'Electronic Frontier Foundation, la Free Software Foundation et Vivaldi. Une pétition sur Change.org a rassemblé 64 000 signatures de développeurs.

Le lien avec le procès Epic Games

Ce durcissement arrive juste après l'accord entre Google et Epic Games sur la distribution d'apps Android. Les deux entreprises ont annoncé un programme de stores enregistrés qui permet le sideloading, mais sans obliger Google à intégrer des stores tiers dans le Play Store. 

Certains y voient une manoeuvre : si les tribunaux n'obligent pas Google à ouvrir le Play Store, la vérification des développeurs lui donne quand même un contrôle indirect sur toute la distribution Android.

Google, de son côté, dit que c'est une question de sécurité et que ça permet de bloquer les développeurs malveillants plus rapidement. Les distributions Android alternatives comme LineageOS ou GrapheneOS ne sont pas concernées.

Google invoque la sécurité, mais le Play Store lui-même laisse régulièrement passer des apps malveillantes, donc l'argument ne tient pas tant que ça.

Obliger un développeur bénévole qui publie un petit outil open source à fournir ses papiers d'identité à Google, c'est quand même un peu naze. On verra si la mobilisation des 37 organisations et des 64 000 développeurs suffira à faire bouger les choses, mais pour l'instant le calendrier est maintenu.

Sources : Android Authority , F-Droid

Un drone imprimé en 3D qui file à 108 km/h grâce à un ESP32

Par : Korben
16 mars 2026 à 11:57

Un YouTubeur bricoleur a fabriqué un micro-drone de 136 grammes capable de filer à 108 km/h, le tout pour environ 155 dollars de composants et une imprimante 3D. Le petit engin baptisé ESP-Blast tient dans la main, utilise un microcontrôleur ESP32 à quelques dollars et un châssis en plastique PETG. Le créateur compte partager tous les fichiers en open source pour que chacun puisse le reproduire.

Un drone qui tient dans la main

Le créateur, connu sous le nom de Max Imagination sur YouTube, s'est inspiré de deux équipes qui se disputent le record du drone RC le plus rapide au monde, avec des vitesses qui dépassent les 660 km/h. Son objectif à lui était plus modeste : construire un drone de poche performant avec des composants accessibles à tous.

Le résultat, c'est l'ESP-Blast, un quadcoptère en forme de balle qui décolle à la verticale avant de basculer en vol horizontal. Le châssis est imprimé en PETG sur une Elegoo Neptune 4 Plus et ne pèse que 40 grammes, nez et queue compris.

155 dollars de composants

Côté motorisation, on retrouve quatre moteurs brushless 1104 avec des hélices tripales de 2,5 pouces, pilotés par des variateurs de 8 ampères. Le circuit imprimé a été conçu par Max lui-même dans le logiciel Flux, pour moins de 8 dollars. Il embarque un ESP32 avec accéléromètre, gyroscope, magnétomètre, baromètre et GPS. Le logiciel de vol, c'est du Betaflight en version 10.10.

Une caméra FPV motorisée à l'avant bascule automatiquement selon le mode de vol et transmet en 5,8 GHz la vitesse, la tension batterie et le nombre de satellites. La batterie LiPo 3S de 450 mAh offre environ 5 minutes de vol, ou 2 minutes à fond et 8 en mode tranquille. La portée Wi-Fi de l'ESP32 plafonne à environ 200 mètres. Le budget total tourne autour de 155 dollars, et on peut même descendre à 110 dollars en retirant quelques capteurs.

Un projet open source

Max prévoit de partager les fichiers 3D et les tutoriels pour que d'autres puissent reproduire ou améliorer le drone. Le projet a demandé pas mal d'assemblage, de tests, de crashs et de réparations avant d'atteindre les 108 km/h en vol.

Il annonce déjà de futures versions pour pousser les performances encore plus loin, et ce n'est visiblement pas son premier essai puisqu'il avait déjà conçu l'ESP-Fly, un micro-drone encore plus petit contrôlable depuis un smartphone.

Pour 155 dollars et un peu de patience, on obtient un drone qui va plus vite que pas mal de modèles du commerce, et qui pèse à peine plus qu'un smartphone. Le fait que tout soit open source et imprimable en 3D rend le projet encore plus intéressant pour les bidouilleurs.

Avec quelques limites quand même, 200 mètres de portée en Wi-Fi et 5 minutes d'autonomie, ça limite un peu l'usage à des vols de démonstration. Mais pour un projet à base d'ESP32 à 3 dollars la puce, les 108 km/h sont impressionnants.

Sources : Techspot , TechEBlog

Mouser - Remappez votre Logitech MX Master 3S sans Options+

Par : Korben
16 mars 2026 à 11:50

Logitech Options+, c'est quand même un truc de fou... Vous achetez une souris à 100 balles, et pour configurer 6 malheureux boutons, faut se créer un compte, accepter de la télémétrie et laisser tourner cette usine à gaz en tâche de fond. Le problème, c'est que sans ce truc, votre MX Master 3S (lien affilié) est bridée avec des réglages par défaut.

Toutefois un dev bien inspiré a pondu Mouser , une alternative open source qui fait la même chose... mais sans le bloatware.

En gros, vous téléchargez un zip de 45 Mo (un exe portable, pas besoin de Python), vous extrayez tout, vous le lancez et boom, vous pouvez alors remapper les boutons de votre MX Master 3S, les 6 que Mouser prend en charge (clic milieu, bouton geste, retour, avancer, scroll horizontal gauche/droite) + 22 actions prédéfinies : Alt+Tab, copier-coller, contrôle média, navigation web... tout y passe !

Le truc cool, c'est ce qui se passe sous le capot puisque Mouser communique directement avec votre souris via le protocole HID++ de Logitech sur Bluetooth. Sur Windows, il intercepte les événements souris avec un hook bas niveau, et sur macOS c'est via CGEventTap. Pour le fameux bouton geste sous le pouce, c'est plus subtil puisqu'il envoie une commande HID++ pour "divertir" le bouton et récupérer les événements bruts plutôt que de laisser le firmware gérer. Y'a eu un peu de reverse engineering de protocole propriétaire, en somme.

Autre truc chouette dans cette appli, ce sont les profils par application. Vous pouvez assigner des actions différentes selon que vous soyez sur Firefox, VS Code ou VLC, et le switch se fait automatiquement en détectant la fenêtre active toutes les 300 ms. C'est grosso modo ce que le logiciel officiel propose pour le remapping, sauf que là ça tourne sans envoyer quoi que ce soit chez Logitech !

Côté réglages, vous pouvez aussi jouer sur le DPI (de 200 à 8 000) et inverser le sens du scroll vertical ou horizontal. Y'a même un moniteur de batterie avec badge coloré et une reconnexion automatique quand la souris sort de veille. C'est carrément pas mal pour un projet communautaire.

Pour le moment, Mouser ne supporte QUE la MX Master 3S connectée en Bluetooth (le récepteur USB n'est que partiellement supporté). Le code est pensé pour être extensible à d'autres souris HID++ de Logitech, mais c'est la seule testée actuellement. Donc au boulot les gars ! Et pour le portage Linux, faudra aussi vous bouger le cul car actuellement seuls macOS et Windows sont supportés.

Ah et il faut absolument qu'Options+ ne tourne pas en même temps, parce que les deux se marchent dessus pour l'accès HID++ ! Et aussi, pas la peine de chercher des options Logitech Flow ou SmartShift là-dedans, car Mouser se concentre uniquement sur le remapping et le DPI, et pas (encore ?) sur le multi-machine.

À découvrir ici !

La Xbox One enfin hackée après 12 ans d'invincibilité

Par : Korben
16 mars 2026 à 11:40

La Xbox One n'a jamais été hackée ! Eh oui, depuis 2013, la console de Microsoft narguait la communauté du reverse engineering pendant que les PlayStation, les Switch et autres 3DS tombaient les unes après les autres. Microsoft la décrivait même comme "le produit le plus sécurisé jamais créé" mdrrrr.

Bon bah c'est fini comme vous vous en doutez car à la conférence RE//verse 2026 à Orlando, Markus "doom" Gaasedelen a réussi à exécuter du code arbitraire sur le boot ROM de la console, autrement dit c'est un hack hardware impossible à corriger.

Du coup, comment on casse un truc réputé incassable ?

Eh bien toute la sécurité de la Xbox One repose sur un minuscule processeur ARM Cortex R4, le Platform Security Processor (PSP), planqué dans un coin du SoC AMD.

Ce PSP contient un boot ROM gravé directement dans le silicium... et c'est le seul composant que Microsoft ne peut pas mettre à jour. L'architecte de la sécu Xbox, Tony Chen, l'avait dit lui-même en 2019 : "le seul bug logiciel dont on ne peut pas se remettre, c'est un bug dans le boot ROM".

Le die shot du SoC Xbox One. Le PSP est planqué tout en bas à droite.

Sauf que Markus n'a pas cherché de bug logiciel, parce y'en a pas. Le code du boot ROM est linéaire, hyper audité, sans la moindre faille. Du coup, il est passé par le hardware avec du voltage glitching.

Le principe c'est de faire s'effondrer brièvement le rail d'alimentation du processeur (en gros, on colle un MOSFET sur le rail et on tire la tension vers le bas pendant 100 à 200 nanosecondes) pour corrompre l'exécution d'une instruction. Et Microsoft avait quand même blindé le truc en prenant soin de ne pas mettre de pin reset accessible, pas d'UART, pas de JTAG, pas de post codes de diagnostic (désactivés par des fusibles), et surtout 37 stalls randomisés qui décalent le timing du boot à chaque démarrage. En gros, c'est comme essayer de crocheter une serrure dans le noir, avec des moufles, et la serrure qui change de position toutes les 2 secondes.

D'ailleurs, c'était la première fois que Markus faisait du glitching de sa vie. Au début, il a galéré sur le mauvais rail d'alimentation (la tension 1.8V, finalement un cul-de-sac) avant de trouver le bon (le North Bridge core). Et là, en balançant ses impulsions de voltage au bon moment, il a réussi à activer les post codes que Microsoft avait désactivés par fusibles. Premier signe que la bête était vulnérable !!!!

Le setup de glitching : oscilloscope, carte mère Xbox One et fils partout.

Ensuite, il a ciblé les opérations memcopy du boot ROM, là où les données contrôlées par l'attaquant transitent dans les registres du processeur. Un glitch bien placé pendant un memcopy, et hop, le pointeur d'instruction du processeur part n'importe où. Résultat : 0x41414141 qui sort sur le bus I2C, la preuve qu'on contrôle l'exécution du boot ROM !

Bon par contre, il était enfermé dans un "user jail", une sandbox ARM avec seulement quelques Ko de code accessible. Et c'est pas si simple d'en sortir.

0x41414141 sur le bus I2C. ROP'd OUT MY POST CODE !

Et là, coup de génie du mec : un double glitch sur le même boot.

Le premier casse la boucle d'initialisation du MPU (la protection mémoire ARM, les 12 régions qui créent les jails), le second hijack le pointeur d'instruction pendant le memcopy.

Combiner les deux sur un seul démarrage, c'est du genre 1 chance sur 100 par glitch, soit environ 1 sur 10 000 pour le combo donc autant dire qu'il faut laisser tourner la machine des centaines de milliers de fois. Mais ça marche !! Avec le MPU désactivé et le pointeur d'instruction sous son contrôle, Markus obtient alors l'exécution de code en mode superviseur, avant même que le boot ROM n'ait vérifié les signatures ou déchiffré quoi que ce soit.

Bingo !! Et les conséquences sont radicales puisque grâce à ce hack, il peut maintenant déchiffrer tous les jeux, les firmwares et les mises à jour passés, présents et futurs.

Il peut aussi dé-pairer les NAND et lecteurs optiques pour la réparation. Et comme c'est gravé dans le silicium, c'est impatchable, comme le Reset Glitch Hack de la 360 à l'époque. Pour l'instant, ça concerne uniquement le modèle Xbox One Fat de 2013.

Ah et petit détail croustillant.... Microsoft avait prévu des moniteurs anti-glitch dans le SoC pour détecter les perturbations de voltage, mais sur les premières révisions ils n'arrivaient pas à les stabiliser, du coup ils les ont désactivés par fusibles. Pas de bol. Après sur les modèles suivants (One S, One X) ils sont activés, mais Markus pense que ses techniques pourraient quand même être adaptées.

Le boot flow du PSP. Le hijack se produit à l'étape 4, avant toute vérification crypto.

Le plus dingue c'est que le hack en version finale ne nécessite que 3 fils soudés sur la carte mère ! Tout le reste, les dizaines de sondes à crochet, l'oscilloscope 4 voies, l'analyseur logique branché sur le bus I2C et les GPIO, c'était juste pour comprendre ce qui se passait.

Et le fait qu'il ait construit un émulateur du boot ROM avec l'aide de l'IA pour étudier le comportement du processeur, je trouve ça encore plus incroyable !

Bref, je vous laisse avec la conf en intégralité pour les plus motivés :

Et voilà comment 12 ans de "IMPOSSIBLE À PIRATER" se termine avec 3 fils soudés et 2 glitches bien placés. Pas mal !

Bravo Markus !

Open DroneLog - Vos logs de drone restent chez vous

Par : Korben
16 mars 2026 à 11:27

Si vous pilotez un drone DJI, vos logs de vol finissent probablement sur Airdata ou un service cloud du même genre. En gros ce sont des trucs qui aspirent vos trajectoires GPS, vos altitudes en mètres, vos tensions de batterie en millivolts... et qui stockent tout ça sur des serveurs quelque part dans le cloud. Ouais, bof.

Eh bien Open DroneLog , c'est exactement l'inverse à savoir un carnet de vol open source qui garde tout en local, dans une base DuckDB (une base de données embarquée ultra-légère) sur votre machine.

Avec cet outil, vous importez vos fichiers .txt DJI (tous les modèles : Mini, Mavic, Air, Phantom...), les CSV de l'app Litchi, ou même les exports Airdata, et hop, le logiciel mouline tout ça pour vous afficher vos vols sur une carte 3D interactive avec le replay de la trajectoire. Vous pouvez alors accélérer jusqu'à x16, voir la télémétrie en temps réel (altitude, vitesse, signal RC, tensions des cellules de batterie) et même visualiser les mouvements des joysticks.

Pas mal donc pour comprendre pourquoi votre Mavic a décidé de faire un plongeon kamikaze ce jour-là !

Visualisation 3D d'une trajectoire de vol dans Open DroneLog

Un truc bien pensé dans l'appli, c'est l'auto-tagging car le logiciel détecte automatiquement les vols de nuit, les passages à haute vitesse, les situations de batterie froide... et colle des étiquettes sur chaque vol sans que vous ayez à lever le petit doigt. Pour ceux qui se demandent à quoi ça sert de tenir un journal de vol, disons que le jour où l'aviation civile vous pose des questions sur vos habitudes de pilotage, avoir un historique propre de tous vos vols avec coordonnées et télémétrie, ça peut clairement vous sauver la mise (surtout si vous volez près de zones sensibles).

Côté déploiement, vous avez le choix : app desktop (Windows, macOS, Linux), image Docker pour l'auto-héberger, ou la webapp pour tester sans rien installer. Le Docker est clairement le meilleur choix parce que vous pouvez monter un dossier de logs et configurer une synchro automatique via cron. Genre, votre drone se pose, vous branchez la carte SD sur le NAS, copiez les fichiers .txt dans le dossier monté, et l'import se fait tout seul toutes les 8 heures. Ça tourne même sur un Raspberry Pi !

D'ailleurs, ça me rappelle l'époque lointaine où on construisait son propre drone dans le garage.

Les graphiques de télémétrie : altitude, vitesse, batterie, tout y passet'as anal

Le géocodage inversé (qui transforme vos coordonnées GPS en noms de lieux) se fait hors-ligne donc c'est top pour la vie privée et d'ailleurs, si le sujet vous parle, le projet OwnTracks applique la même philosophie à la géolocalisation perso.

Le logiciel gère aussi les profils multiples (pratique si vous avez plusieurs pilotes ou flottes), le suivi de la santé des batteries avec historique des cycles, la maintenance avec seuils configurables, et l'export dans à peu près tous les formats imaginables : CSV, JSON, GPX, KML. Y'a même un générateur de "FlyCards" pour partager vos stats de vol sur les réseaux en format 1080x1080 ! Et le tout est traduit en 11 langues, dont le français.

Le projet est sous licence AGPLv3, et pour l'instant c'est DJI-only (pas de Parrot ni Autel en natif). Bref, si vous cherchez un carnet de vol drone qui ne balance pas vos coordonnées GPS dans le cloud, c'est tout trouvé !

Dorso - L'app Mac qui floute votre écran quand vous faites le dos rond

Par : Korben
16 mars 2026 à 10:20

En ce moment, j'ai une sciatique qui me rend dingue ! Du coup, entre deux grimaces sur ma chaise de bureau ergonomique, je me suis retrouvé à chercher des trucs pour améliorer ma posture devant l'écran... et je suis tombé sur Dorso, une petite app macOS qui surveille votre posture en temps réel et qui floute progressivement l'écran quand vous commencez à vous avachir.

Ainsi, votre Mac vous punit si vous vous tenez mal ! Vous lancez l'app, vous vous asseyez bien droit devant votre clavier, vous cliquez sur le bouton de calibration (aïe, mes vertèbres), et ensuite Dorso surveille votre position via la webcam de votre MacBook ou iMac grâce au framework Vision d'Apple.

Dès que votre tête commence à piquer du nez, l'écran se floute. Plus vous "slouchez", plus c'est flou. Du coup, soit vous vous redressez, soit vous bossez dans le brouillard comme un moine copiste myope. En tout cas, c'est redoutablement efficace pour corriger sa posture.

Sauf que la webcam, c'est pas le seul mode de détection. Si vous avez des AirPods Pro, Max ou 3e génération, Dorso peut utiliser les capteurs de mouvement de vos écouteurs pour détecter l'inclinaison de votre tête. Pas besoin de caméra, pas besoin de lumière... vos AirPods deviennent votre "coach posture" et quand vous les retirez des oreilles, l'app se met en pause toute seule. Par contre, attention, le mode AirPods nécessite macOS 14 minimum et l'autorisation "Motion & Fitness Activity" dans les réglages Confidentialité.

Côté vie privée, tout se passe en local sur votre machine. Aucune image n'est enregistrée, aucune donnée ne quitte votre Mac. Le flux vidéo de la webcam est traité en temps réel puis immédiatement supprimé et pour le flou, l'app utilise une API privée de CoreGraphics pour agir au niveau système, ce qui permet de flouter tous vos écrans d'un coup si vous avez un setup multi-moniteurs.

L'installation, c'est un brew install --cask dorso et hop, c'est réglé. Au premier lancement, il faudra autoriser l'accès caméra (mode webcam) ou Motion & Fitness (mode AirPods) dans les Réglages Système.

L'app se loge ensuite dans la barre de menu à côté de l'icône Bluetooth et vous pouvez régler la sensibilité sur 5 niveaux via un petit panneau de préférences. Y'a même une "dead zone" configurable pour que ça ne se déclenche pas au moindre mouvement de tête (genre quand vous regardez votre téléphone 2 secondes). Sans cette dead zone, la moindre gorgée de café vous vaut un écran tout flou, donc c'est indispensable !!

L'app s'appelait "Posturr" à l'origine mais une app iOS portait déjà ce nom et comme c'est complétement FDP de voler le nom des autres, il a trouvé un autre nom en lançant 30 agents Claude en parallèle pendant une heure... mais pour rien puisque c'est finalement lui qui a trouvé "Dorso" (Claude avait suggéré "Posturn", bof quoi). Comme quoi, même avec 30 IA qui bossent pour vous, le cerveau humain a encore son mot à dire !!

Perso, vu l'état de mon dos en ce moment, mon bureau debout ne suffit plus. Si vous aussi vous passez vos journées courbé devant votre écran comme Gollum devant son précieux, Dorso pourrait bien vous éviter de finir chez le kiné à 60 balles la séance. L'app tourne sous macOS 13+ (Intel et Apple Silicon), c'est sous licence MIT, et c'est gratuit !

Bref, y'a plus qu'à se redresser. Enfin... à essayer.

Eonvelope - Vos emails méritent aussi un backup local

Par : Korben
16 mars 2026 à 09:26

On archive nos photos avec Immich , nos documents avec Readur , nos mots de passe avec Vaultwarden ... mais nos emails ? Ah bah non, ça on les laisse chez Google en croisant les doigts pour que tout se passe bien jusqu'à la fin de nos jours. C'est quand même un peu dinguo quand on y réfléchit sérieusement.

Et pourtant, y'a des années de conversations là-dedans ! Des factures en pièce jointe, des confirmations de commande, des échanges pro avec votre comptable, des mots de passe envoyés en clair (oui, hélas, ça arrive encore). Du coup, quand un hébergeur mail décide de changer ses conditions générales ou de fermer boutique, tout part à la poubelle si vous n'y faites pas attention.

Eonvelope , c'est un outil open source en Python qui permet de sauvegarder automatiquement tout ça sur votre propre serveur et qui se lance avec un simple docker compose up.

Le truc, c'est que des outils comme Gmvault font déjà le boulot via cron, mais uniquement pour Gmail et en ligne de commande alors qu'Eonvelope, lui, un peu à la manière de Bichon , tourne en arrière-plan avec une interface web et archive en continu tous vos comptes. Franchement, c'est pas le même délire. Vous branchez vos comptes IMAP, POP3, Exchange, et même JMAP (le protocole poussé par Fastmail qui commence tout juste à se démocratiser), vous réglez la fréquence, et hop, vos mails atterrissent dans votre instance sans que vous ayez à y penser.

Attention par contre, c'est de l'archivage, pas un client mail... vous ne répondrez pas à vos mails depuis l'interface.

Côté installation, c'est du Docker avec seulement 2 conteneurs, le serveur web et la base de données. En fait, comptez 5 minutes chrono si vous avez déjà un serveur dédié ou un VPS, le fichier docker-compose.yml est fourni et les variables d'environnement sont bien documentées sur ReadTheDocs . Y'a même un mode basse consommation pour ceux qui font tourner ça sur un Raspberry Pi 4 avec 2 Go de RAM ou un petit Synology ! SSL et HTTPS sont inclus par défaut, et l'authentification multifacteur aussi.

Mais le vrai point fort, c'est les intégrations avec le reste de l'écosystème self-hosted. Concrètement, vous pouvez envoyer vos pièces jointes PDF vers Paperless-ngx pour l'OCR, les photos vers Immich, et exporter vos contacts vers votre carnet d'adresses Nextcloud. Y'a aussi un endpoint Prometheus pour brancher Grafana et suivre vos stats d'archivage. En gros, si vous avez déjà un homelab qui tourne, ça vient se brancher dessus comme une pièce de Lego.

L'interface web est en PWA (donc utilisable sur votre téléphone), avec un moteur de recherche, du filtrage par date et par expéditeur, des fils de conversation reconstitués et de l'import/export en EML et MBOX. Franchement, c'est propre. Y'a aussi une API REST pour ceux qui préfèrent scripter par-dessus plutôt que de passer par l'interface.

Le projet est sous licence AGPLv3 et son dev déclare l'utiliser lui-même au quotidien, ce qui est souvent bon signe. Notez que la migration depuis un backup existant n'est pas forcément fluide mais qui ne tente rien n'a rien !

Bref, ça comble un vrai manque dans la stack de nos machins auto-hébergés mais je trouve que l'approche est clairement plus intégrée que ce qui existe (genre MailPiler ou un combo fetchmail+dovecot). À surveiller donc !

Source

notebooklm-py - L'API Python que Google refuse de sortir

Par : Korben
16 mars 2026 à 08:46

Google n'a jamais sorti d'API publique pour NotebookLM , son outil qui transforme vos documents en podcasts, quiz et autres résumés grâce à l'IA. Pas de SDK, pas de CLI, y'a rien du tout alors on est tous triiiiiste. A peine juste une interface web avec ses boutons moches et ses menus déroulants, mais impossible à scripter ou à intégrer dans le moindre pipeline bash.

Mais un dev bien inspiré a reverse-engineeré les endpoints REST internes et a pondu notebooklm-py, une lib Python de 168 Ko qui fait tout ce que le web UI refuse de faire. Franchement, c'était pas trop tôt ! Vous en avez rêvé, lui l'a fait !

Un pip install notebooklm-py et voilà, vous avez accès à toute la machinerie Notebook LM à savoir : créer des notebooks, injecter des sources (URLs, PDF, vidéos YouTube, fichiers Google Drive, documents Word, images PNG), poser des questions à vos docs, et surtout générer du contenu... podcasts audio en MP3, vidéos explicatives en MP4, quiz, flashcards, slides en PPTX, infographies en PNG, mind maps en JSON.

Carrément dingue ! Et tout ça pilotable depuis votre terminal zsh ou en script Python async.

En fait, le vrai bonus c'est que la lib déverrouille des fonctionnalités que l'interface web ne propose même pas comme télécharger tous vos podcasts d'un coup en batch au lieu de cliquer un par un sur chaque fichier MP3, exporter vos 50 flashcards en JSON structuré au lieu de juste les afficher à l'écran ou encore récupérer vos slides en PPTX éditable plutôt que le PDF figé.

Ce genre de features, on avait fini par accepter que Google s'en fiche mais pourtant, extraire l'arbre complet d'une mind map en JSON pour la balancer dans D3.js ou Mermaid... clairement c'est un truc que Google aurait dû proposer depuis le début !

Côté CLI, c'est propre. Vous vous authentifiez une fois via notebooklm login (ça ouvre Chromium via Playwright pour choper les cookies de session Google), puis vous enchaînez les commandes.

notebooklm create "Ma Recherche" pour créer un notebook vide,

notebooklm source add ./mon-rapport.pdf pour balancer vos fichiers,

notebooklm generate audio "rends ça punchy" --wait pour lancer la génération de podcast,

et notebooklm download audio ./podcast.mp3 pour récupérer le MP3 sur votre disque.

On peut même éditer ses slides individuellement avec des prompts en langage naturel, du genre "ajoute un graphique sur cette slide-là" !

Pour ceux qui veulent brancher ça dans leurs pipelines, y'a comme je le disais l'API Python async complète. Vous pouvez donc monter un petit cron qui ingère vos derniers bookmarks le vendredi soir, et génèrer un résumé audio de 5 minutes, puis balancer le MP3 directement sur votre NAS Synology.

D'ailleurs, si vous avez déjà joué avec des outils pour booster votre productivité avec l'IA , c'est un peu dans la même veine... sauf qu'ici on tape directement dans les tripes des serveurs Google, sans intermédiaire. Ça tourne avec du Python, et y'a même un mode "agent" (un skill en fait) pour brancher ça dans Claude Code ou Codex. Pas mal, hein ?

Le fait que ça gère aussi la recherche web et Drive avec import automatique des résultats dans vos notebooks, c'est top, un peu comme Oboe qui génère des cours complets via IA , mais en version terminal. Et surtout, pas d'abonnement mensuel à payer, c'est votre propre compte Google qui fait tourner la machine.

Bien sûr, ça reste du reverse-engineering d'APIs non-documentées de Google, ce qui fait que les endpoints REST peuvent changer du jour au lendemain et tout péter. Le projet le dit clairement, c'est plutôt taillé pour du prototypage, de la recherche ou des projets perso et SURTOUT PAS pour de la prod sur un serveur Nginx en front avec 10 000 utilisateurs prêts à ruer dans les brancards en cas de panne.

Et puis faut quand même s'authentifier via un vrai compte Google avec Playwright et Chromium, donc pas question de faire tourner ça sur un serveur headless sans un minimum de config.

Bref, tant que Google ne coupe pas ses endpoints, c'est open bar.

Profitez-en !

OpenRAG - Le RAG clé en main qui vous évite 3 jours de galère

Par : Korben
16 mars 2026 à 08:19

Monter un pipeline RAG, c'est un peu le parcours du combattant... entre le choix de la base vectorielle, le modèle d'embedding, l'orchestrateur, le parser de documents, vous en avez pour des heures de config avant de pouvoir poser la moindre question à vos PDF.

Mais c'était sans compter sur OpenRAG qui emballe tout ça dans un seul paquet prêt à l'emploi !

En gros, c'est un package open source (Apache 2.0) qui vous colle un orchestrateur visuel, un moteur de recherche vectorielle et un parser de documents hyper costaud, le tout déjà branché ensemble. Bon, dit comme ça, on dirait juste un assemblage de trucs existants... sauf que l'architecture est propre (FastAPI derrière, Next.js devant) et que tout est câblé d'entrée.

L'installation tient en une commande : uv run openrag (il vous faudra Python 3.10+ et uv, le gestionnaire de paquets rapide en Rust) et ensuite vous aurez un serveur local avec une interface de chat prête à bouffer vos documents. Vous uploadez vos fichiers (PDF, Word, HTML, Markdown...), le système les découpe, les indexe, et vous pouvez commencer à poser des questions dessus. Pas besoin de choisir un modèle d'embedding, de configurer une base Chroma ou Qdrant, ni de câbler un pipeline LangChain à la main. C'est plutôt confortable comme outil !

Et c'est pas juste un chatbot documentaire puisque la plateforme déploie une couche agentique qui va bien au-delà de la simple recherche de similarité. En fait, quand vous posez une question, le système ne se contente pas de chercher le passage le plus proche dans vos documents... il reformule, il croise plusieurs sources, il re-classe les résultats par pertinence. Et tout ça se configure visuellement dans Langflow, en mode drag-and-drop, sans écrire une ligne de code.

L'interface d'OpenRAG

D'ailleurs, pour ceux qui veulent aller plus loin, y'a des SDK Python et JavaScript pour intégrer ça dans vos propres apps. Un petit pip install openrag-sdk et vous pouvez interroger votre base documentaire depuis n'importe quel script. Et l'autre truc super chouettos, c'est le serveur MCP intégré : un pip install openrag-mcp et vous connectez directement votre base de connaissances à Claude Desktop ou Cursor. J'utilisais pour ma part LEANN jusqu'à présent mais je pense que je vais basculer rapidement sur OpenRAG. Et grâce à ça votre IDE / Claude Code / Ce que vous voulez, a accès à toute votre documentation technique sans quitter l'éditeur.

Côté technique, le projet est porté par l'équipe de Langflow (DataStax), ce qui explique la qualité de l'intégration. Et le déploiement se fait aussi en Docker, Podman ou Kubernetes pour ceux qui veulent du plus fiable.

Après comme c'est une solution tout-en-un, ça embarque pas mal de dépendances. OpenSearch à lui seul est connu pour être gourmand en ressources et si vous avez déjà votre propre stack RAG bien rodée avec une base vectorielle légère comme LEANN , c'est peut-être overkill. En fait, OpenRAG s'adresse plutôt à ceux qui partent de zéro ou qui veulent un truc clé en main pour une équipe, parce que tout est déjà branché.

Prêt à chatter avec vos docs ?

Le vrai intérêt par rapport à un assistant comme Khoj , c'est le côté plateforme extensible. Langflow vous permet de construire des workflows RAG personnalisés visuellement, d'ajouter des étapes de filtrage, de brancher plusieurs LLM en parallèle, ou de créer des agents spécialisés par type de document. C'est donc clairement plus "usine" que "bricolage"... mais parfois c'est ce qu'il faut, surtout si vous bossez en équipe et que le bricolage perso finit toujours par casser au bout de 3 mois.

Si vous en avez marre de bricoler vos pipelines de recherche augmentée à la main, allez jeter un œil !

psmux - Le vrai tmux natif pour Windows (sans WSL)

Par : Korben
16 mars 2026 à 08:08

Splitter son terminal en plusieurs panneaux, gérer des sessions persistantes, le tout avec les mêmes raccourcis que tmux... mais sous un bon gros Windows des familles, nativement, en Rust et sans avoir besoin de se galérer avec WSL !

C'est exactement ce que fait psmux , un multiplexeur de terminal conçu pour PowerShell et cmd.exe qui utilise directement l'API ConPTY de Windows 10/11. Du coup, pas de couche d'émulation Unix, pas de Cygwin, pas de MSYS2... ça tourne direct sur votre bécane.

Pour ceux qui débarquent, un multiplexeur de terminal ça permet de découper votre console en plusieurs zones (des "panes" que j’appellerai "panneau" parce que merde c'est + français), de jongler entre plusieurs sessions, et surtout de retrouver votre boulot exactement là où vous l'avez laissé même après une déconnexion. Sous Linux, tout le monde utilise tmux pour ça mais sous Windows, jusqu'ici c'était soit WSL (installer tout un sous-système Linux juste pour splitter un terminal, c'est un peu overkill quand même !), soit des splits basiques via Windows Terminal qui ne gèraient ni les sessions persistantes ni le détachement. Snif...

psmux en action sous PowerShell

L'installation est rapide. Un petit winget install psmux et hop, c'est réglé. Ça passe aussi par Cargo, Scoop ou Chocolatey pour les puristes. Ensuite, vous tapez psmux dans PowerShell 7 et vous retrouvez vos marques : Ctrl+B pour le prefix, les mêmes commandes split-window, new-session, attach... L'outil implémente 76 commandes tmux avec plus de 126 variables de formatage. Et y'a même un mode copie Vim avec 53 raccourcis clavier.

Bref, si vous avez une mémoire musculaire ultra développée pour tmux, vous êtes chez vous !

Et le truc cool, c'est que psmux lit directement vos fichiers .tmux.conf existants. Du coup, vos raccourcis custom et pas mal de thèmes (Catppuccin, Dracula, Nord...) fonctionneront directement, même si les configs tmux les plus complexes avec des scripts bash ou TPM peuvent nécessiter des ajustements. Et y'a aussi Tmux Plugin Panel pour vous accompagner dans l'ajout de plugins et de thèmes.

Alors je vous connais les raloux sous OuinOuin, vous allez me dire "Windows Terminal fait déjà des splits avec Alt+Shift+D"... sauf que non, c'est pas pareil. Windows Terminal découpe votre fenêtre visuellement mais ne gère ni les sessions persistantes, ni le scripting, ni le détachement. Avec psmux, vous lancez une session le lundi, vous fermez votre terminal, vous revenez le mardi et tout est encore là : vos panneaux, vos processus, votre historique. C'est ça la vraie différence avec un simple split visuel.

D'ailleurs, si vous utilisez Claude Code ou d'autres agents IA en ligne de commande , psmux intègre un support pour les agent teams qui permet à chaque agent de spawner dans son propre panneau automatiquement.

Côté support souris, c'est complet : clic pour sélectionner un panneau, drag pour redimensionner les bordures, molette pour remonter dans l'historique du buffer. Tout est activé par défaut, pas besoin de rajouter set -g mouse on comme sous tmux. L'outil tourne sous Windows 10 et 11, et le projet est sous licence MIT.

Après c'est encore jeune et y'a quelques galères connues notamment le support des caractères CJK et UTF-8 multi-octets qui peut se planter comme une merde sur des textes longs. Et split-window -c ne préserve pas toujours le répertoire courant (oubliez pas de vérifier votre pwd après un split). Par contre, le dev répond en quelques heures, et des PR externes sont mergées régulièrement... donc c'est bon signe !

Bref, c'est propre, c'est natif, et ça lit vos .tmux.conf ! Que demande le peuple barbu emprisonné sous Windows, finalement ? Eh bien pas grand chose de plus pour être heureux.

IPED - Fouiller un disque dur comme la police

Par : Korben
16 mars 2026 à 06:55

Si vous vous êtes déjà demandé comment les flics font pour fouiller un disque dur saisi chez un suspect, la réponse tient en quatre lettres : IPED . C'est l'outil que la police fédérale brésilienne a développé en interne depuis 2012 pour analyser les preuves numériques... et qui est devenu open source en 2019.

N'importe qui peut aujourd'hui donc télécharger le même logiciel que celui utilisé par les enquêteurs pour décortiquer des scènes de crime numériques. J'vous parle d'un truc qui avale 400 Go de données à l'heure, ce qui à vrai dire c'est plutôt le débit d'un SSD NVMe que d'un logiciel d'analyse. Et ça gère des multicases de 135 millions d'éléments. Ouais, rien que le chiffre donne le vertige !

En gros, le principe c'est de balancer une image disque (DD brut, conteneur E01, machine virtuelle VMDK, VHD Hyper-V, AFF... la totale) et IPED va indexer, analyser, hasher en MD5 et SHA-256, et trier tout ce qu'il trouve. Le logiciel supporte une quarantaine de formats pour le carving, fait de l'OCR via Tesseract 5, parse l'historique des navigateurs, et peut même transcrire de l'audio grâce à Azure ou Google Cloud. Vous avez même un moteur de recherche plain-text sur l'intégralité d'un disque !

L'interface d'analyse d'IPED avec sa recherche plein texte et l'aperçu des fichiers

Et surtout, le truc qui tue c'est la reconnaissance faciale intégrée... car elle tourne sans GPU !! La v4.3 sortie fin 2025 pousse même le délire encore plus loin avec l'estimation d'âge sur les visages détectés et le support multi-visages par image. Pour les forces de l'ordre, y'a aussi PhotoDNA (étendu aux vidéos dans cette version) et une tâche de classification CSAM... bref du lourd pour la lutte contre la pédocriminalité !

La reconnaissance faciale intégrée trie automatiquement les visages détectés

Mais attention, c'est pas juste un outil de flics. Si vous bossez en cybersécurité, en réponse à incident, ou si vous êtes juste curieux de comprendre ce qui traîne sur un vieux disque dur récupéré , IPED fera très bien le taf. Le logiciel propose plusieurs profils de traitement : forensic (analyse complète), triage (scan rapide), fastmode (indexation sans parsing lourd), et même un mode "blind" pour les cas où vous ne savez pas trop ce que vous cherchez.

Vous faites pointer l'outil sur une image disque, vous choisissez votre profil, et en quelques minutes il vous sort une interface Swing (oui, c'est pas forcément la plus belle du monde, oubliez pas que c'est du Java) avec tous les fichiers indexés, une timeline d'activité, les historiques de navigation, les conversations de messagerie et même une galerie de toutes les images triées par visage. Le tout sans avoir à monter l'image manuellement.

La timeline unifiée permet de retracer toute l'activité chronologique du disque

Faudra donc un JDK 11 avec JavaFX inclus (genre Liberica ou Azul, parce que le JDK standard ne bundle plus JavaFX... snif) puis faites un petit git clone et un mvn clean install pour déployer tout ça.

Ça fonctionne sous Windows et Linux, mais pas de support macOS natif par contre. Et prévoyez au moins 16 Go de RAM, vu les volumes que ça traite. Le projet est solide mais je tiens quand même à souligner que le dev principal porte à lui seul plus de la moitié des commits... c'est courant sur ce type de projet mais c'est vraiment dommage car c'est d'utilité publique !

La v4.3 a aussi ajouté la validation de phrases mnémoniques crypto (pour détecter des seed phrases sur un disque, genre le même principe que quand le FBI demande les clés BitLocker sauf que là c'est vous qui cherchez), le support BitTorrent via Transmission, le carving 7zip, HEIC, WebM et MKV, et un parseur NSKeyedArchiver pour les dumps iOS. Et si vous devez analyser le backup d'un iPhone, y'a carrément moyen.

Le moteur de carving récupère et affiche les fichiers avec leurs miniatures

Après la doc est assez éparse... le wiki GitHub ne couvre pas toujours les cas limites et faut parfois fouiller dans les issues pour trouver la bonne config. Mais bon, franchement, c'est le jeu de l'open source. Quand c'est "gratuit" c'est ton temps le "produit" ^^.

Bref, si vous avez un vieux disque qui traîne dans un tiroir, c'est l'occasion de jouer les enquêteurs du dimanche !

Basalt - Vos coffres Obsidian direct dans le terminal

Par : Korben
16 mars 2026 à 06:41

Un TUI en Rust pour gérer vos coffres Obsidian sans quitter le terminal c'est ce que propose Basalt qui détecte automatiquement vos vaults, affiche le markdown avec un rendu visuel, et depuis la v0.12.3, y'a même un mode vim intégré. Le tout sans avoir besoin que la vraie app tourne en arrière-plan !

Et c'est là toute la différence avec le CLI officiel d'Obsidian dont je vous parlais il y a quelques jours. Car le CLI a besoin de l'app qui tourne via un socket local. Basalt, lui, lit en fait vos fichiers .md directement sur le disque. Du coup, ça marche en SSH, sur un serveur headless, ou sur n'importe quelle machine où vous avez juste vos fichiers markdown. C'est carrément pratique !

L'installation se fait en une commande :

cargo install basalt-tui

Au premier lancement, l'outil va alors chercher automatiquement vos coffres en lisant le fichier de config (sous macOS c'est dans ~/Library/Application Support/obsidian/obsidian.json). Comme ça, hop hop, vos vaults apparaissent, vous naviguez au clavier et vous passez d'un coffre à l'autre avec Ctrl+G. Vous pouvez aussi passer par aqua ou télécharger un binaire pré-compilé sur la page releases si vous préférez.

Basalt en action, navigation dans un vault Obsidian

Vous ouvrez alors une note et le markdown s'affiche avec un rendu visuel : les # disparaissent au profit d'indicateurs plus colorés, les blocs de code ont un fond distinct, les callouts > [!NOTE] sont reconnus, et les wiki-links [[Ma Note]] sont également parsés. D'ailleurs, quand vous renommez une note avec r, tous les wiki-links qui pointent vers elle sont mis à jour automatiquement dans tout le vault. Pas de search-replace à la main, ça fait toujours du bien !

Après faut pas s'attendre à un clone complet non plus. Y'a pas de rendu pour le gras, l'italique ou les tableaux. Pas de recherche dans les notes. Pas de graph view. L'éditeur intégré est expérimental (pas d'undo, pas de copier-coller, pas de sélection). C'est assumé de ce que j'ai pu voir, car le projet se présente comme un compagnon minimaliste.

Et c'est justement pour ça que le mode vim est le bienvenu, à vrai dire. Vous pouvez activer ça dans votre config TOML comme ceci :

vim_mode = true

Le mode vim en action dans Basalt

Et là vous avez hjkl pour naviguer, gg / G pour sauter en haut et en bas, w / b pour les mots, i pour l'insertion. C'est pas forcément aussi complet qu'un vrai vim, mais franchement, pour parcourir vos notes c'est agréable.

Le vrai kiff, c'est la config TOML qui permet de lancer un éditeur externe sur la note en cours :

[global]
key_bindings = [
 { key = "ctrl+alt+e", command = "exec:vi %note_path" },
]

Du coup, le workflow devient : Basalt pour naviguer et lire et un raccourci clavier pour ouvrir dans vim (ou n'importe quel éditeur) quand vous voulez éditer sérieusement. C'est le genre de combo qui fonctionne bien quand vous bossez en full terminal .

Le projet est sous licence MIT, écrit en Rust avec ratatui, et tourne sur Linux, macOS et Windows. Tiens, la v0.12.3 ajoute aussi la création de notes et dossiers directement depuis l'explorateur avec n et N... Ça avance plutôt vite comme projet !!

Voilà, si vos notes vivent dans des coffres et que le terminal c'est votre habitat naturel, Basalt fera bien le boulot.

Scanopy - Quand votre réseau se documente tout seul

Par : Korben
16 mars 2026 à 06:34

Faut le reconnaitre, la doc et qui plus est, la doc réseau, c'est un peu le parent pauvre du homelab. Tout le monde sait qu'il faudrait la tenir à jour sur un petit wiki tout mignon mais personne le fait parce qu'on n'est pas cinglé et qu'on aime trop la vie pour ça. Heureusement, pour nous aider, y'a maintenant Scanopy qui est un outil open source qui scanne automatiquement votre réseau pour générer une topologie interactive incroyable qui se met à jour toute seule !

Pour l'installer, deux lignes suffisent :

curl -O https://raw.githubusercontent.com/scanopy/scanopy/refs/heads/main/docker-compose.yml
docker compose up -d

Et hop, l'interface est dispo sur le port 60072 de votre serveur ! Pas de config.

Concrètement, le truc balance du scan ARP pour trouver tous les hôtes (même ceux qui n'ont aucun port ouvert), puis il enchaîne avec un scan des 65 000 ports sur chaque machine qui répond. Comme ça, en quelques minutes sur un /24 classique, vous avez la cartographie complète de votre sous-réseau avec les services qui tournent dessus. Et quand je dis services, c'est pas juste "port 80 ouvert" puisque cet outil de zinzin reconnaît plus de 200 applis self-hosted comme Home Assistant, Plex, Jellyfin, PostgreSQL ou nginx. Par contre, attention, un scan de 65 000 ports sur tout un sous-réseau, ça peut chatouiller un peu votre IDS (système de détection d'intrusion) si vous en avez un.

D'ailleurs, si vous avez des équipements réseau un peu sérieux (switches manageables, routeurs), Scanopy sait aussi causer SNMP v2c et récupérer les données LLDP/CDP pour reconstituer les liens physiques entre vos appareils.

Et pour ceux qui font tourner pas mal de containers, il se branche directement sur le socket Docker pour détecter tout ce qui tourne là-dedans. En fait, c'est surtout cette combo "scan réseau + détection Docker" qui le rend utile, parce que la plupart des outils du genre font l'un ou l'autre mais jamais les deux.

L'interface de visualisation est plutôt classe comme vous pouvez le voir. Vous avez une vue topologique interactive où chaque hôte est cliquable, avec un système de branches et de versioning pour suivre l'évolution de votre réseau dans le temps (un peu comme Git, mais pour votre infra). Et y'a même de l'export en CSV, PNG et SVG. Et surtout la possibilité de partager des liens publics vers vos schémas... C'est franchement pratique quand vous bossez en équipe ou que vous devez montrer à votre boss pourquoi le NAS de votre PME rame sa mère.

Côté tambouille technique, c'est du Rust pour le moteur de scan et du Svelte pour l'interface, le tout sous licence AGPL-3.0. En gros, vous avez un serveur qui héberge l'UI et stocke les données, et des daemons qui font le boulot de scan à proprement parler. Tout est containerisé, comme ça pas besoin d'installer un agent sur vos machines côté réseau... c'est complètement agentless quoi. D'ailleurs, si vous aviez l'habitude de balancer des scans nmap à la main pour savoir ce qui traîne sur votre réseau, Scanopy automatise tout ça et rajoute la couche visu par-dessus.

Le projet est hébergé sur GitHub et y'a aussi un déploiement possible via Proxmox ou Unraid pour ceux qui préfèrent. Seul prérequis, il vous faudra Docker et Docker Compose sur votre machine. Et n'oubliez pas que le projet est encore jeune, du coup ça bouge pas mal d'une version à l'autre. Et ça casse parfois. Mais c'est plutôt bon signe parce que ça veut dire que ça progresse !

Bref, si vous en avez marre de dessiner vos schémas réseau à la main, c'est par là !

Source

Jurassic Park dans votre cluster k8s

Par : Korben
13 mars 2026 à 08:04

Le navigateur 3D de Jurassic Park, vous savez, celui avec lequel Lex hackait le parc en 1993 pendant que les vélociraptors grattaient à la porte... bah quelqu'un vient de le recréer, mais pour Kubernetes.

Le projet s'appelle k8s-unix-system et c'est exactement ce que vous imaginez. Vos namespaces deviennent des îles flottantes roses, vos pods des blocs 3D colorés et vous naviguez dans le tout en vue FPS avec WASD + souris. Genre comme Quake, mais pour surveiller vos pods.

Les pods Kubernetes version Jurassic Park ( Source )

Un pod vert c'est un pod qui tourne, jaune c'est en attente, et rouge c'est erreur ou CrashLoopBackOff, bref le truc que personne n'aime voir. Le truc sympa, c'est que la hauteur des blocs augmente avec le nombre de restarts. Du coup, le pod qui galère depuis ce matin, c'est celui qui ressemble à une tour bien haute. Par contre, attention, les pods en erreur tremblent carrément (pas nerveux hein, c'est voulu) et les pods running bougent doucement... c'est plutôt zen je trouve.

Les nodes, eux, ne sont pas mélangés avec les namespaces. Ils ont leur propre île bleu foncé à part, avec des cubes cyan pour ceux qui sont Ready et rouge pour les NotReady. Survolez un node et hop, vous avez son nom, son statut, sa capacité CPU et sa RAM affichées dans un tooltip. Les services, eux, sont visualisés sous forme d'arcs cyan semi-transparents qui connectent les pods entre eux en topologie étoile. Tout fonctionne, suffit de demander, on l'a ! (reeeef ^^)

Les namespaces et nodes, chacun sur leur île ( Source )

Pour lancer le truc, un Docker one-liner suffit (attention quand même, ça monte votre kubeconfig en lecture seule dans le conteneur, donc à réserver au cluster de dev) :

docker run --rm -it -v ~/.kube/config:/root/.kube/config:ro -p 8080:8080 ghcr.io/jlandersen/k8s-unix-system:main

Vous ouvrez localhost:8080 dans Chrome et vous volez à travers votre cluster avec la barre espace pour monter, Ctrl pour descendre, Shift pour accélérer. Tout est en temps réel grâce à la Watch API K8s, du coup si un pod tombe pendant que vous survolez son île, vous le voyez passer au rouge direct. Finalement, c'est kubectl get pods mais en 100 fois plus fun.

C'est codé en Go côté serveur et Three.js pour la 3D dans le navigateur. Le dev derrière bosse chez LEGO (ça ne s'invente pas). Et d'ailleurs si vous êtes du genre à recycler vos smartphones en cluster , ça ferait un combo d'enfer pour frimer devant les collègues.

Bref, vous allez pouvoir enfin lâcher un « Je connais ce système... il fonctionne sous Unix ! » sans mentir.

❌
❌