LFS and Standards

#### Linux From Scratch - Version 12.0-systemd

### Preface

- Prev

  Prerequisites

- Next

  Rationale for Packages in the Book

- Up
- Home

# v. LFS and Standards

The structure of LFS follows Linux standards as closely as possible. The primary standards are:

- POSIX.1-2008.

- Filesystem Hierarchy Standard (FHS) Version 3.0

- Linux Standard Base (LSB) Version 5.0 (2015)

  The LSB has four separate specifications: Core, Desktop, Runtime Languages, and Imaging. Some parts of Core and Desktop specifications are architecture specific. There are also two trial specifications: Gtk3 and Graphics. LFS attempts to conform to the LSB specifications for the IA32 (32-bit x86) or AMD64 (x86_64) architectures discussed in the previous section.

  ### Note

  Many people do not agree with these requirements. The main purpose of the LSB is to ensure that proprietary software can be installed and run on a compliant system. Since LFS is source based, the user has complete control over what packages are desired; you may choose not to install some packages that are specified by the LSB.

While it is possible to create a complete system that will pass the LSB certification tests "from scratch", this can't be done without many additional packages that are beyond the scope of the LFS book. Installation instructions for these additional packages can be found in BLFS.

### Packages supplied by LFS needed to satisfy the LSB Requirements

LSB Core: | Bash, Bc, Binutils, Coreutils, Diffutils, File, Findutils, Gawk, Grep, Gzip, M4, Man-DB, Ncurses, Procps, Psmisc, Sed, Shadow, Tar, Util-linux, Zlib
LSB Desktop: | None
LSB Runtime Languages: | Perl, Python
LSB Imaging: | None
LSB Gtk3 and LSB Graphics (Trial Use): | None

### Packages supplied by BLFS needed to satisfy the LSB Requirements

LSB Core: | At, Batch (a part of At), Cpio, Ed, Fcrontab, LSB-Tools, NSPR, NSS, PAM, Pax, Sendmail (or Postfix or Exim), time
LSB Desktop: | Alsa, ATK, Cairo, Desktop-file-utils, Freetype, Fontconfig, Gdk-pixbuf, Glib2, GTK+2, Icon-naming-utils, Libjpeg-turbo, Libpng, Libtiff, Libxml2, MesaLib, Pango, Xdg-utils, Xorg
LSB Runtime Languages: | Libxml2, Libxslt
LSB Imaging: | CUPS, Cups-filters, Ghostscript, SANE
LSB Gtk3 and LSB Graphics (Trial Use): | GTK+3

### Packages not supplied by LFS or BLFS needed to satisfy the LSB Requirements

LSB Core: | None
LSB Desktop: | Qt4 (but Qt5 is provided)
LSB Runtime Languages: | None
LSB Imaging: | None
LSB Gtk3 and LSB Graphics (Trial Use): | None

- Prev

  Prerequisites

- Next

  Rationale for Packages in the Book

- Up
- Home