O objetivo do LFS é o de construir um sistema em nível de fundação completo e utilizável—incluindo todos os pacotes necessários para replicar a ele mesmo—e fornecer uma base relativamente mínima a partir da qual personalizar um sistema mais completo baseado nas escolhas do(a) usuário(a). Isso não significa que o LFS é o menor sistema possível. Vários pacotes importantes estão inclusos que não são, falando estritamente, exigidos. A lista abaixo documenta as razões para cada pacote no livro ter sido incluído.
Acl
Esse pacote contém utilitários para administrar Listas de Controle de Acesso, as quais são usadas para definir direitos de acesso discricionariamente finamente refinados para arquivos e para diretórios.
Attr
Esse pacote contém aplicativos para gerenciar atributos estendidos sobre objetos do sistema de arquivos.
Autoconf
Esse pacote fornece aplicativos para produzir scripts de shell que podem configurar automaticamente o código fonte a partir de um modelo do(a) desenvolvedor(a). Frequentemente é necessário para reconstruir um pacote depois que o procedimento de construção tenha sido atualizado.
Automake
Esse pacote contém aplicativos para gerar arquivos Make a partir de um modelo. Frequentemente é necessário para reconstruir um pacote depois que o procedimento de construção tenha sido atualizado.
Bash
Esse pacote satisfaz uma exigência central do LSB para fornecer uma interface Bourne Shell para o sistema. Foi escolhido em vez de outros pacotes de shell por causa do uso comum e capacidades extensas dele.
Bc
Esse pacote fornece uma linguagem de processamento numérico com precisão arbitrária. Satisfaz uma exigência para construir o núcleo do Linux.
Binutils
Esse pacote fornece um vinculador, um montador e outras ferramentas para manusear arquivos objeto. Os aplicativos nesse pacote são necessários para compilar a maioria dos pacotes em um sistema LFS.
Bison
Esse pacote contém a versão GNU do yacc (Yet Another Compiler Compiler) necessário para construir vários dos aplicativos do LFS.
Bzip2
Esse pacote contém aplicativos para comprimir e descomprimir arquivos. É exigido para descomprimir muitos pacotes do LFS.
Check
Esse pacote fornece um equipamento de teste para outros aplicativos.
Coreutils
Esse pacote contém um número de aplicativos essenciais para visualizar e manipular arquivos e diretórios. Esses aplicativos são necessários para o gerenciamento de arquivos por linha de comando e são necessários para os procedimentos de instalação de cada pacote no LFS.
D-Bus
Esse pacote contém aplicativos para implementar um sistema de barramento de mensagem, uma maneira simples para aplicativos conversarem com um outro.
DejaGNU
Esse pacote fornece uma estrutura para testar outros aplicativos.
Diffutils
Esse pacote contém aplicativos que mostram as diferenças entre arquivos ou diretórios. Esses aplicativos podem ser usados para criar remendos e também são usados em muitos procedimentos de construção dos pacotes.
E2fsprogs
Esse pacote fornece utilitários para manusear os sistemas de arquivos ext2, ext3 e ext4. Esses são os sistemas de arquivos mais comuns e amplamente testados que o Linux suporta.
Expat
Esse pacote produz uma biblioteca de análise relativamente pequena de XML. É exigida pelo módulo do Perl XML::Parser.
Expect
Esse pacote contém um aplicativo para realizar diálogos com scripts com outros aplicativos interativos. É comumente usado para testar outros pacotes.
File
Esse pacote contém um utilitário para determinar o tipo de um dado arquivo ou arquivos. Uns poucos pacotes precisam dele nos scripts de construção deles.
Findutils
Esse pacote fornece aplicativos para encontrar arquivos em um sistema de arquivos. É usado em muitos scripts de construção dos pacotes.
Flex
Esse pacote contém um utilitário para gerar aplicativos que reconhecem padrões em texto. É a versão GNU do aplicativo lex (lexical analyzer). É exigido para construir vários pacotes do LFS.
Gawk
Esse pacote fornece aplicativos para manipular arquivos de texto. É a versão GNU do awk (Aho-Weinberg-Kernighan). É usado em muitos outros scripts de construção dos pacotes.
GCC
Esse é o Gnu Compiler Collection. Contém os compiladores C e C++ assim como vários outros não construídos pelo LFS.
GDBM
Esse pacote contém a biblioteca GNU Database Manager. É usado por um outro pacote do LFS, Man-DB.
Gettext
Esse pacote fornece utilitários e bibliotecas para a internacionalização e localização de muitos pacotes.
Glibc
Esse pacote contém a biblioteca C principal. Aplicativos Linux não executarão sem ela.
GMP
Esse pacote fornece bibliotecas matemáticas que fornecem funções úteis para aritmética de precisão arbitrária. É necessário para construir o GCC.
Gperf
Esse pacote produz um aplicativo que gera uma função perfeita de resumo a partir de um conjunto de chaves. É exigido pelo Systemd.
Grep
Esse pacote contém aplicativos para pesquisar ao longo de arquivos. Esses aplicativos são usados pela maioria dos scripts de construção dos pacotes.
Groff
Esse pacote contribui com aplicativos para processar e formatar texto. Uma função importante desses aplicativos é a de formatar páginas de manual.
GRUB
Esse pacote é o Grand Unified Boot Loader. É o mais flexível dos vários carregadores de inicialização disponíveis.
Gzip
Esse pacote contém aplicativos para comprimir e descomprimir arquivos. É necessário para descomprimir muitos pacotes no LFS.
Iana-etc
Esse pacote fornece dados para serviços e protocolos de rede de comunicação. É necessário para habilitar recursos adequados da rede de comunicação.
Inetutils
Esse pacote fornece aplicativos para administração básica da rede de comunicação.
Intltool
Esse pacote contribui com ferramentas para extrair sequências de caracteres traduzíveis a partir de arquivos fonte.
IProute2
Esse pacote contém aplicativos para redes de comunicação IPv4 e IPv6 básicas e avançadas. Ele foi escolhido em vez dos outros pacotes comuns de ferramentas de rede de comunicação (net-tools) pelos recursos de IPv6 dele.
Jinja2
Esse pacote é um módulo do Python para modelagem de texto. É exigido para construir o Systemd.
Kbd
Esse pacote produz arquivos de tabelas chave, utilitários de teclado para teclados que não sejam estadunidenses e um número de fontes de console.
Kmod
Esse pacote fornece aplicativos necessários para administrar os módulos do núcleo Linux.
Less
Esse pacote contém um visualizador de arquivo de texto muito bom que permite rolar para cima ou para baixo quando se visualiza um arquivo. Muitos pacotes o usam para paginar a saída gerada.
Libcap
Esse pacote implementa as interfaces do espaço de usuário(a) para os recursos POSIX 1003.1e disponíveis nos núcleos Linux.
Libelf
O projeto elfutils fornece bibliotecas e ferramentas para arquivos ELF e dados DWARF. A maior parte dos utilitários nesse pacote está disponível em outros pacotes, porém a biblioteca é necessária para construir o núcleo Linux usando a configuração padrão (e mais eficiente).
Libffi
Esse pacote implementa uma interface de programação portável, de alto nível, para várias convenções de chamada. Alguns aplicativos possivelmente não saibam, ao tempo da compilação, quais argumentos são para serem passados para uma função. Por exemplo, um interpretador possivelmente possa ser informado, ao tempo de execução, acerca do número e dos tipos de argumentos usados para chamar uma dada função. Libffi pode ser usada em tais aplicativos para fornecer uma ponte a partir do aplicativo interpretador para o código compilado.
Libpipeline
O pacote Libpipeline fornece uma biblioteca para manipular pipelines de subprocessos de uma maneira flexível e conveniente. Ele é exigido pelo pacote Man-DB.
Libtool
Esse pacote contém o script GNU de suporte a bibliotecas genéricas. Ele esconde a complexidade do uso de bibliotecas compartilhadas em uma interface consistente e portável. Ele é necessário para as suítes de testes em outros pacotes do LFS.
Libxcrypt
Esse pacote fornece a biblioteca libcrypt
necessária para vários pacotes
(notavelmente, Shadow) para resumir senhas. Ela substitui a
implementação obsoleta libcrypt
na Glibc.
Núcleo Linux
Esse pacote é o Sistema Operacional. Ele é o Linux no ambiente GNU/Linux.
M4
Esse pacote fornece um processador geral de macro de texto, útil como uma ferramenta de construção para outros aplicativos.
Make
Esse pacote contém um aplicativo para direcionar a construção de pacotes. Ele é exigido por quase todos os pacotes no LFS.
MarkupSafe
Esse pacote é um módulo do Python para processar sequências de caracteres em HTML/XHTML/XML com segurança. Jinja2 exige esse pacote.
Man-DB
Esse pacote contém aplicativos para encontrar e visualizar páginas de manual. Ele foi escolhido em vez do pacote man por causa dos recursos superiores de internacionalização dele. Ele fornece o aplicativo man.
Páginas-Manual
Esse pacote fornece o conteúdo atual das páginas de manual básicas do Linux.
Meson
Esse pacote fornece uma ferramenta de software para automatizar a construção de software. O objetivo principal do Meson é o de minimizar a quantidade de tempo que desenvolvedores(as) de software precisam investir configurando um sistema de construção. Ele é exigido para construir o Systemd, bem como muitos pacotes do BLFS.
MPC
Esse pacote fornece funções aritméticas para números complexos. Ele é exigido pelo GCC.
MPFR
Esse pacote contém funções para aritmética de precisão múltipla. Ele é exigido pelo GCC.
Ninja
Esse pacote equipa um sistema pequeno de construção com um foco em velocidade. Ele é projetado para ter os arquivos de entrada gerada dele gerados por um sistema de construção de nível mais alto e para executar construções o mais rápido possível. Esse pacote é exigido pelo Meson.
Ncurses
Esse pacote contém bibliotecas para o manuseio, independente de terminal, de telas de caractere. Frequentemente é usado para fornecer controle de cursor para um sistema com menus. Ele é necessitado por um número de pacotes no LFS.
Openssl
Esse pacote fornece ferramentas e bibliotecas de gerenciamento relacionadas à criptografia. Essas fornecem funções criptográficas para outros pacotes, incluindo o núcleo Linux.
Patch
Esse pacote contém um aplicativo para modificar ou criar arquivos aplicando um arquivo de remendo tipicamente criado pelo aplicativo diff. Ele é necessitado pelo procedimento de construção para vários pacotes do LFS.
Perl
Esse pacote é um interpretador para a linguagem de tempo de execução PERL. Ele é necessário para a instalação e suítes de teste de vários pacotes do LFS.
Pkgconf
Esse pacote contém um aplicativo que ajuda a configurar sinalizadores de compilador e de vinculador para bibliotecas de desenvolvimento. O aplicativo pode ser usado como um substituto imediato do pkg-config, que é necessário para o sistema de construção de muitos pacotes. Ele é mantido mais ativamente e um pouco mais rápido que o pacote Pkg-config original.
Procps-NG
Esse pacote contém aplicativos para monitorar processos. Esses aplicativos são úteis para administração de sistema e também são usados pelos scripts de inicialização do LFS.
Psmisc
Esse pacote produz aplicativos para mostrar informações acerca de processos em execução. Esses aplicativos são úteis para administração de sistema.
Python 3
Esse pacote fornece uma linguagem interpretada que tem uma filosofia de projeto que enfatiza a legibilidade de código.
Readline
Esse pacote é um conjunto de bibliotecas que oferecem recursos de edição e de histórico de linha de comando. Ele é usado pelo Bash.
Sed
Esse pacote permite edição de texto sem abri-lo em um editor de texto. Ele também é necessitado por muitos scripts de configuração dos pacotes do LFS.
Shadow
Esse pacote contém aplicativos para manusear senhas seguramente.
Systemd
Esse pacote fornece um programa init e vários recursos adicionais de inicialização e de controle de sistema como uma alternativa ao SysVinit. Ele é usado por muitas distribuições do Linux.
Tar
Esse pacote fornece recursos de arquivamento e de extração de virtualmente todos os pacotes usados no LFS.
Tcl
Esse pacote contém a Tool Command Language usada em muitas suítes de teste.
Texinfo
Esse pacote fornece aplicativos para ler, escrever e converter páginas info. Ele é usado nos procedimentos de instalação de muitos pacotes do LFS.
Util-linux
Esse pacote contém aplicativos utilitários diversos. Entre eles estão utilitários para manusear sistemas de arquivos, consoles, partições e mensagens.
Vim
Esse pacote fornece um editor. Ele foi escolhido por causa da compatibilidade dele com o clássico editor vi e o número gigante de recursos poderosos dele. Um editor é uma escolha muito pessoal para muitas(os) usuárias(os). Qualquer outro editor pode ser substituído, se você desejar.
Wheel
Esse pacote fornece um módulo do Python que é a implementação de referência do padrão de empacotamento roda do Python.
XML::Parser
Esse pacote é um módulo do Perl que interage com o Expat.
XZ Utils
Esse pacote contém aplicativos para comprimir e descomprimir arquivos. Ele fornece a maior compressão geralmente disponível e é útil para descomprimir pacotes no formato XZ ou LZMA.
Zlib
Esse pacote contém rotinas de compressão e de descompressão usadas por alguns aplicativos.
Zstd
Esse pacote fornece rotinas de compressão e de descompressão usadas por alguns aplicativos. Ele fornece taxas altas de compressão e um intervalo muito amplo de intercâmbios entre compressão / velocidade.