Comme indiqué plus haut, le but de LFS est de construire les fondations complètes et utilisables d'un système. Il inclut tous les paquets nécessaires pour être répliqué tout en fournissant une base relativement minimale vous permettant de personnaliser un système plus complet basé sur les choix de l'utilisateur. Cela ne veut pas dire que LFS est le plus petit système possible. Plusieurs paquets importants sont inclus et ne sont pas absolument indispensables. Les listes ci-dessous documentent la raison pour laquelle chaque paquet se trouve dans le livre.
Autoconf
Le paquet Autoconf contient des programmes produisant des scripts shell qui configurent automatiquement le code source à partir du modèle fourni par le développeur. Il est souvent requis pour reconstruire un paquet après une mise à jour des procédures de construction.
Automake
Ce paquet contient des programmes pour générer des fichiers Make à partir d'un modèle. Il est souvent requis pour reconstruire un paquet après des mises à jour des procédures de construction.
Bash
Ce paquet satisfait une exigence du coeur de la LSB pour fournir une interface Bourne Shell au système. Il a été choisi parmi d'autres shells du fait de son utilisation répandue et de ses fonctionnalités étendues au-delà des fonctions d'un shell de base.
Binutils
Ce paques contient un éditeur de liens, un assembleur et d'autres outils de gestion des fichiers objets. Les programmes de ce paquet sont nécessaires pour compiler la plupart des paquets d'un système LFS et allant au-delà.
Bison
Ce paquet contient la version GNU de yacc (Yet Another Compiler Compiler, encore un nouveau compilateur) requis pour construire plusieurs autres programmes de LFS.
Bzip2
Ce paquet contient des programmes de compression et de décompression de fichiers. Il est nécessaire pour décompresser plusieurs paquets de LFS.
Coreutils
Ce paquet contient un certain nombre de paquets essentiels pour visualiser et manipuler des fichiers et des répertoires. Ces programmes sont nécessaires pour la gestion de fichiers en ligne de commande et ils sont nécessaires pour les procédures d'installation de de chaque paquet de LFS.
DejaGNU
Ce paquet contient un environnement de travail pour tester d'autres programmes. Il n'est installé que dans la chaîne d'outils temporaires.
Diffutils
Ce paquet contient des programmes qui montrent les différences entre des fichiers et des répertoires. On peut utiliser ces programmes pour créer des correctifs et ils sont aussi utilisés dans de nombreuses procédures de construction de paquets.
Expect
Le paquet Expect contient un programme pour réaliser des dialogues scriptés avec d'autres programmes interactifs. Il est souvent utilisé pour tester d'autres paquets. Il n'est installé que pour la chaîne d'outils temporaire.
E2fsprogs
Ce paquet contient les outils de gestion des systèmes de fichiers ext2, ext3 et ext4. Ce sont les systèmes de fichiers les plus courants et les plus largement testés supportés par Linux.
File
Ce paquet contient un outil pour déterminer le type d'un ou plusieurs fichiers donnés. Quelques paquets en ont besoin pour se construire.
Findutils
Ce paquet contient des programmes pour rechercher des fichiers sur un système de fichiers. Il est utilisé dans les scripts de construction de nombreux paquets.
Flex
Ce paquet contient un outil de génération de programmes qui reconnaît des modèles de texte. C'est la version GNU du programme lex (lexical analyzer, analyseur lexical). Il est nécessaire pour construire plusieurs paquets LFS.
Gawk
Ce paquet contient des programmes de manipulation de fichiers texte. C'est la version GNU du programme awk (Aho-Weinberg-Kernighan). Il est utilisé dans les scripts de construction de nombreux autres paquets.
Gcc
Ce paquet est le Gnu Compiler Collection. Il contient les compilateurs C et C++ ainsi que d'autres qui ne sont pas construits dans LFS.
GDBM
Ce paquet contient la bibliothèque GNU Database Manager (gestionnaire de base de données GNU). Il est utilisé par un autre paquet de LFS : Man-DB.
Gettext
Ce paquet contient des outils et des bibliothèques pour l'internationalisation et la localisation de nombreux paquets.
Glibc
Le paquet contient la bibliothèque C principale. Les programmes Linux ne peuvent pas s'exécuter sans elle.
GMP
Ce paquet contient des bibliothèques mathématiques qui fournissent des fonctions utiles pour de l'arithmétique en précision arbitraire. Il est nécessaire pour construire Gcc.
Grep
Ce paquet contient des programmes de recherche au sein de fichiers. Ces programmes sont utilisés par la plupart des scripts de construction des paquets.
Groff
Le paquet Groff contient des programmes de formatage de texte. Une des fonctions importantes de ces programmes est le formatage des pages de man.
GRUB
Ce paquet est le chargeur Grand Unified Boot. Ce n'est pas le seul chargeur de démarrage disponible, mais c'est le plus flexible.
Gzip
Ces paquets contiennent des programmes de compression et de décompression de fichiers. Il est nécessaire pour décompresser de nombreux paquets sur LFS et au-delà.
Iana-etc
Ce paquet fournit des données pour des services et des protocoles réseau. Il est nécessaire pour activer les bonnes fonctionnalités de réseau.
Inetutils
Ce paquet contient des programmes d'administration réseau de base.
IProute2
Ce paquet contient des programmes pour du réseau de base ou avancé en IPv4 et IPv6. Il a été choisi parmi les paquets d'outils réseau courants (net-tools) pour ses possibilités IPv6.
Kbd
Ce paquet contient des fichiers de tables de touches, des outils claviers pour les claviers non américains et un certain nombre de polices pour console.
Less
Ce paquet contient un très bon visualiseur de texte qui permet le défilement vers le haut ou le bas lors de la visualisation d'un fichier. Il est aussi utilisé par Man-DB pour visualiser des pages de man.
Libtool
Ce paquet contient le script de support de la bibliothèque générique GNU. Il englobe la complexité de l'utilisation des bibliothèques partagées dans une interface cohérente et portable. Il est exigé par les suites de tests d'autres paquets de LFS.
Noyau Linux
Ce paquet est le système d'exploitation. C'est Linux dans l'environnement GNU/Linux.
M4
Le paquet M4 contient un processeur général de macros textes utile en tant qu'outil de construction d'autres programmes.
Make
Ce paquet contiennent un programme de gestion de la construction des paquets. Il est requis par presque tous les paquets de LFS.
Man-DB
Ce paquet contient des programmes de recherche et de visualisation de pages de man. Il a été préféré au paquet man du fait d'une capacité d'internationalisation supérieure. Il fournit le programme man.
Man-pages
Ce paquet contient le contenu final des pages de man de base de Linux.
Module-Init-Tools
Ce paquet contient des programmes nécessaires pour administrer les modules du noyau Linux.
MPC
Ce paquet contient des fonctions pour le calcul de nombres complexes. Il est exigé par Gcc.
MPFR
Le paquet MPFR contient des fonctions pour des maths à précision multiple. Il est exigé par Gcc.
Ncurses
Le paquet Ncurses contient les bibliothèques de gestion des écrans type caractère, indépendant des terminaux. Il est souvent utilisé pour fournir le contrôle du curseur dans un système en menus. Il est exigé par un certain nombre de paquets de LFS.
Patch
Ce paquet contient un programme pour modifier ou créer des fichiers en appliquant un fichier de correctif créé en général par le programme diff. Il est requis par la procédure de construction de plusieurs paquets LFS.
Perl
Ce paquet est un interpréteur du langage PERL en cours d'exécution. Il est nécessaire pour l'installation et les suites de tests de plusieurs paquets LFS.
Pkg-config
Ce paquet contient un programme pour donner le chemin des en-têtes et/ou les chemins vers la bibliothèque aux outils de construction pendant les processus configure et make. Il est requis par beaucoup de paquets LFS.
Procps
Ce paquet contient des programmes de surveillance des processus. Ces programmes sont utiles pour l'administration système et ils sont aussi utilisés par les scripts de démarrage LFS.
Psmisc
Ce paquet contient des programmes d'affichage d'informations sur les processus en cours d'exécution. Ces programmes sont utiles pour l'administration système.
Readline
Ce paquet est un ensemble de bibliothèques qui offre des fonctionnalités d'édition et d'historique de la ligne de commande. Il est utilisé par Bash.
Sed
Ce paquet permet d'entrer du texte sans l'ouvrir dans un éditeur de texte. Il est aussi requis par la plupart des scripts de configuration des paquets LFS.
Shadow
Ce paquet contient des programmes de gestion sécurisée des mots de passe.
Sysklogd
Ce paquet contient des programmes de journalisation des messages système, tels que ceux donnés par le noyau ou les processus démons lorsque se produisent des événements inhabituels.
Sysvinit
Ce paquet fournit le programme init qui est le parent de tous les autres processus du système Linux.
Tar
Ce paquet fournit des fonctionnalités d'archivage et d'extraction de potentiellement tous les paquets utilisés dans LFS.
Tcl
Ce paquet contient le Tool Command Language utilisé dans beaucoup de suites de tests des paquets LFS. Il n'est installé que dans la chaîne d'outils temporaire.
Texinfo
Ce paquet contient des programmes de lecture, d'écriture et de conversion de pages info. Il est utilisé dans les procédures d'installation de beaucoup de paquets LFS.
Udev
Ce paquet contient des programmes pour la création dynamique de nœuds de périphériques. C'est une alternative à la création de milliers de périphériques statiques dans le répertoire /dev.
Util-linux-ng
Ce paquet contient des programmes généraux. Parmi eux, se trouvent des outils de gestion des systèmes de fichiers, de consoles, de partitions et de messages.
Vim
Ce paquet contient un éditeur. Il a été choisi pour sa compatibilité avec l'éditeur vi classique et son grand nombre de fonctionnalités puissantes. Un éditeur est un choix très personnel de chaque utilisateur et vous pouvez le remplacer par n'importe quel éditeur si vous le désirez.
Zlib
Ce paquet contient des routines de compression et de décompression utilisées par quelques programmes.