Vue normale

Reçu — 23 avril 2026 Généralistes
  • ✇Korben
  • Lastversion - Trouver la dernière version de n'importe quoi
    Vous bossez sur un Dockerfile et vous avez besoin de la dernière version de nginx. Vous ouvrez GitHub, vous cliquez sur Releases, vous copiez-collez. Et 3 minutes plus tard, rebelote pour curl. Puis pour PHP. Sans parler du fait que dans votre script d'auto-update, vous avez hardcodé une "v3.2.1" qui dort là depuis 2023 parce que personne n'a pris le temps de mettre à jour le fichier. Lastversion , c'est le petit CLI Python signé Danila Vershinin qui remplace cette corvée par une seule ligne. V
     

Lastversion - Trouver la dernière version de n'importe quoi

23 avril 2026 à 08:37

Vous bossez sur un Dockerfile et vous avez besoin de la dernière version de nginx. Vous ouvrez GitHub, vous cliquez sur Releases, vous copiez-collez. Et 3 minutes plus tard, rebelote pour curl. Puis pour PHP. Sans parler du fait que dans votre script d'auto-update, vous avez hardcodé une "v3.2.1" qui dort là depuis 2023 parce que personne n'a pris le temps de mettre à jour le fichier.

Lastversion , c'est le petit CLI Python signé Danila Vershinin qui remplace cette corvée par une seule ligne. Vous tapez lastversion apache/incubator-pagespeed-ngx et vous récupérez le numéro de la dernière version.

Le truc marche sur GitHub, GitLab, BitBucket, PyPI, Wikipédia, les flux RSS, les plugins WordPress, Helm charts, Gitea, SourceForge... et même sur des sites qui publient leurs versions comme ils veulent, genre nginx.org.

La beauté du bazar, c'est qu'il comprend les humains, parce que, c'est vrai, les mainteneurs font un peu n'importe quoi avec leurs tags. Ils étiquettent release-1.2.3 au lieu de 1.2.3, ils marquent des release candidates en stable sans le faire exprès, ils changent de format entre v20150121 et v2.0.1 sans prévenir. lastversion détecte toutes ces incohérences et vous renvoie la véritable dernière stable, celle que vous vouliez dès le départ. C'est pénible à gérer à la main quand vous avez vingt dépendances à suivre. Maintenant c'est réglé tout seul avec ce petit bidule.

Et les sources exotiques, c'est tout un délire. lastversion windows vous crache le build Windows en cours, lastversion ios pour iOS, lastversion rocky vous renverra 8.4 et lastversion https://en.wikipedia.org/wiki/Rocky_Linux aussi, parce que le bidule va carrément parser la page Wikipédia pour vous.

Alors certains d'entre vous me diront que ce n'est pas utile au quotidien. Peut-être jusqu'au jour où vous devez scripter une vérif de version d'OS sans dépendre d'un outil système. Par contre, si vous enchaînez cinquante requêtes par heure sur un token GitHub anonyme, faudra pas s'étonner de manger un rate limit dans la tronche.

Côté one-liners qui tuent, y'a déjà de quoi faire.

wget $(lastversion --assets mautic/mautic) télécharge direct la dernière archive.

lastversion --pre Aircoookie/WLED --format assets --filter ESP32.bin -d ESP32.bin récupère le dernier firmware ESP32 WLED.

Pour Nginx, lastversion https://nginx.org --major stable renvoie 1.16.1 pendant que --major mainline renvoie 1.17.9.

Vous voyez l'idée, c'est du pipe-friendly pur jus.

Et le mode install, c'est un autre délire. Vous tapez lastversion install mailspring et hop, il récupère l'AppImage ou le RPM du dépôt, il l'installe, et c'est fini. Attention quand même, sur les dépôts un peu bordéliques il va parfois se vautrer sur le packaging et juste vous balancer le tarball brut. Bon, c'est pas la mort, vous dézippez à la main et vous passez à la suite...

Combiné avec cron, @daily /usr/bin/lastversion install mailspring -y et votre bureau sera toujours à jour sans passer par un store. Pour tous les outils qui ne sont ni dans apt, ni dans un snap, ni dans un flatpak, c'est l'alternative la plus propre à avoir sous la main.

