Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierKorben
  • ✇Korben
  • L'histoire géniale du programmeur qui a tout effacé en 1981 à cause d'une astérisque
    Sur The Register, un témoignage improbable d'un lecteur qui raconte la fois où il a effacé toutes les données et tout le code de son entreprise. Voilà qui date pas mal, puisque c,'était en 1981, il avait 21 ans, et il développait tout seul un script de nettoyage pour un mainframe IBM. Le genre de mission qu'on ne devrait pas trop confier à un dev junior sans relecture. C'est précisément ce qui a été fait, et la suite est exactement ce que vous pouvez imaginer. Le système gérait des machines virt

L'histoire géniale du programmeur qui a tout effacé en 1981 à cause d'une astérisque

18 mai 2026 à 10:46

Sur The Register, un témoignage improbable d'un lecteur qui raconte la fois où il a effacé toutes les données et tout le code de son entreprise. Voilà qui date pas mal, puisque c,'était en 1981, il avait 21 ans, et il développait tout seul un script de nettoyage pour un mainframe IBM. Le genre de mission qu'on ne devrait pas trop confier à un dev junior sans relecture. C'est précisément ce qui a été fait, et la suite est exactement ce que vous pouvez imaginer.

Le système gérait des machines virtuelles pour les utilisateurs, chacune avec son disque attaché et une lettre attribuée de A à Z. À la fin de la journée, le script de Miller, notre héros, faisait trois choses simples : il rattachait tous les disques, les sauvegardait sur un disque temporaire, puis effaçait les originaux. Le problème, c'est que le disque temporaire recevait une lettre dynamique, pas prédictible à l'avance. Donc Miller avait écrit du code pour récupérer cette lettre au moment où elle était attribuée.

Sauf que voilà. Un jour, l'entreprise ajoute un nouveau compte utilisateur. Et là, les 26 lettres de l'alphabet sont toutes occupées. Le système ne peut plus attribuer de lettre au disque temporaire. 

La fonction censée renvoyer la lettre ne renvoie pas une erreur, mais une astérisque. Sauf que dans la plupart des langages de scripting shell, l'astérisque est un caractère joker qui veut dire "tout ce que tu trouves". Quand la commande de suppression s'exécute avec un astérisque à la place d'une lettre précise, elle ne supprime pas un disque. Elle supprime tout. Chaque fichier, toutes les données, tout le code de l'entreprise.

Une journée complète a été nécessaire pour restaurer ce qui pouvait l'être. Une vingtaine de collègues sont restés à se tourner les pouces pendant la restauration. Miller, lui, a appris ce jour-là pourquoi le contrôle de code par un pair existe. Plus de quarante ans plus tard, il dit que la leçon ne l'a jamais quitté.

L'histoire date de 1981, mais elle reste actuelle à un détail près. Aujourd'hui, on a les revues de code, les sauvegardes incrémentales, les snapshots, les outils de récupération, et on confie quand même des scripts shell critiques à des assistants IA qui n'ont pas toujours conscience de ces pièges . L'astérisque parasite n'a pas disparu, elle a juste changé de support. Méfiance donc !

Source : The Register

  • ✇Korben
  • TUIStudio - Pour désigner vos applications terminal
    Vous avez déjà essayé de dessiner une TUI (Interface utilisateur pour le Terminal) à la main dans votre IDE ? Genre, calculer les paddings d'une Box ANSI à la mano et compter les caractères Unicode pour aligner trois colonnes ? Pffff quelle galère !! Hé bien cette mauvaise expérience, Javier Alonso Gómez, Staff Design Technologist chez Docker, vient de la transformer en simple drag-and-drop avec son outil TUIStudio . En gros, c'est comme Figma mais pour vos applis terminal. Vous lancez l'éditeur

TUIStudio - Pour désigner vos applications terminal

Par : Korben ✨
15 mai 2026 à 09:35

Vous avez déjà essayé de dessiner une TUI (Interface utilisateur pour le Terminal) à la main dans votre IDE ?

Genre, calculer les paddings d'une Box ANSI à la mano et compter les caractères Unicode pour aligner trois colonnes ? Pffff quelle galère !! Hé bien cette mauvaise expérience, Javier Alonso Gómez, Staff Design Technologist chez Docker, vient de la transformer en simple drag-and-drop avec son outil TUIStudio .

En gros, c'est comme Figma mais pour vos applis terminal.

Vous lancez l'éditeur, vous balancez des composants sur un canvas, et un aperçu ANSI temps réel vous montre ce que ça donnera dans un vrai terminal. Il y a 21 composants prêts à l'emploi (Box, Button, TextInput, Table, Tree, Modal, Tabs, Spinner...), avec un moteur de layout qui supporte Absolute, Flexbox et Grid.

C'est du CSS pour le terminal si vous préférez et le truc cool, c'est que ça reste fidèle au rendu final, donc fini les tableaux qui débordent sans raison !

J'suis pas encore super doué !

Côté thèmes, vous avez également le droit à 8 palettes intégrées (Dracula, Nord, Solarized, Monokai, Gruvbox, Tokyo Night, Nightfox et Sonokai), et le canvas se met à jour live quand vous changez. Sympa, hein !

Niveau export, TUIStudio cible les frameworks Ink (TypeScript), BubbleTea (Go), Blessed (JavaScript), Textual (Python), OpenTUI (TypeScript) et Tview (Go) mais d'après ce que j'ai lu sur le site officiel, la fonction d'export vers tout ça n'est pas encore opérationnelle. Mais ça m'étonne car lors de mes tests, j'ai quand même pu voir que ça fonctionnait... Donc j'sais pas, peut-être que le site web n'a pas été mis à jour et que l'export est bien opérationnel ?

L'export

Ça tourne sur macOS Apple Silicon, Windows et Linux (.deb) et le code est sous licence MIT sur le repo GitHub .

