Motivația pachetelor din carte
După cum sa menționat mai devreme, scopul LFS este de a construi un sistem complet și utilizabil la nivel de fundație. Aceasta include toate pachetele necesare pentru a se replica, oferind în același timp o bază relativ minimă de la care să personalizați un sistem mai complet bazat pe alegerile utilizatorului. Acest lucru nu înseamnă că LFS este cel mai mic sistem posibil. Sunt incluse mai multe pachete importante care nu sunt strict necesare. Listele de mai jos documentează rațiunea fiecărui pachet din carte.
• Acl
Acest pachet conține utilitare pentru administrarea listelor de control al accesului, care sunt utilizate pentru a defini drepturi de acces discreționare mai precise pentru fișiere și directoare.
• Attr
Acest pachet conține programe pentru administrarea atributelor extinse pe obiectele sistemului de fișiere.
• Autoconf
Acest pachet conține programe pentru producerea de scripturi shell care pot configura automat codul sursă din șablonul unui dezvoltator. Este adesea necesară reconstruirea unui pachet după actualizările procedurilor de construire.
• Automake
Acest pachet conține programe pentru generarea de fișiere Creați dintr-un șablon. Este adesea necesară reconstruirea unui pachet după actualizările procedurilor de construire.
• Bash
Acest pachet satisface o cerință de bază LSB pentru a oferi sistemului o interfață Bourne Shell. A fost ales față de alte pachete shell din cauza utilizării sale comune și a capabilităților extinse dincolo de funcțiile shell de bază.
• Bc
Acest pachet oferă un limbaj de procesare numerică de precizie arbitrară. Îndeplinește o cerință necesară la construirea nucleului Linux.
• Binutils
Acest pachet conține un linker, un asamblator și alte instrumente pentru manipularea fișierelor obiect. Programele din acest pachet sunt necesare pentru a compila majoritatea pachetelor într-un sistem LFS și nu numai.
• Zimbri
Acest pachet conține versiunea GNU a yacc (Yet Another Compiler Compiler) necesară pentru a construi mai multe alte programe LFS.
• Bzip2
Acest pachet conține programe pentru comprimarea și decomprimarea fișierelor. Este necesar să decomprimați multe pachete LFS.
• Verifica
Acest pachet conține un cablaj de testare pentru alte programe. Este instalat doar în lanțul de instrumente temporar.
• Coreutils
Acest pachet conține o serie de programe esențiale pentru vizualizarea și manipularea fișierelor și directoarelor. Aceste programe sunt necesare pentru gestionarea fișierelor din linia de comandă și sunt necesare pentru procedurile de instalare a fiecărui pachet din LFS.
• DejaGNU
Acest pachet conține un cadru pentru testarea altor programe. Este instalat doar în lanțul de instrumente temporar.
• Diffutils
Acest pachet conține programe care arată diferențele dintre fișiere sau directoare. Aceste programe pot fi folosite pentru a crea patch-uri și sunt, de asemenea, folosite în procedurile de construire a multor pachete.
• E2fsprogs
Acest pachet conține utilitarele pentru gestionarea sistemelor de fișiere ext2, ext3 și ext4. Acestea sunt cele mai comune și mai bine testate sisteme de fișiere pe care le acceptă Linux.
• Eudev
Acest pachet este un manager de dispozitive. Acesta controlează dinamic intrările din directorul /dev pe măsură ce dispozitivele sunt adăugate sau eliminate din sistem.
• Expat
Acest pachet conține o bibliotecă de analiză XML relativ mică. Este cerut de modulul XML::Parser Perl.
• Așteptați
Acest pachet conține un program pentru desfășurarea dialogurilor scriptate cu alte programe interactive. Este folosit în mod obișnuit pentru testarea altor pachete. Este instalat doar în lanțul de instrumente temporar.
• Fișier
Acest pachet conține un utilitar pentru a determina tipul unui fișier sau fișiere date. Câteva pachete au nevoie de el pentru a se construi.
• Findutils
Acest pachet conține programe pentru a găsi fișiere într-un sistem de fișiere. Este folosit în scripturile de compilare ale multor pachete.
• Contracta
Acest pachet conține un utilitar pentru generarea de programe care recunosc modele în text. Este versiunea GNU a programului lex (analizator lexical). Este necesar pentru a construi mai multe pachete LFS.
• Gawk
Acest pachet conține programe pentru manipularea fișierelor text. Este versiunea GNU a awk (Aho-Weinberg-Kernighan). Este folosit în multe alte scripturi de construire a pachetelor.
• Gcc
xii
Acest pachet este Gnu Compiler Collection. Conține compilatoarele C și C++, precum și alte câteva care nu sunt construite de LFS.
• GDBM
Acest pachet conține biblioteca GNU Database Manager. Este folosit de un alt pachet LFS, Man-DB.
• Gettext
Acest pachet conține utilitare și biblioteci pentru internaționalizarea și localizarea a numeroase pachete.
• Glibc
Acest pachet conține biblioteca principală C. Programele Linux nu ar rula fără el.
• GMP
Acest pachet conține biblioteci de matematică care oferă funcții utile pentru aritmetica de precizie arbitrară. Este necesar pentru a construi Gcc.
• Gperf
Acest pachet conține un program care generează o funcție hash perfectă dintr-un set de chei. Este necesar pentru Eudev.
• Grep
Acest pachet conține programe pentru căutarea prin fișiere. Aceste programe sunt utilizate de majoritatea scripturilor de compilare ale pachetelor.
• Groff
Acest pachet conține programe pentru procesarea și formatarea textului. O funcție importantă a acestor programe este formatarea paginilor de manual.
• GRUB
Acest pachet este Grand Unified Boot Loader. Este unul dintre mai multe încărcătoare de pornire disponibile, dar este cel mai flexibil.
• Gzip
Acest pachet conține programe pentru comprimarea și decomprimarea fișierelor. Este necesar pentru a decomprima multe pachete în LFS și nu numai.
• Iana-etc
Acest pachet oferă date pentru servicii și protocoale de rețea. Este necesar pentru a activa capabilități adecvate de rețea.
• Inetutils
Acest pachet conține programe pentru administrarea de bază a rețelei.
• Intltool
Acest pachet conține instrumente pentru extragerea șirurilor de caractere traducibile din fișierele sursă.
• IProute2
Acest pachet conține programe pentru rețele IPv4 și IPv6 de bază și avansate. A fost ales față de celălalt pachet comun de instrumente de rețea (net-tools) pentru capabilitățile sale IPv6.
• Kbd
Acest pachet conține fișiere cu tabel de taste, utilitare de tastatură pentru tastaturi din afara SUA și o serie de fonturi pentru consolă.
• Kmod
Acest pachet conține programe necesare pentru a administra modulele kernel-ului Linux.
• Mai puțin
Acest pachet conține un vizualizator de fișiere text foarte frumos care permite derularea în sus sau în jos atunci când vizualizați un fișier. De asemenea, este folosit de Man-DB pentru vizualizarea paginilor de manual.
• Libcap
Acest pachet implementează interfețele spațiului utilizator pentru capabilitățile POSIX 1003.1e disponibile în nucleele Linux.
• Libelf
Proiectul elfutils oferă biblioteci și instrumente pentru fișierele ELF și datele DWARF. Cele mai multe utilități din acest pachet sunt disponibile în alte pachete, dar biblioteca este necesară pentru a construi nucleul Linux folosind configurația implicită (și cea mai eficientă).
• Libffi
Acest pachet implementează o interfață de programare portabilă, la nivel înalt, la diferite convenții de apelare. Este posibil ca unele programe să nu știe în momentul compilării ce argumente trebuie să fie transmise unei funcții. De exemplu, unui interpret i se poate spune în timpul execuției despre numărul și tipurile de argumente folosite pentru a apela o anumită funcție. Libffi poate fi folosit în astfel de programe pentru a oferi o punte de la programul interpretor la codul compilat.
• Libipeline
Pachetul Libpipeline conține o bibliotecă pentru manipularea conductelor de subprocese într-un mod flexibil și convenabil. Este cerut de pachetul Man-DB.
• Libtool
Acest pachet conține scriptul de suport pentru biblioteci generice GNU. Înglobează complexitatea utilizării bibliotecilor partajate într-o interfață coerentă și portabilă. Este nevoie de suitele de testare din alte pachete LFS.
• Kernel Linux
Acest pachet este sistemul de operare. Este Linux în mediul GNU/Linux.
• M4
Acest pachet conține un procesor general de macro-text util ca instrument de compilare pentru alte programe.
• Face
Acest pachet conține un program pentru direcționarea construirii pachetelor. Este cerut de aproape fiecare pachet din LFS.
• Man-DB
Acest pachet conține programe pentru găsirea și vizualizarea paginilor de manual. A fost ales în locul pachetului man datorită capacităților superioare de internaționalizare. Furnizează programul de om.
• Pagini de manual
Acest pachet conține conținutul real al paginilor de manual Linux de bază.
• Meson
Acest pachet oferă un instrument software pentru automatizarea construirii de software. Scopul principal pentru Meson este de a minimiza timpul necesar dezvoltatorilor de software pentru a-și petrece configurarea sistemului de construcție.
• MPC
Acest pachet conține funcții pentru aritmetica numerelor complexe. Este cerut de Gcc.
• MPFR
Acest pachet conține funcții pentru aritmetică de precizie multiplă. Este cerut de Gcc.
•Ninja
Acest pachet conține un mic sistem de construcție cu accent pe viteză. Este conceput pentru a avea fișierele de intrare generate de un sistem de compilare de nivel superior și pentru a rula versiunile cât mai repede posibil.
• Nurses
Acest pachet conține biblioteci pentru manipularea independentă de terminal a ecranelor de caractere. Este adesea folosit pentru a oferi controlul cursorului pentru un sistem de meniu. Este nevoie de un număr de pachete din LFS.
• Openssl
Acest pachet oferă instrumente de management și biblioteci legate de criptografie. Acestea sunt utile pentru furnizarea de funcții criptografice altor pachete, inclusiv nucleului Linux.
• Patch
Acest pachet conține un program pentru modificarea sau crearea fișierelor prin aplicarea a plasture fișier creat de obicei de programul diff. Este necesar pentru procedura de construire pentru mai multe pachete LFS.
• Perl
Acest pachet este un interpret pentru limbajul de rulare PERL. Este necesar pentru instalarea și suitele de testare a mai multor pachete LFS.
• Pkg-config
Acest pachet oferă un program pentru a returna metadate despre o bibliotecă sau un pachet instalat.
• Procps-NG
Acest pachet conține programe pentru monitorizarea proceselor. Aceste programe sunt utile pentru administrarea sistemului și sunt utilizate și de LFS Bootscripts.
• Psmisc
Acest pachet conține programe pentru afișarea informațiilor despre procesele care rulează. Aceste programe sunt utile pentru administrarea sistemului.
• Python 3
Acest pachet oferă un limbaj interpretat care are o filozofie de design care pune accent pe lizibilitatea codului.
• Citeste linia
Acest pachet este un set de biblioteci care oferă posibilități de editare în linie de comandă și istoric. Este folosit de Bash.
• Sed
Acest pachet permite editarea textului fără a-l deschide într-un editor de text. De asemenea, este nevoie de majoritatea scripturilor de configurare ale pachetelor LFS.
• Umbra
Acest pachet conține programe pentru gestionarea parolelor într-un mod sigur.
Linux de la zero - Versiunea 9.0
• Sysklogd
Acest pachet conține programe pentru înregistrarea mesajelor de sistem, cum ar fi cele date de procesele kernel sau demon atunci când apar evenimente neobișnuite.
• Sysvinit
Acest pachet oferă programul init, care este părintele tuturor celorlalte procese de pe sistemul Linux.
• Gudron
Acest pachet oferă capabilități de arhivare și extragere a practic tuturor pachetelor utilizate în LFS.
• Tcl
Acest pachet conține limbajul de comandă a instrumentelor utilizat în multe suite de testare din pachetele LFS. Este instalat doar în lanțul de instrumente temporar.
• Texinfo
Acest pachet conține programe pentru citirea, scrierea și convertirea paginilor de informații. Este utilizat în procedurile de instalare a multor pachete LFS.
• Util-linux
Acest pachet conține diverse programe utilitare. Printre acestea se numără utilitare pentru gestionarea sistemelor de fișiere, console, partiții și mesaje.
• Vim
Acest pachet conține un editor. A fost ales datorită compatibilității cu editorul vi clasic și a numărului său mare de capabilități puternice. Un editor este o alegere foarte personală pentru mulți utilizatori și orice alt editor poate fi înlocuit dacă se dorește.
• XML::Parser
Acest pachet este un modul Perl care interfață cu Expat.
• XZ Utils
Acest pachet conține programe pentru comprimarea și decomprimarea fișierelor. Oferă cea mai mare compresie disponibilă în general și este utilă pentru decomprimarea pachetelor în format XZ sau LZMA.
• Zlib
Acest pachet conține rutine de compresie și decompresie utilizate de unele programe.