L'install se fait via pip install lastversion sur à peu près tout, ou yum install lastversion après avoir ajouté le repo GetPageSpeed si vous êtes sur CentOS, RHEL, Rocky, Alma, Fedora ou Amazon Linux.

Le projet est publié sous licence BSD-2, codé en Python, et il y a aussi une API utilisable directement (from lastversion import latest) si vous préférez appeler ça dans vos scripts plutôt que de piper dans un subprocess.

Bref, un chouette outil à ranger entre vos redirections bash et votre gestionnaire SSH , catégorie petits trucs qui font gagner 10 minutes par semaine.

  • ✇Korben
  • WSL9x - Un Linux qui tourne dans un Windows 95
    Un Linux qui tourne dans un Windows 95, vous ne rêvez pas puisqu'un développeur solo du nom de Hailey Somerville, a sorti WSL9x, un "Windows 9x Subsystem for Linux" qui pousse encore plus loin la logique de Microsoft avec WSL. Le truc marche avec une simple commande wsl tapée dans le terminal MS-DOS, ce qui ouvre un pseudo-terminal Linux au beau milieu de votre Windows 9x. Pour les couleurs ANSI, il faudra charger un driver comme nnansi.com (c'est pas un nom de domain hein...) avant mais une foi
     

WSL9x - Un Linux qui tourne dans un Windows 95

22 avril 2026 à 05:53

Un Linux qui tourne dans un Windows 95, vous ne rêvez pas puisqu'un développeur solo du nom de Hailey Somerville, a sorti WSL9x, un "Windows 9x Subsystem for Linux" qui pousse encore plus loin la logique de Microsoft avec WSL.

Le truc marche avec une simple commande wsl tapée dans le terminal MS-DOS, ce qui ouvre un pseudo-terminal Linux au beau milieu de votre Windows 9x. Pour les couleurs ANSI, il faudra charger un driver comme nnansi.com (c'est pas un nom de domain hein...) avant mais une fois en place, vous avez un shell Linux qui tourne en coopératif à côté du système Microsoft. Pas besoin de redémarrer ni de vous lancer dans la mise en place d'un dual boot.

Sous le capot, c'est une bidouille assez rigolote. En fait, Hailey a patché le noyau Linux 6.19 dans sa variante user-mode, cross-compilé en i386 avec musl, puis intégré via Open Watcom v2 pour la partie Windows. Le code se compose à 63% de C et à 35% d'assembleur, ce qui donne une idée du niveau de bas-niveau qu'il faut pour faire tourner un kernel Linux en parallèle d'un Windows 95 ou 98.

Ensuite, tout ce qui est pagination, protection mémoire et ordonnancement préemptif tirent parti des capacités des deux OS en même temps. Linux gère ses processus invités, Windows arbitre en bas niveau, et les deux cohabitent sans se marcher sur les pieds. Ça permet comme ça de lancer vos outils Linux préférés sans jamais quitter votre session OuinOuin.

Pour reproduire ça chez vous, il vous faudra un cross-compilateur i386-linux-musl (musl-cross-make fait très bien le job), Open Watcom v2, et une image disque Windows 9x pré-installée. Vous configurez les variables WATCOM et LINUX via .envrc.example, puis vous buildez le kernel avec make defconfig ARCH=um SUBARCH=i386 KBUILD_DEFCONFIG=win9x suivi d'un make vmlinux.

Un dernier petit make à la racine du projet pour génèrer le hdd.img final, et en suite c'est tout prêt à booter dans un 86Box , PCem ou carrément une vraie bécane sous Windows 95.

Maintenant, ce projet est qualifié de "very messy" par son auteur car c'est encore un travail en cours, et pas du tout un WSL officiel prêt pour un usage stable. Le dépôt est sous GPL-3 donc forkable, mais la doc se résume au README, donc c'est encore un peu léger.

Par contre, si vous aimez les hacks rétro de l'extrême, WSL9x mérite un petit coup d'œil. Ça me rappelle ce sous-système Linux pour MS-DOS qu'un autre dev avait sorti il y a quelques années, qui était le même délire mais pour DOS pur. À côté, le WSL2 officiel de Microsoft fait hyper sérieux.

Donc si vous avez un vieux Pentium qui traîne dans un placard, c'est l'occasion parfaite de le dépoussiérer pour faire la chose la plus absurde du mois.

❌