Linux from Scratch : projet d'apprentissage décortiquant la construction d'une distribution
- Linux From Scratch (LFS) reste un projet historique proposant des instructions manuelles pour assembler une distribution Linux entièrement à partir du code source.
- La dernière version 13.1 (septembre 2026) marque la poursuite du projet, avec une déclinaison systemd par défaut et une ancienne branche sysvinit dépréciée.
- Le débat HN soulève des questions persistantes : LFS est-il vraiment pédagogique, ou reste-t-il une succession mécanique de compilation sans compréhension profonde ?
- Le projet inclut aujourd'hui des variantes (BLFS, ALFS, GLFS, MLFS) et une infrastructure de documentation, mais intéresse essentiellement un public très niche.
Ce que dit la source
Linux From Scratch propose un guide étape par étape pour construire un système Linux personnalisé entièrement depuis le code source. Le projet consiste en un livre principal (LFS) et plusieurs projets dérivés (BLFS pour étendre l'installation, ALFS pour l'automatisation, GLFS pour les jeux, MLFS pour le support 32-bit, SLFS pour des extensions supplémentaires, plus des Hints et un dépôt centralisé de patches). La version 13.1 a été annoncée pour septembre 2026.
- L'infrastructure LFS comprend plusieurs sous-projets spécialisés : Beyond LFS pour l'extension, Automated LFS pour l'automatisation, Gaming LFS avec Steam/Wine, Multilib LFS pour 32-bit, Supplemental LFS, Hints, et un dépôt centralisé de patches
- La version stable 13.1 fonctionne avec systemd par défaut (la dernière version sysvinit, 12.4, n'est plus maintenue)
- Le projet date de 1998 et bénéficie d'une maintenance continue depuis plus de 25 ans
Dans les commentaires
Débat partagé : reconnaissance pédagogique affaiblie par des critiques sérieuses sur la méthode.
- Un commentateur rapporte qu'après avoir suivi LFS manuellement sur plusieurs jours, il n'a pas acquis la compréhension conceptuelle espérée : c'est devenu un exercice mécanique de compilation sans raison d'être, comparable à suivre une recette sans comprendre les ratios. Il critique l'ordre pédagogique (par exemple, le bootloader ajouté à la fin plutôt qu'en début, même s'il est chargé en premier au démarrage).
- Plusieurs commentateurs contestent l'utilité pédagogique globale : un estime que LFS gaspille du temps qui pourrait être consacré à l'apprentissage réel de la conception des systèmes d'exploitation, se réduisant à 'télécharger et exécuter ./configure; make; make install cent fois'.
- Un autre critique la qualité globale du projet et de la documentation du noyau Linux, les qualifiant tous deux de 'réellement, vraiment mauvaise'.
- Quelques commentateurs proposent des alternatives : Gentoo (qui offrirait une exposition similaire mais plus riche sur 20+ ans), un outil de conteneurisation expérimental (stagex.tools), ou un dépôt de distributions bootstrappables depuis les sources.
- Un observateur relève que ce fil de discussion sur LFS est répétitif : l'URL du projet revient régulièrement sur HN depuis 2009, sans évolution significative du débat.
- Un seul commentateur se souvient d'une expérience positive (années 2000-2002), tandis qu'un autre juge qu'une approche itérative (bootloader → kernel → initramfs → graduel) serait plus pédagogique que l'approche actuelle.
Alternatives citées : Gentoo (gestion de dépendances plus riche que LFS), stagex.tools (approche conteneurisée alternative), liste des distributions bootstrappables (https://github.com/vasi/bootstrappable-distros)
Notre lecture
LFS demeure un projet fonctionnel et pérenne, mais son utilité pédagogique reste contestée. Pour les développeurs cherchant à comprendre les couches basses d'une distribution, Gentoo offre probablement une alternative plus moderne et progressive. Pour les architectes système ou SRE souhaitant explorer une construction Linux minimale, un projet comme AOSP ou une approche conteneurisée (Nix, podman) répond mieux aux usages actuels. À titre d'exercice intellectuel pur, LFS conserve une valeur, mais le coût-bénéfice (plusieurs jours de compilation pour une compréhension mécanique) décourage à juste titre la majorité des nouveaux utilisateurs. Aucune action immédiate : c'est un outil de curiosité, pas un élément de stack production.