Amusez-vous bien !

  • ✇Korben
  • term.everything - Faites tourner Firefox dans votre terminal
    Et si je vous disais qu'on pouvait faire tourner Firefox dans un terminal ? Et pas un navigateur en mode texte, hein. Non, le véritable Firefox, avec ses onglets, les images, la totale... Hé oui c'est possible et que ça fonctionne via SSH, donc depuis un serveur distant. Bienvenue dans le futur (ou le passé, j'sais plus trop) ! Term.everything c'est un compositeur Wayland construit from scratch en Go qui, au lieu de balancer l'image sur votre écran, la convertit en caractères ANSI et l'affiche

term.everything - Faites tourner Firefox dans votre terminal

Par : Korben
1 avril 2026 à 10:14

Et si je vous disais qu'on pouvait faire tourner Firefox dans un terminal ? Et pas un navigateur en mode texte, hein. Non, le véritable Firefox, avec ses onglets, les images, la totale... Hé oui c'est possible et que ça fonctionne via SSH, donc depuis un serveur distant. Bienvenue dans le futur (ou le passé, j'sais plus trop) !

Term.everything c'est un compositeur Wayland construit from scratch en Go qui, au lieu de balancer l'image sur votre écran, la convertit en caractères ANSI et l'affiche dans le terminal. Du coup, n'importe quelle app GUI Linux peut tourner là-dedans. Firefox, un gestionnaire de fichiers, un lecteur vidéo... et même Doom (parce que si ça peut pas faire tourner Doom, ça compte pas). Le binaire fait une poignée de Mo, c'est sous licence AGPL-3.0, et y'a zéro dépendance externe.

L'outil propose 2 modes d'affichage. Le mode basique qui convertit les pixels en blocs Unicode, et dont la qualité dépend du nombre de lignes et colonnes de votre terminal. Plus vous zoomez out (Ctrl+- sur Alacritty), plus c'est net... mais plus ça rame. Donc si votre terminal supporte le protocole image, genre Kitty ou iTerm2, l'autre mode, c'est du rendu pleine résolution et là non seulement c'est pas dégeu mais en plus ça marche bien !

Le truc vraiment dingue, c'est surtout le SSH parce que si vous avez un serveur Linux distant, vous vous connectez dessus en SSH, vous lancez term-everything firefox et hop, Firefox s'affiche dans votre terminal local. Pas de X11 forwarding relou à mettre en place ni de VNC / RDP zarbi.

Pour les admins sys qui gèrent des serveurs headless, c'est quand même sympa ! D'ailleurs si vous aimez les outils SSH bien pensés , celui-ci aussi va vous plaire.

Par contre, on est encore en bêta et certaines apps vont planter ou refuser de se lancer. C'est normal, c'est un compositeur Wayland complet écrit par un seul gars (chapeau l'artiste !). Ce n'est donc pas le genre de truc qu'on met en prod, mais pour du dépannage sur un serveur Debian distant ou juste pour la beauté du geste, ça envoie du pâté.

Le créateur de term.everything est d'ailleurs le même qui avait codé Fontemon , un jeu vidéo caché dans une police de caractères. On est donc clairement dans la catégorie "parce qu'on peut le faire et que c'est marrant".

Bref, si vous voulez épater vos collègues en lançant KDE dans un terminal par-dessus SSH, ou juste jouer à Doom dans tmux, c'est par là que ça se passe.

Amusez-vous bien et merci à Lorenper pour l'info !

  • ✇Korben
  • Shells Unix - 5 redirections que vous copiez sans comprendre
    2>&1, >, >>, 2>/dev/null... Si ces symboles dans votre terminal Linux ou macOS vous font autant flipper qu'un regex, respirez un grand coup ! Quand vous aurez lu cet article, vous verrez qu'en fait c'est super simple à comprendre, et en 5 minutes vous saurez enfin ce que vous copiez-collez depuis des années depuis StackOverflow. En fait, dans les shells Unix (bash, zsh, etc.), y'a 3 canaux de base : stdin (entrée, numéro 0), stdout (sortie normale, numéro 1) et stderr (les err

Shells Unix - 5 redirections que vous copiez sans comprendre

Par : Korben
27 février 2026 à 09:53

2>&1, >, >>, 2>/dev/null... Si ces symboles dans votre terminal Linux ou macOS vous font autant flipper qu'un regex, respirez un grand coup ! Quand vous aurez lu cet article, vous verrez qu'en fait c'est super simple à comprendre, et en 5 minutes vous saurez enfin ce que vous copiez-collez depuis des années depuis StackOverflow.

En fait, dans les shells Unix (bash, zsh, etc.), y'a 3 canaux de base : stdin (entrée, numéro 0), stdout (sortie normale, numéro 1) et stderr (les erreurs, numéro 2). Tout le reste, de > à 2>/dev/null, découle de ces 3 numéros.

> - Écrire dans un fichier (et tout écraser)

echo "Salut" > fichier.txt

Ça redirige stdout vers fichier.txt. Si le fichier existe déjà... c'est mort, il est écrasé sans sommation. Du coup, faites gaffe avec vos logs, une commande mal placée et ce sont des heures de données qui disparaissent.

D'ailleurs, si vous êtes du genre parano (et oui, vous avez raison !), set -o noclobber dans votre .bashrc empêchera > d'écraser un fichier existant lors d'une commande tapée à la main. Pour y arriver, il faudra utiliser >| pour forcer.

>> - Ajouter à la suite

echo "Ligne 2" >> fichier.txt

Même principe que >, sauf que ça ajoute à la fin au lieu d'écraser. C'est ce que vous voulez 99% du temps pour des logs (sauf si vous voulez repartir de zéro, là > fait le job). Une lettre de différence entre "tout va bien" et "où sont passés mes logs, boudiouuu ???".

2> - Rediriger les erreurs

commande_foireuse 2> erreurs.log

Le 2 c'est stderr, en gros (y'a pas d'espace entre le 2 et le >, sinon bash croit que 2 est un argument). Tout ce qui sort en erreur finit dans erreurs.log au lieu de polluer votre terminal. Perso, je trouve ça super pratique pour garder une trace propre quand vous lancez des scripts via crontab -e.

Et 2>> existe aussi, pour cumuler les erreurs au fil du temps au lieu d'écraser le fichier à chaque exécution.

2>&1 - Fusionner erreurs et sortie normale

commande > output.log 2>&1

Le fameux ! Le &1 dit à bash "le 1 c'est un file descriptor, pas un fichier qui s'appelle littéralement 1". Du coup stderr (2) est redirigé vers le même endroit que stdout (1), ou plutôt vers là où stdout pointe au moment où bash évalue la ligne. Ça va, vous suivez toujours ? ^^

Attention, l'ordre compte ! Bash lit les redirections de gauche à droite. > output.log 2>&1, stdout pointe vers le fichier, puis stderr suit... tout va dans le fichier. 2>&1 > output.log, stderr copie stdout qui pointe ENCORE vers le terminal, puis stdout est redirigé vers le fichier. Résultat, les erreurs restent dans votre terminal. Le piège classique.

Et &> fait la même chose en plus court :

commande &> output.log

&> est super pratique, mais spécifique à bash / zsh donc pour la portabilité, préférez quand même > fichier 2>&1.

2>/dev/null - Le trou noir

find / -name "*.conf" 2>/dev/null

/dev/null, c'est le trou noir d'Unix. Tout ce que vous envoyez là-dedans disparaît. Super pratique avec find qui vous crache 200 "Permission denied" pour un seul résultat utile.

Et si vous voulez TOUT faire disparaître (stdout + stderr) ? Un petit &>/dev/null et c'est réglé. Pratique dans vos scripts /etc/cron.d/ quand vous voulez zéro bruit (bon, j'exagère un chouïa, je sais...).

Si vous aimez les raccourcis bash , j'ai aussi ce qu'il faut.

Bref, voilà ce sont juste 5 opérateurs à retenir, et avec ça vous couvrez à peu près tout. Donc la prochaine fois que vous copierez un 2>&1, au moins vous saurez pourquoi.

Source d'inspiration

  • ✇Korben
  • Snitch - Le netstat qui ne pique plus les yeux
    Si vous avez déjà tapé [ss -tulnp](https://www.it-connect.fr/lister-les-ports-en-ecoute-sous-linux-avec-lsof-netstat-et-ss/) dans un terminal, vous savez que c'est moche. Genre, VRAIMENT moche. Les colonnes qui se chevauchent, les adresses tronquées, bref c'est un festival du bordel. Mais c'était sans compter sur ce dev qui a pondu Snitch , un outil en Go sous licence MIT qui vient concurrencer ss et netstat... sauf que pour une fois, c'est lisible, regardez : L'interface de Snitch en action, s

Snitch - Le netstat qui ne pique plus les yeux

Par : Korben
27 février 2026 à 08:56

Si vous avez déjà tapé [ss -tulnp](https://www.it-connect.fr/lister-les-ports-en-ecoute-sous-linux-avec-lsof-netstat-et-ss/) dans un terminal, vous savez que c'est moche. Genre, VRAIMENT moche. Les colonnes qui se chevauchent, les adresses tronquées, bref c'est un festival du bordel. Mais c'était sans compter sur ce dev qui a pondu Snitch , un outil en Go sous licence MIT qui vient concurrencer ss et netstat... sauf que pour une fois, c'est lisible, regardez :

L'interface de Snitch en action, sobre et lisible

En gros, c'est un ss moderne avec une interface TUI interactive. Vous lancez la commande dans votre terminal et tadaaa, vous avez un tableau propre avec toutes vos connexions réseau, les processus associés, les ports, les protocoles... le tout avec des couleurs et une navigation au clavier. Rien à voir donc avec le pavé monochrome habituel !

Le truc cool aussi ce sont les filtres. Vous pouvez taper snitch ls proto=tcp state=listen pour ne voir que les sockets TCP en écoute, ou snitch ls proc=nginx pour traquer votre serveur web. Y'a même un filtre contains= pour chercher dans les adresses... genre contains=google pour voir tout ce qui cause avec Mountain View.

D'ailleurs, côté commandes c'est en fait bien fichu. snitch ls pour un tableau statique, snitch json pour du JSON brut si vous voulez scripter, et snitch watch -i 1s pour streamer les connexions en temps réel. Du coup ça s'intègre nickel dans vos pipelines.

La TUI elle-même vaut le détour. Vous naviguez avec j/k (comme dans Vim, forcément), vous basculez TCP/UDP avec t/u, et le plus jouissif... vous pouvez killer un processus directement avec la touche K. Plus besoin de noter le PID et d'ouvrir un autre terminal ! Sauf que attention, sur Linux faut quand même lancer en root pour avoir les infos complètes sur les processus, parce que l'outil va lire dans /proc/net/*. Ça ne marche pas non plus sur Windows, c'est Linux et macOS uniquement.

Pour ceux qui aiment personnaliser leur terminal (oui, je vous connaîs...), y'a une quinzaine de thèmes, Catppuccin, Dracula, Nord, Tokyo Night, Gruvbox... la config se fait dans ~/.config/snitch/snitch.toml et l'outil peut aussi conserver vos préférences de filtres entre les sessions (faut activer remember_state dans la config).

Côté installation, c'est pas la mer à boire. brew install snitch sur macOS, go install github.com/karol-broda/snitch@latest si vous avez Go, yay -S snitch-bin sur Arch, et y'a même des images Docker pour les plus prudents !

Donc si vous êtes du genre à surveiller votre trafic réseau ou à garder un oeil sur vos outils de diagnostic Linux , c'est clairement à tester.

Perso, pour du debug réseau rapide, je trouve que c'est carrément plus agréable que de se taper un ss -tulnp.

  • ✇Korben
  • notion-cli - Pilotez Notion depuis votre terminal
    Si vous utilisez Notion au quotidien et que vous avez toujours rêvé de piloter vos bases de données depuis un terminal... y'a enfin un truc qui tient la route. Ça s'appelle notion-cli , c'est un binaire Go qui embarque 39 commandes couvrant TOUTE l'API Notion. Il s'agit d'un seul exécutable pour macOS, Linux et Windows (amd64 et arm64) sans dépendance qui vous permet de gérer pages, bases de données, blocs et commentaires sans jamais ouvrir un navigateur. L'installation, c'est du classique : bre

notion-cli - Pilotez Notion depuis votre terminal

Par : Korben
26 février 2026 à 14:33

Si vous utilisez Notion au quotidien et que vous avez toujours rêvé de piloter vos bases de données depuis un terminal... y'a enfin un truc qui tient la route.

Ça s'appelle notion-cli , c'est un binaire Go qui embarque 39 commandes couvrant TOUTE l'API Notion. Il s'agit d'un seul exécutable pour macOS, Linux et Windows (amd64 et arm64) sans dépendance qui vous permet de gérer pages, bases de données, blocs et commentaires sans jamais ouvrir un navigateur.

L'installation, c'est du classique : brew install 4ier/tap/notion-cli sur macOS, go install pour les puristes, npm install -g notion-cli-go ou même Docker. Il faut juste un token d'intégration Notion (le ntn_xxxxx que vous générez sur notion.so/my-integrations), vous le collez dans ~/.config/notion-cli/config.json ou en variable NOTION_TOKEN, et c'est parti.

notion-cli en action dans le terminal

Le truc cool, ce sont les filtres humain-friendly. Au lieu de se taper du JSON pour filtrer une base, vous écrivez Status=Done et l'outil se débrouille tout seul. En fait, il détecte le type de chaque propriété (texte, date, sélection...) et adapte le filtre automatiquement. C'est carrément pas mal, je trouve.

Et côté Markdown, c'est la fête ! Vous exportez une page entière avec notion block list <page-id> --md --depth 3, et inversement, vous injectez un fichier .md dans Notion via notion block append <page-id> --file notes.md. Pour ceux qui bossent avec de la doc technique, ça simplifie sérieusement les choses. Bon, ça ne marche pas avec les blocs synchronisés ou les embeds exotiques, mais pour le reste c'est nickel.

D'ailleurs le mode "pipé" est vraiment malin. Car dans le terminal, l'outil affiche de jolies tables colorées mais dès que vous le "pipez" vers jq ou un script, il bascule en JSON automatiquement. Du coup, intégrer ça dans un pipeline shell ou un cron... c'est aucun parsing à faire. Voilà quoi.

Après des CLI pour Notion, y'en a déjà quelques-uns. Sauf que la plupart sont soit limités aux tâches (comme notion-cli-go qui gère surtout le côté todo), soit cantonnés à l'export (et souvent liés à un OS ou un langage précis).

Celui de 4ier, c'est donc le premier à couvrir l'API en entier : pages, bases, blocs, commentaires, fichiers, utilisateurs, et même un accès REST brut via notion api GET /v1/endpoint. En gros, c'est le gh de GitHub, mais pour Notion (et pour une fois, c'est pas juste du blabla marketing ^^).

Les cas d'usage qui tuent c'est par exemple un script cron qui crée une entrée hebdo avec notion page create <db-id> --db "Name=Weekly" "Status=Todo". Un backup qui exporte vos pages critiques en Markdown toutes les nuits. Ou un CI/CD qui met à jour un changelog Notion à chaque deploy. Quelques lignes de bash et c'est réglé, car l'outil gère tout le reste ! C'est hyper rare un CLI qui couvre autant de terrain.

Y'a aussi le côté agent-friendly pour ceux qui kiffent l'IA. L'outil retourne des codes de sortie propres, du JSON exploitable, et s'installe comme skill agent via npx skills add 4ier/notion-cli. Dans la lignée de Gemini CLI , on voit de plus en plus d'outils pensés terminal-first... et je trouve que c'est carrément bien.

Après comme souvent quand je vous présente des outils, le projet est tout frais (v0.3.0, licence MIT), avec une petite communauté donc attention, car comme tout ce qui dépend d'une API tierce, si Notion bouge ses endpoints... voilà quoi. Mais c'est propre, c'est testé, et ça tourne déjà très bien.

Votre navigateur va pouvoir souffler un peu.

  • ✇Korben
  • Systemd-analyze - L'outil indispensable pour accélérer son boot Linux
    Vous trouvez que votre Linux met 3 plombes à démarrer et vous regardez l'écran de boot défiler en vous demandant ce qui peut bien prendre autant de temps ? Hé bien bonne nouvelle los amigos del manchos, si vous utilisez une distribution basée sur systemd (comme Debian, Ubuntu, Fedora, Arch, et compagnie), il existe un outil natif déjà installé qui permet de diagnostiquer tout ça : systemd-analyze Ce truc c'est un peu le médecin légiste de votre démarrage système. Il dissèque chaque étape, ident

Systemd-analyze - L'outil indispensable pour accélérer son boot Linux

Par : Korben
16 février 2026 à 10:46

Vous trouvez que votre Linux met 3 plombes à démarrer et vous regardez l'écran de boot défiler en vous demandant ce qui peut bien prendre autant de temps ?

Hé bien bonne nouvelle los amigos del manchos, si vous utilisez une distribution basée sur systemd (comme Debian, Ubuntu, Fedora, Arch, et compagnie), il existe un outil natif déjà installé qui permet de diagnostiquer tout ça : systemd-analyze

Ce truc c'est un peu le médecin légiste de votre démarrage système. Il dissèque chaque étape, identifie les unités qui traînent la patte, et vous permet de comprendre où part votre précieux temps. Pour ceux qui débarquent, systemd est le système d'initialisation adopté par la plupart des distributions modernes, et il permet justement de lancer plein de trucs en parallèle pour gagner du temps.

Pour commencer, la commande de base c'est tout simplement :

systemd-analyze time

Elle vous sort un récapitulatif du temps passé dans chaque phase, généralement le kernel, l'initrd (le RAM disk initial), et l'espace utilisateur. Selon votre configuration, vous pourriez aussi voir passer le firmware ou le bootloader. Ça donne un truc du genre "Startup finished in 2.5s (kernel) + 19s (initrd) + 47s (userspace)". Déjà là, vous savez si le problème vient de votre noyau ou de vos services.

Mais le truc vraiment cool pour fouiller un peu plus dans le détail, c'est :

systemd-analyze blame

Cette commande vous balance la liste des unités systemd, triées par le temps qu'elles ont mis à s'initialiser. C'est un peu comme un classement des cancres de la Ve République. Vous voyez direct qui sont les boulets qui ralentissent tout le monde. Genre ce service réseau qui attend 20 secondes une connexion qui n'arrivera jamais, ou ce truc de logs qui prend son temps pour se réveiller.

Attention quand même, y'a un petit piège car un service qui met 10 secondes à démarrer ne signifie pas forcément que votre boot est rallongé de 10 secondes. Pourquoi me diriez-vous ? Hé bien parce que systemd lance plein de trucs en parallèle. Un service peut donc prendre son temps tranquille pendant que d'autres bossent en même temps sans bloquer personne.

Pour vraiment piger ce qui coince sur le chemin critique, lancez plutôt :

systemd-analyze critical-chain

Ça, c'est le top car ça vous montre la chaîne critique, c'est-à-dire la séquence exacte d'événements qui détermine vraiment votre temps de démarrage final. Vous voyez exactement quelles unités sont sur le chemin et lesquelles attendent les autres. Le temps après le "@" indique quand l'unité est devenue active, et le temps après le "+" montre combien de temps elle a pris pour démarrer. C'est bien plus fiable que blame pour identifier les vrais goulots d'étranglement.

Et si vous êtes du genre visuel, y'a même :

systemd-analyze plot > boot.svg

Et avec ça, hop, ça génèrera un magnifique graphique SVG qui représentera la chronologie de votre séquence de boot. Vous pourrez ensuite l'ouvrir dans votre navigateur et voir en un coup d'oeil ce qui démarre quand et combien de temps ça dure. C'est super pratique pour épater la galerie ou juste visualiser l'ordre de lancement.

Maintenant, une fois que vous avez identifié les coupables, comment on fait pour accélérer tout ça ?

Déjà, vous pouvez désactiver les services dont vous n'avez pas besoin avec :

sudo systemctl disable nom-du-service

Gardez en tête que disable supprime seulement le lancement automatique au boot, mais n'empêche pas une activation indirecte via une dépendance ou un socket. Si vous voulez vraiment qu'un service ne démarre plus jamais, utilisez mask. Et surtout, ne désactivez pas n'importe quoi comme un bourrin, hein ! Je vous connais ! Non, non, avant de toucher à un service, vérifiez d'abord ce qui en dépend :

systemctl list-dependencies nom-du-service

Car si vous cassez un truc important, votre système risque de ne plus démarrer correctement. Donc si vous n'êtes pas sûr, gardez vos mimines dans vos poches. D'ailleurs, si vous bidouillez vos fichiers d'unité (comme pour automatiser Shiori par exemple), sachez que vous pouvez aussi les vérifier pour débusquer les erreurs avec :

systemd-analyze verify /chemin/vers/unite.service

C'est super pratique pour éviter les mauvaises surprises au prochain redémarrage. Voilà et si vous cherchez d'autres astuces pour optimiser votre machine Linux , n'hésitez pas à jeter un oeil à mon article sur TLP.

Ah j'oubliais, y'a aussi la commande systemd-analyze security qui permet d'analyser le niveau d'exposition sécurité de vos services. Elle attribue un score heuristique d'exposition basé sur les options de durcissement (hardening) actives. Plus le score est bas, mieux le service est protégé contre d'éventuelles failles. C'est donc un excellent point de départ pour identifier les services qui mériteraient un peu plus de love côté isolation.

Bref, cet analyseur de démarrage c'est vraiment l'outil indispensable pour qui veut comprendre et optimiser son boot Linux. C'est natif, c'est puissant, et ça vous évite de passer des heures à chercher pourquoi votre machine met autant de temps que vous à se réveiller le matin ^^.

  • ✇Korben
  • Offpunk - Le navigateur terminal qui déchire passe en version 3.0
    Un navigateur internet, vous voyez ce que c'est ? En général, ça pèse un âne mort, ça bouffe toute votre RAM et les sites que vous visitez vous bombardent de trackers et de pubs avant même que vous ayez pu lire la première ligne d'un article. Mais imaginez maintenant un outil qui se fout royalement du JavaScript, qui limite drastiquement le tracking et qui vous permet de lire vos contenus préférés en restant tranquillement hors-ligne ? Ce serait bien non ? C'est là que Offpunk entre en scène. Dé

Offpunk - Le navigateur terminal qui déchire passe en version 3.0

Par : Korben
9 février 2026 à 16:05

Un navigateur internet, vous voyez ce que c'est ? En général, ça pèse un âne mort, ça bouffe toute votre RAM et les sites que vous visitez vous bombardent de trackers et de pubs avant même que vous ayez pu lire la première ligne d'un article. Mais imaginez maintenant un outil qui se fout royalement du JavaScript, qui limite drastiquement le tracking et qui vous permet de lire vos contenus préférés en restant tranquillement hors-ligne ? Ce serait bien non ?

C'est là que Offpunk entre en scène. Développé par l'ami Ploum, ce navigateur en ligne de commande vient de passer en version 3.0, et c'est du bon boulot.

Car Offpunk n'est pas juste un navigateur classique... En réalité c'est un outil de lecture "offline-first" qui contrairement à Carbonyl ou Browsh embarquent des moteurs complets pour le web moderne. Offpunk mise en fait sur l'extraction de contenu, du coup, vous synchronisez vos pages quand vous avez du réseau, et vous les lisez plus tard, sans distractions ni scripts qui ralentissent tout.

Perso, j'adore cette approche qui remet le contenu au centre. Par exemple, même sans 4G dans le train, vous pouvez continuer à lire korben.info tranquillement.

Et cette version 3.0 apporte pas mal de nouveautés qui facilitent la vie. Déjà, l'outil est devenu multilingue et surtout, il intègre maintenant « unmerdify ». Comme son nom "françisé" l'indique, c'est une bibliothèque qui permet de nettoyer le HTML souvent bien crado des sites modernes pour n'en garder que l'essentiel.

Selon les sites, on se débarrasse alors d'une bonne partie des menus flottants et des overlays inutiles pour ne garder que le texte propre. Attention quand même, si vous tombez sur une page codée avec les pieds avec des scripts de 50 Mo partout, l'extraction peut parfois ramer une ou deux secondes... mais c'est le prix à payer pour la tranquillité.

Pour ceux qui se posent la question, Offpunk gère aussi les protocoles Gemini et Gopher, qui sont un peu les paradis perdus du web sans fioritures. Et si vous avez besoin de vous connecter à certains comptes abonnés demandant des cookies, y'a maintenant une commande pour importer vos fichiers cookies.txt directement. Il suffit de rajouter le chemin dans votre fichier de config ~/.offpunkrc et le tour est joué.

Un accès illimité au savoir dispo en ligne sans quitter la console, c'est beau non ! Sauf évidemment si votre terminal ne gère pas les couleurs... là, ça risque d'être un peu tristoune visuellement.

Le petit truc en plus qui tue c'est l'intégration qu'a fait Ploum de xkcdpunk pour lire vos BD XKCD préférées directement dans le terminal. Pas mal du tout pour s'occuper pendant les longs trajets en train sans Wi-Fi.

Vous pouvez l'installer via apt install offpunk ou pacman -S offpunk sur la plupart des distros, ou simplement cloner le dépôt Git et lancer le script avec python offpunk.py.

Pas besoin de compiler quoi que ce soit, on est entre gens civilisés ! J'ai galéré au début avec une vieille version de BeautifulSoup, mais en fait, une fois les dépendances à jour, c'est hyper stable.Bref, si vous saturez du web moderne et que vous voulez retrouver le plaisir de la lecture pure sans vous faire traquer par la moitié de la planète, allez tester ça. C'est léger, c'est intelligent et ça redonne un peu d'espoir dans l'avenir du terminal.

Source

  • ✇Korben
  • Personal AI Infrastructure - L'agent intelligent qui vous connaît vraiment
    On nous parle d'agents IA à toutes les sauces depuis deeeees mois mais au final, on se retrouve la plupart du temps avec des outils "stateless" qui perdent le fil dès qu'une session se termine. Heureusement, le projet Personal AI Infrastructure (ou PAI pour les intimes) de Daniel Miessler propose justement de régler ce problème en classant les systèmes IA en 3 niveaux. Le niveau 1, c'est le chatbot de base type ChatGPT... vous posez une question, il répond, il oublie tout. Le niveau 2, c'est l'a

Personal AI Infrastructure - L'agent intelligent qui vous connaît vraiment

Par : Korben
9 février 2026 à 11:14

On nous parle d'agents IA à toutes les sauces depuis deeeees mois mais au final, on se retrouve la plupart du temps avec des outils "stateless" qui perdent le fil dès qu'une session se termine. Heureusement, le projet Personal AI Infrastructure (ou PAI pour les intimes) de Daniel Miessler propose justement de régler ce problème en classant les systèmes IA en 3 niveaux.

Le niveau 1, c'est le chatbot de base type ChatGPT... vous posez une question, il répond, il oublie tout. Le niveau 2, c'est l'agent (genre Claude Code ou Cursor) qui peut exécuter des trucs mais qui ne vous connait pas vraiment. Et le niveau 3, c'est PAI, une infrastructure complète qui observe, planifie, exécute et surtout... apprend de vous.

Concrètement, PAI c'est pas juste une énième surcouche pour votre LLM préféré. C'est un framework (TypeScript, Python, Bash) qui tourne sur Bun et qui structure tout autour de VOUS. Le cœur du truc, c'est ce qu'il appelle "TELOS"... en fait c'est 10 fichiers Markdown (genre MISSION.md, GOALS.md, BELIEFS.md planqués dans votre dossier ~/.claude/) qui définissent qui vous êtes et ce que vous voulez accomplir. Du coup, l'IA ne se contente plus de répondre bêtement, elle comprend pourquoi vous posez la question par rapport à vos projets en cours.

Et y'a un deuxième concept sympa, qui est la séparation propre entre vos fichiers perso (dossier USER/) et l'infrastructure du système (dossier SYSTEM/). Ça veut dire que vous pouvez faire un git pull pour mettre à jour PAI sans écraser ce fichier USER/PREFERENCES.md que vous avez mis 2 heures à peaufiner. Ça parait con dit comme ça, mais quand vous avez passé du temps à peaufiner vos préférences... c'est PAS la même.

Côté mémoire, le système fonctionne sur 3 niveaux (chaud, tiède, froid) pour stocker intelligemment vos infos en fonction de leur fraîcheur. En gros, ce qui est frais et pertinent reste accessible immédiatement, le reste descend progressivement dans les couches inférieures. Attention par contre, faut pas confondre avec un simple fichier de notes... là je vous parle d'un truc qui se met à jour TOUT SEUL à chaque interaction. Et tout ça nourrit l'IA pour qu'elle s'affine au fil du temps sans que vous ayez à tout réexpliquer (parce que soyons honnêtes, c'est CHIANT de re-contextualiser à chaque nouvelle session).

L'architecture est modulaire avec des "Packs" et des "Bundles". Y'a 23 Packs disponibles qui couvrent la génération de code, la recherche d'infos, la gestion de la mémoire... Hop, vous installez le pack voice-system et vous avez un système qui cause façon Jarvis (via ElevenLabs). Et si vous avez besoin de notifications push sur votre téléphone (coucou Clawbot de merde ^^) quand une tâche longue se termine, y'a un pack pour ça aussi, avec ntfy ou Discord.

Le truc qui m'a bien plu dans la philosophie du projet, c'est la hiérarchie stricte : CODE d'abord, puis CLI, puis Prompt, puis Skill. En gros, si un problème peut se résoudre avec un grep ou un script bash de 10 lignes, on ne sort pas l'artillerie lourde. Et si on peut en faire un outil CLI, on ne reste pas sur un prompt de base. Perso, j'aime bien cette approche... ça évite d'utiliser un LLM comme un marteau pour enfoncer tous les clous (sauf que dans la vraie vie, on le fait tous quand même, avouez...).

D'ailleurs, PAI n'est pas réservé qu'aux devs puisque le projet vise aussi les artistes, les managers (pour du suivi d'équipe par exemple), les petits patrons (facturation, marketing...etc) et même monsieur / madame tout-le-monde pour gérer ses finances ou son planning sportif. La v2.5 est sortie il y a quelques jours avec l'exécution parallèle par défaut et des outils de "thinking" améliorés.

Pour installer le bouzin, c'est pas sorcier :

git clone https://github.com/danielmiessler/PAI.git
cd PAI/Releases/v2.5
cp -r .claude ~/
cd ~/.claude && bun run INSTALL.ts

Comptez 5 minutes montre en main (sauf si vous n'avez pas Bun, là faudra l'installer avant avec curl -fsSL https://bun.sh/install | bash). Ça a été développé avec Claude Code mais c'est platform-agnostic, ça marche aussi avec Cursor, Windsurf ou OpenCode et le support de modèles locaux accessible via Ollama ou llama.cpp est sur la roadmap (vivement que ça tourne 100% en local, perso).

Bref, si vous en avez marre des assistants qui ont la mémoire d'un poisson rouge, PAI est une piste sérieuse. C'est du terminal-first, open source (MIT) et largement plus ambitieux que les wrappers habituels. Bon, faut quand même être à l'aise avec le terminal hein... si vous êtes plutôt team GUI, passez votre chemin.

Merci à Pascal pour l'info !

Source

  • ✇Korben
  • VHS - Scriptez vos démos terminal en GIF
    Vous vous souvenez des cassettes VHS ? Bon, là rien à voir avec le magnétoscope de mémé qui clignote à 12:00 mais je suis quand même content de vous présenter VHS , un petit outil open source concocté par la team Charm dont je vous ai déjà parlé. Y'a pas longtemps, je cherchais un moyen propre de faire une petit démo d'un projet perso et je ne sais pas si vous connaissez Terminalizer (j'en avais déjà parlé), mais là pour le coup, j'ai préféré l'approche de VHS parce qu'au lieu d'enregistrer votr

VHS - Scriptez vos démos terminal en GIF

Par : Korben
1 février 2026 à 09:36

Vous vous souvenez des cassettes VHS ?

Bon, là rien à voir avec le magnétoscope de mémé qui clignote à 12:00 mais je suis quand même content de vous présenter VHS , un petit outil open source concocté par la team Charm dont je vous ai déjà parlé.

Y'a pas longtemps, je cherchais un moyen propre de faire une petit démo d'un projet perso et je ne sais pas si vous connaissez Terminalizer (j'en avais déjà parlé), mais là pour le coup, j'ai préféré l'approche de VHS parce qu'au lieu d'enregistrer votre terminal en "live" comme Terminalizer et de me faire stresser à chaque faute de frappe, ça me permet de scripter entièrement en amont ma démo.

En fait vous écrivez un fichier ".tape" avec vos instructions, et l'outil génère un rendu (GIF, MP4, WebM) nickel chrome. C'est donc le rêve de tous les perfectionnistes comme moi qui recommencent 15 fois la même capture parce qu'ils ont oublié un sudo ou qu'ils ont bafouillé sur le clavier.

Pour l'installer, comme d'hab :

brew install vhs

Après si vous passez par Docker, c'est possible aussi mais il vous faudra impérativement ttyd et ffmpeg installés sur votre machine pour que ça tourne.

Ensuite, voici à quoi ressemble un scénario en .tape :

Output demo.gif
Set FontSize 20
Set Width 1200
Type "echo 'Salut les amis !'"
Sleep 500ms
Enter
Sleep 2s

Et là, c'est magique, vous lancez la commande et c'est parti :

vhs demo.tape

Il lance alors un terminal invisible, tape les commandes pour vous, et enregistre le rendu. Hop, c'est dans la boîte mes petits Spielberg !

Mais ça ne s'arrête pas là puisqu’on peut aussi contrôler la vitesse de frappe pour donner un effet plus naturel, ou utiliser la commande "Wait" pour mettre le script en pause jusqu'à ce qu'une certaine chaîne de caractères apparaisse à l'écran. Genre pour ne pas couper la vidéo pendant un "npm install" qui dure trois plombes.

Et ce qui est top moumoute avec VHS , c'est que comme c'est du code, vous pouvez versionner vos démos sur Git. Mieux encore, vous pouvez les intégrer dans votre CI/CD avec GitHub Actions. Du coup, si votre CLI change, votre GIF de documentation se régénère automatiquement (à condition de configurer le commit du résultat, bien sûr). C'est ti pas beau ça ?

Comme ça s'en est fini des GIFs flous ou des screencasts qui pèsent une tonne. Avec VHS c'est propre, c'est net, et c'est maintenable !

  • ✇Korben
  • jq-quest - Apprenez à maîtriser jq sans vous prendre la tête
    Si vous avez déjà croisé la route de jq , c'est probablement parce que vous vous la touchez un peu dans le terminal et que vous avez déjà joué avec du format JSON (logs, APIs, config...). Jq, tout le monde l'adore parce que ça filtre, ça mappe et surtout ça transforme du JSON directement depuis le terminal. Mais la syntaxe de ce truc, aïe aïe aïe, c'est comme faire de la Regex. C'est de l'apprentissage sur le tas surtout. Faut copier coller des trucs en provenance de RIP-StackOverflow ou de Chat

jq-quest - Apprenez à maîtriser jq sans vous prendre la tête

Par : Korben
28 janvier 2026 à 07:46

Si vous avez déjà croisé la route de jq , c'est probablement parce que vous vous la touchez un peu dans le terminal et que vous avez déjà joué avec du format JSON (logs, APIs, config...).

Jq, tout le monde l'adore parce que ça filtre, ça mappe et surtout ça transforme du JSON directement depuis le terminal. Mais la syntaxe de ce truc, aïe aïe aïe, c'est comme faire de la Regex. C'est de l'apprentissage sur le tas surtout. Faut copier coller des trucs en provenance de RIP-StackOverflow ou de ChatGPT-le-sang-de-la-veine. Et le pire c'est que 2 jours après, on a tout oublié !!! Puis lire la doc officielle, m'en parlez pas, c'est comme lire autre chose que mon site... c'est pas le criss de fun ^^.

Heureusement, pour ceux qui veulent vraiment monter en compétence sans s'endormir, il existe jq-quest .

C'est un petit projet sympa hébergé sur Codeberg qui propose une approche "learning by doing" (apprendre en faisant, pour les anglophobes). Au début, je pensais que c'était juste un QCM basique, mais en fait non puisqu'il faut vraiment taper les commandes et se salir les mains.

Pour essayer, suffit de cloner le dépôt, vous lancez le script, et on vous donne un input JSON et l'output attendu. À vous ensuite de trouver la bonne commande jq pour passer de l'un à l'autre.

Il vous faudra juste jq d'installé sur votre machine. Attention par contre, si vous êtes sous Windows, il faudra passer par WSL ou Git Bash, parce que le script .sh ne va pas aimer PowerShell.

Ça s'installe donc en deux secondes comme ceci :

git clone https://codeberg.org/gturri/jq-quest.git
cd jq-quest

Ensuite, vous lancez votre premier exercice :

./jq-quest.sh 1-pretty-print.json

Le script va alors vous afficher l'instruction, le JSON d'entrée et ce qu'il attend en sortie :

INSTRUCTION: Pretty print the json
INPUT: {"k1": "v1", "k2":[1, 3, 7]}
EXPECTED OUTPUT: {
 "k1": "v1",
 "k2": [
 1,
 3,
 7
 ]
}

Vous tapez votre proposition de filtre, et il vous dit si c'est bon ou pas. Pour proposer une solution, suffit de taper :

./jq-quest.sh 1-pretty-print.json 'SOLUTION'

Si vous séchez (et croyez-moi, ça va arriver), vous pouvez demander un indice avec :

./jq-quest.sh 1-pretty-print.json hint

Ou carrément la solution si vous êtes au bout du rouleau :

./jq-quest.sh 1-pretty-print.json solution

Mais rassurez vous, les exercices sont progressifs, ça commence par du "pretty print" basique (le truc qu'on fait tous), puis on attaque les filtres simples, les clés spéciales, les tableaux, et petit à petit on arrive sur des trucs bien plus costauds comme les itérations sur objets, le slicing ou les opérations mathématiques.

Ce genre de tuto interactif c'est top parce que jq, c'est hyper puissant, mais la courbe d'apprentissage est un peu raide au début. Là, en une petite heure, vous pouvez plier les exercices et avoir enfin compris la logique du truc au lieu de tâtonner à chaque fois.

D'ailleurs, si vous aimez ce genre d'outils pour parser de la donnée, je vous rappelle qu'il existe aussi fq pour les fichiers binaires ou encore htmlq pour le HTML . J'aurais pu vous parler d'outils graphiques pour faire ça, mais franchement, rien ne vaut la ligne de commande pour comprendre ce qu'on fait. Et si vous êtes plutôt Python, jetez un oeil à jc qui convertit la sortie des commandes classiques en JSON.

Bref, si vous voulez arrêter de souffrir à chaque fois que vous devez extraire un champ d'un JSON interminable, faites un tour sur jq-quest, ça va vous dérouiller les neurones.

Si vous êtes dev et que ce genre de tuto vous parle, suivez Korben sur LinkedIn pour d'autres découvertes.

Un grand merci à Guillaume pour la découverte.

  • ✇Korben
  • Bookokrat - Le lecteur EPUB pour les accros du terminal
    Vous vous souvenez de l'époque où rien que de lire un texte sur un écran noir suffisait à notre bonheur ? C'était un temps où chaque pixel comptait et où la souris était encore en option... Alalala, hé bien, pour ceux qui ont gardé cette âme pure ou qui passent la plupart de leur temps dans un shell, je vous ai déniché Bookokrat , un lecteur EPUB conçu EXCLUSIVEMENT pour votre terminal. Vous allez voir c'est super pour lire des livres pendant le boulot discretos ^^. L'outil propose une interfac

Bookokrat - Le lecteur EPUB pour les accros du terminal

Par : Korben
22 janvier 2026 à 12:49

Vous vous souvenez de l'époque où rien que de lire un texte sur un écran noir suffisait à notre bonheur ? C'était un temps où chaque pixel comptait et où la souris était encore en option... Alalala, hé bien, pour ceux qui ont gardé cette âme pure ou qui passent la plupart de leur temps dans un shell, je vous ai déniché Bookokrat , un lecteur EPUB conçu EXCLUSIVEMENT pour votre terminal.

Vous allez voir c'est super pour lire des livres pendant le boulot discretos ^^.

L'outil propose une interface en "split-view" avec les EPUB de votre répertoire courant à gauche et votre lecteur à droite. Et malgré le côté austère du terminal, Bookokrat ne fait pas de compromis puisqu'il gère comme un chef le MathML pour les formules mathématiques et affiche même les images !

Attention toutefois, le rendu dépendra de votre terminal. Par exemple sur Kitty, Ghostty ou iTerm2 c'est le top ! Mais sur Alacritty ce sera un peu moins bien, quand au Terminal.app de macOS qui ne supporte pas bien les protocoles graphiques, je vous laisse imaginer la lose.

Côté navigation, c'est du classique avec des raccourcis inspirés de Vim (hjkl pour les intimes ^^) afin de scroller, changer de chapitre ou chercher dans le texte. L'outil gère aussi les signets automatiques ce qui est pratique quand on n'a pas le temps de finir "Guerre et Paix" d'une traite et vous pouvez même ajouter des notes directement dans le texte pour ne rien oublier.

Y'a aussi un "zen mode" (Ctrl + z) pour ceux qui ont du mal à se concentrer, même si je trouve qu'il est un peu inutile, et comme c'est codé en Rust, c'est fluide de fou !

Maintenant, pour l'installer, c'est facile... Sous macOS, un coup de Brew :

brew install bookokrat

Sinon, via Cargo :

cargo install bookokrat

Voilà si vous cherchez un moyen propre de lire vos ebooks sans quitter votre shell, Bookokrat fera grave bien le taff. Puis je trouve que ça redonne un petit goût de nostalgie façon Edit à la lecture et c'est pas pour me déplaire.

  • ✇Korben
  • RemoveWindowsAI - Le script qui débranche l'IA de Windows 11
    Bon, déjà si vous êtes sous Windows, je sais c'est dur la vie ^^. Mais si en plus vous êtes anti-IA, votre quotidien doit être encore plus difficile depuis que Microsoft a décidé de coller de l'intelligence artificielle partout dans son OS. Copilot par-ci, Recall par-là, des features IA dans Paint, dans le Bloc-notes, dans les paramètres... Bref, c'est l'invasion et y'a malheureusment pas vraiment de bouton "OFF" officiel pour tout virer d'un coup. Hé bien figurez-vous qu'un développeur du nom d

RemoveWindowsAI - Le script qui débranche l'IA de Windows 11

Par : Korben
17 décembre 2025 à 10:53

Bon, déjà si vous êtes sous Windows, je sais c'est dur la vie ^^. Mais si en plus vous êtes anti-IA, votre quotidien doit être encore plus difficile depuis que Microsoft a décidé de coller de l'intelligence artificielle partout dans son OS. Copilot par-ci, Recall par-là, des features IA dans Paint, dans le Bloc-notes, dans les paramètres... Bref, c'est l'invasion et y'a malheureusment pas vraiment de bouton "OFF" officiel pour tout virer d'un coup.

Hé bien figurez-vous qu'un développeur du nom de zoicware a créé un script PowerShell qui fait exactement ça. Ça s'appelle RemoveWindowsAI et ça permet de dégager TOUTES les fonctionnalités IA de Windows 11 en quelques secondes. Aux chiottes Copilot, Recall, les suggestions de frappe, l'IA dans Paint, dans Edge, les effets vocaux... Tout y passe et c'est cool !

Et ce script ne se contente pas de désactiver des options dans les paramètres comme un vulgaire amateur puisqu'il modifie les clés de registre, supprime les packages Appx (même ceux marqués "non supprimables" par Microsoft), nettoie les fichiers cachés dans le Component-Based Servicing, et surtout il installe un bloqueur pour empêcher Windows Update de vous remettre tout ce bazar à la prochaine mise à jour. Parce que oui, Microsoft adore réinstaller ses trucs en douce...

Pour l'utiliser, c'est assez simple. Vous lancez PowerShell en admin (attention, pas PowerShell 7 mais bien le bon vieux Windows PowerShell 5.1) et vous tapez une seule commande qui télécharge et exécute le script. Y'a même une interface graphique interactive pour ceux qui préfèrent cocher des cases plutôt que de taper des lignes de commande (Allez quand même lire le code avant sur le Github pour vous assurer que c'est OK, c'est une bonne habitude à prendre).

& ([scriptblock]::Create((irm "https://raw.githubusercontent.com/zoicware/RemoveWindowsAI/main/RemoveWindowsAi.ps1")))

Maintenant, quelques précautions à savoir quand même. Certains antivirus merdiques vont hurler au loup en voyant ce script. Rassurez-vous, c'est un faux positif classique avec ce genre d'outils qui touchent au système en profondeur. Faudra soit désactiver temporairement votre antivirus, soit ajouter une exception et surtout, le développeur recommande fortement de tester ça dans une machine virtuelle avant de l'appliquer sur votre PC principal. Avec VirtualBox ou Hyper-V, vous pouvez créer un Windows 11 de test en quelques clics et voir si tout se passe bien.

Et si jamais vous changez d'avis et que vous voulez récupérer vos features IA adorées, pas de panique ! Y'a un mode "Revert" qui permet de tout restaurer. Vous n'êtes donc pas coincé pour toujours si vous décidez finalement de revenir vers le côté obscur de la Force.

Bref, si vous faites partie de ceux qui pensent que l'IA dans Windows c'est plus une nuisance qu'autre chose (et que ça pompe des ressources pour des fonctionnalités dont vous n'avez pas besoin), ce petit script vous sera utile.

C'est par ici : RemoveWindowsAI sur GitHub

  • ✇Korben
  • sqlit - Quand y'en a marre de lancer SQL Server Management Studio pour une requête
    Vous aussi vous avez ce truc où vous devez juste faire un petit SELECT rapide sur votre base de données, et là vous lancez un monstre du genre SQL Server Management Studio ou DBeaver, vous attendez que ça se charge pendant 47 ans, que ça bouffe les 2 Go de RAM qu'il vous reste, et tout ça pour une requête de 3 lignes ? Moi ça m'énerve profondément, j'avoue... Pas le temps, pas la patience ! Heureusement, y'a un dev qui en a eu encore plus marre que moi et qui a pondu sqlit . C'est une interface

sqlit - Quand y'en a marre de lancer SQL Server Management Studio pour une requête

Par : Korben
17 décembre 2025 à 10:22

Vous aussi vous avez ce truc où vous devez juste faire un petit SELECT rapide sur votre base de données, et là vous lancez un monstre du genre SQL Server Management Studio ou DBeaver, vous attendez que ça se charge pendant 47 ans, que ça bouffe les 2 Go de RAM qu'il vous reste, et tout ça pour une requête de 3 lignes ?

Moi ça m'énerve profondément, j'avoue... Pas le temps, pas la patience !

Heureusement, y'a un dev qui en a eu encore plus marre que moi et qui a pondu sqlit . C'est une interface TUI (Terminal User Interface, je précise...) qui tourne direct dans votre terminal et qui supporte un paquet de bases de données différentes telles que PostgreSQL, MySQL, SQL Server, SQLite, MariaDB, Oracle, DuckDB, CockroachDB, Supabase, Turso... La liste est longue mais en gros, si ça parle SQL, sqlit sait s'y connecter.

Le truc est inspiré de lazygit , un client Git en TUI que beaucoup de devs adorent, ce qui fait qu'on retrouve cette approche "lazy" où l'interface se suffit à elle-même. Comme ça y'a pas besoin de mémoriser 150 raccourcis clavier, puidqu'il y a une aide contextuelle qui s'affiche et qui vous dit quoi faire, comme votre maman quand vous ne l'avez absolument pas sollicitée.

On a donc de l'autocomplétion SQL qui va chercher les noms de tables et de colonnes, un historique des requêtes par connexion (pratique pour retrouver cette requête chelou qu'on avait bidouillée y'a 3 semaines), et même la gestion des tunnels SSH intégrée pour se connecter à des bases distantes. Les utilisateurs de Vim seront contents aussi, car y'a un mode d'édition modal pour naviguer comme dans votre éditeur préféré.

Pour l'installer, c'est hyper simple :

pip install sqlit-tui

Et après vous tapez sqlit dans votre terminal et c'est parti. Les drivers pour chaque type de base de données s'installent à la demande la première fois que vous essayez de vous connecter. Donc pas de dépendances inutiles qui traînent si vous utilisez juste PostgreSQL par exemple.

Y'a aussi un mode CLI si vous voulez scripter vos requêtes :

sqlit query -c "MaConnexion" -q "SELECT * FROM Users" --format csv

Le seul truc naze je trouve, c'est le nom "sqlit" qui ressemble trop à SQLite. Bon courage pour googler des infos dessus... Je sais de quoi je parle, toutes les 2 semaines, y'a une entreprise Korben qui pop en voulant surfer sur mon buzz (ouais j'ai le melon, mdr) et qui passe toutes ses levées de fonds en adwords pour se positionner avant moi sur Google ^^. C'est couillon ^^.

Bref, si vous vivez dans le terminal et que vous en avez marre de lancer des client lourds juste pour un SELECT, c'est vraiment pratique.

  • ✇Korben
  • SpeculationControl - Un module PowerShell anti-Spectre / Meltdown
    Vous vous souvenez de Spectre et de Meltdown ? Mais siiii, ces petites vulnérabilités qui ont foutu le bazar dans tous les processeurs en 2018 ? Eh bien figurez-vous que Microsoft vient de mettre à jour son outil de vérification, histoire de nous rappeler que nos CPU sont toujours aussi troués qu’un emmental (Oui, le gruyère n’a pas de trou). Le module SpeculationControl pour PowerShell évolue donc et c’est l’occasion parfaite de faire un petit check-up sécurité de vos machines.

SpeculationControl - Un module PowerShell anti-Spectre / Meltdown

Par : Korben
12 juin 2025 à 10:38

Vous vous souvenez de Spectre et de Meltdown ? Mais siiii, ces petites vulnérabilités qui ont foutu le bazar dans tous les processeurs en 2018 ?

Eh bien figurez-vous que Microsoft vient de mettre à jour son outil de vérification, histoire de nous rappeler que nos CPU sont toujours aussi troués qu’un emmental (Oui, le gruyère n’a pas de trou). Le module SpeculationControl pour PowerShell évolue donc et c’est l’occasion parfaite de faire un petit check-up sécurité de vos machines.

  • ✇Korben
  • Zsh-copilot – Et votre terminal devient intelligent
    Perso, je lance pas mal de commandes dans tous les sens chaque jour dans mon terminal et entre les petits paramètres que j’oublie, les enchainements de commandes un peu complexes ou les commandes à rallonge, ce que je peux vous dire, c’est que ça me prend un peu de temps. Mais heureusement, zsh-copilot a débarqué dans ma vie il y a quelques mois et je ne peux plus m’en passer. Ce plugin génial utilise la puissance de l’IA, directement intégrée à votre fidèle Zsh grâce zsh-autosugges

Zsh-copilot – Et votre terminal devient intelligent

Par : Korben
5 septembre 2024 à 09:00

Perso, je lance pas mal de commandes dans tous les sens chaque jour dans mon terminal et entre les petits paramètres que j’oublie, les enchainements de commandes un peu complexes ou les commandes à rallonge, ce que je peux vous dire, c’est que ça me prend un peu de temps.

Mais heureusement, zsh-copilot a débarqué dans ma vie il y a quelques mois et je ne peux plus m’en passer.

Ce plugin génial utilise la puissance de l’IA, directement intégrée à votre fidèle Zsh grâce zsh-autosuggestions.

Pour en profiter, rien de plus simple. Installez les dépandances suivantes :

Clonez le repo zsh-copilot dans votre dossier de plugins Zsh :

git clone https://github.com/Myzel394/zsh-copilot.git ~/.zsh-copilot

Puis ajoutez la ligne suivante dans votre fichier .zshrc avec cette commande :

echo "source ~/.zsh-copilot/zsh-copilot.plugin.zsh" >> ~/.zshrc

N’oubliez pas de relancer votre shell pour prendre en compte les changements.

Ah oui, j’oubliais ! Pour que la magie opère, vous aurez aussi besoin d’une clé API OpenAI. Ça coûtera donc un peu de sous, mais vu tout ce que ce plugin va vous apporter, ça vaut largement le coup d’investir dedans !

Une fois que tout est en place, vous n’avez plus qu’à commencer à taper vos commandes habituelles, et à presser Ctrl+Z dès que vous avez besoin d’un coup de main. Et là, c’est Merlin l’enchanteur qui entre en scène ! zsh-copilot va analyser ce que vous êtes en train de faire, et vous proposer la suite la plus pertinente. Vous pouvez même carrément lui demander ce que vous cherchez à faire et lui vous proposera la commande qui va bien.

Vous verrez, c’est bluffant. Au début, on a un peu l’impression de tricher, mais très vite, on se rend compte à quel point c’est pratique. J’en ai même fait une vidéo pour mes patreons d’amour :

Puis par la même occasion, j’ai découvert Zsh AutoSuggestions qui est également super pratique pour retrouver les commandes qu’on tape régulièrement.

Bref, comme d’hab, productivité x10 avec ce genre de petits tools. Rendez-vous sur le github pour en savoir plus.

  • ✇Korben
  • Starship – L’invite de commande personnalisable
    Starship est un outil de personnalisation d’invite de commande ultra-rapide, totalement configurable et qui fonctionne avec tout, que vous utilisiez Bash, Zsh, Fish, PowerShell…etc. Cet outil s’intègre en un clin d’œil à votre Shell et vous permettra d’en tirer le meilleur. Une fois Starship installé, vous serez vite bluffé par ses capacités de personnalisation puisque vous pourrez configurer chaque aspect de votre shell afin de l’adapter à vos besoins et à vos goûts. Couleurs, symboles, in

Starship – L’invite de commande personnalisable

Par : Korben
9 juin 2024 à 09:00

Starship est un outil de personnalisation d’invite de commande ultra-rapide, totalement configurable et qui fonctionne avec tout, que vous utilisiez Bash, Zsh, Fish, PowerShell…etc. Cet outil s’intègre en un clin d’œil à votre Shell et vous permettra d’en tirer le meilleur.

Une fois Starship installé, vous serez vite bluffé par ses capacités de personnalisation puisque vous pourrez configurer chaque aspect de votre shell afin de l’adapter à vos besoins et à vos goûts. Couleurs, symboles, informations affichées… tout est modifiable via le fichier de configuration starship.toml.

Et si vous travaillez sur plusieurs projets en même temps, pas de problème, Starship affichera « intelligemment » le nom du répertoire courant, la branche Git et l’état de votre dépôt. Et si vous avez besoin d’informations sur la version de Node.js, Python ou Ruby que vous êtes en train d’utiliser, Starship les détectera automatiquement et les intègrera naturellement dans votre prompt.

Mais Starship ne s’arrête pas là puisqu’il prend en charge une multitude de plugins pour étendre ses fonctionnalités. Ça permet par exemple d’afficher l’état de vos tests, le niveau de batterie de votre ordinateur portable, ou même la météo.

Et si vous êtes du genre power user, vous apprécierez la rapidité de Starship car contrairement à d’autres outils qui peuvent ralentir votre terminal, il est optimisé pour offrir des performances optimales, sans latence perceptible, même si vous avez poussé la personnalisation à fond !

L’installation est également un jeu d’enfant. Sur la plupart des systèmes, il vous suffira d’exécuter une simple commande pour télécharger et configurer automatiquement cet outil. Par exemple, sur macOS vous pouvez utiliser Homebrew :

brew install starship

Et sur Linux, la commande est tout aussi simple :

curl -sS https://starship.rs/install.sh | sh

Si ça vous dit de tester, le site officiel starship.rs est là. Et si vous êtes à la recherche d’inspiration pour personnaliser votre invite de commande, il y a des presets sur le site également.

❌
❌