[a26951e] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
| 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
| 4 | <!ENTITY % general-entities SYSTEM "../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 | ]>
|
---|
| 7 |
|
---|
| 8 | <sect1 id="pre-why">
|
---|
| 9 | <?dbhtml filename="package-choices.html"?>
|
---|
| 10 |
|
---|
| 11 | <title>Rationale for Packages in the Book</title>
|
---|
| 12 |
|
---|
[2ca8941] | 13 | <para>As stated earlier, the goal of LFS is to build a complete and usable
|
---|
| 14 | foundation-level system. This includes all packages needed to replicate
|
---|
[c6d5b092] | 15 | itself while providing a relatively minimal base from which to customize
|
---|
[a26951e] | 16 | a more complete system based on the choices of the user. This does not
|
---|
| 17 | mean that LFS is the smallest system possible. Several important packages
|
---|
| 18 | are included that are not strictly required. The lists below document the
|
---|
| 19 | rationale for each package in the book.</para>
|
---|
| 20 |
|
---|
| 21 | <itemizedlist>
|
---|
| 22 |
|
---|
[a139c25] | 23 | <listitem>
|
---|
| 24 | <para>Acl</para>
|
---|
| 25 |
|
---|
| 26 | <para>This package contains utilities to administer Access
|
---|
| 27 | Control Lists, which are used to define more fine-grained
|
---|
| 28 | discretionary access rights for files and directories.
|
---|
| 29 | </para>
|
---|
| 30 | </listitem>
|
---|
| 31 |
|
---|
| 32 | <listitem>
|
---|
| 33 | <para>Attr</para>
|
---|
| 34 |
|
---|
| 35 | <para>This package contains programs for administering
|
---|
| 36 | extended attributes on filesystem objects.
|
---|
| 37 | </para>
|
---|
| 38 | </listitem>
|
---|
| 39 |
|
---|
[a26951e] | 40 | <listitem>
|
---|
| 41 | <para>Autoconf</para>
|
---|
| 42 |
|
---|
| 43 | <para>This package contains programs for producing shell scripts that
|
---|
| 44 | can automatically configure source code from a developer's
|
---|
| 45 | template. It is often needed to rebuild a package after updates
|
---|
| 46 | to the build procedures.</para>
|
---|
| 47 | </listitem>
|
---|
| 48 |
|
---|
| 49 | <listitem>
|
---|
| 50 | <para>Automake</para>
|
---|
| 51 |
|
---|
| 52 | <para>This package contains programs for generating Make files from
|
---|
| 53 | a template. It is often needed to rebuild a package after updates
|
---|
| 54 | to the build procedures.</para>
|
---|
| 55 | </listitem>
|
---|
| 56 |
|
---|
| 57 | <listitem>
|
---|
| 58 | <para>Bash</para>
|
---|
| 59 |
|
---|
| 60 | <para>This package satisfies an LSB core requirement to provide
|
---|
| 61 | a Bourne Shell interface to the system. It was chosen over
|
---|
| 62 | other shell packages because of its common usage and extensive
|
---|
[1c72dda] | 63 | capabilities beyond basic shell functions.</para>
|
---|
[a26951e] | 64 | </listitem>
|
---|
| 65 |
|
---|
[25d0483] | 66 | <listitem>
|
---|
| 67 | <para>Bc</para>
|
---|
| 68 |
|
---|
| 69 | <para>This package provides an arbitrary precision numeric processing language.
|
---|
| 70 | It satisfies a requirement needed when building the Linux kernel.</para>
|
---|
| 71 | </listitem>
|
---|
| 72 |
|
---|
[a26951e] | 73 | <listitem>
|
---|
| 74 | <para>Binutils</para>
|
---|
| 75 |
|
---|
[2ca8941] | 76 | <para>This package contains a linker, an assembler, and other
|
---|
[1c72dda] | 77 | tools for handling object files. The programs in this package are
|
---|
| 78 | needed to compile most of the packages in an LFS system and beyond.</para>
|
---|
[a26951e] | 79 | </listitem>
|
---|
| 80 |
|
---|
| 81 | <listitem>
|
---|
| 82 | <para>Bison</para>
|
---|
| 83 |
|
---|
| 84 | <para>This package contains the GNU version of yacc (Yet Another
|
---|
[1c72dda] | 85 | Compiler Compiler) needed to build several other LFS programs.</para>
|
---|
[a26951e] | 86 | </listitem>
|
---|
| 87 |
|
---|
| 88 | <listitem>
|
---|
| 89 | <para>Bzip2</para>
|
---|
| 90 |
|
---|
[2ca8941] | 91 | <para>This package contains programs for compressing and decompressing
|
---|
[a26951e] | 92 | files. It is required to decompress many LFS packages.</para>
|
---|
| 93 | </listitem>
|
---|
| 94 |
|
---|
[5870a98] | 95 | <listitem>
|
---|
| 96 | <para>Check</para>
|
---|
| 97 |
|
---|
[7e18939] | 98 | <para>This package contains a test harness for other programs.</para>
|
---|
[5870a98] | 99 | </listitem>
|
---|
| 100 |
|
---|
[a26951e] | 101 | <listitem>
|
---|
| 102 | <para>Coreutils</para>
|
---|
| 103 |
|
---|
[2ca8941] | 104 | <para>This package contains a number of essential programs for viewing
|
---|
[1c72dda] | 105 | and manipulating files and directories. These programs are needed for
|
---|
| 106 | command line file management, and are necessary for the installation
|
---|
| 107 | procedures of every package in LFS.</para>
|
---|
[a26951e] | 108 | </listitem>
|
---|
[e787b1f] | 109 |
|
---|
| 110 | <listitem revision="systemd">
|
---|
[a139c25] | 111 | <para>D-Bus</para>
|
---|
| 112 |
|
---|
| 113 | <para>This package contains programs to implement a message bus system,
|
---|
| 114 | which a simple way for applications to talk to one another.
|
---|
| 115 | </para>
|
---|
| 116 | </listitem>
|
---|
[e787b1f] | 117 |
|
---|
[a26951e] | 118 | <listitem>
|
---|
| 119 | <para>DejaGNU</para>
|
---|
| 120 |
|
---|
[493d6b5] | 121 | <para>This package contains a framework for testing other programs.</para>
|
---|
[a26951e] | 122 | </listitem>
|
---|
| 123 |
|
---|
| 124 | <listitem>
|
---|
| 125 | <para>Diffutils</para>
|
---|
| 126 |
|
---|
[2ca8941] | 127 | <para>This package contains programs that show the differences
|
---|
[1c72dda] | 128 | between files or directories. These programs can be used to create
|
---|
| 129 | patches, and are also used in many packages' build procedures.</para>
|
---|
[a26951e] | 130 | </listitem>
|
---|
| 131 |
|
---|
[c1ec480] | 132 | <listitem>
|
---|
| 133 | <para>E2fsprogs</para>
|
---|
| 134 |
|
---|
| 135 | <para>This package contains the utilities for handling the ext2, ext3
|
---|
| 136 | and ext4 file systems. These are the most common and thoroughly
|
---|
| 137 | tested file systems that Linux supports.</para>
|
---|
| 138 | </listitem>
|
---|
| 139 |
|
---|
[e787b1f] | 140 | <listitem revision="sysv">
|
---|
[b3eb525] | 141 | <para>Eudev</para>
|
---|
| 142 |
|
---|
[493d6b5] | 143 | <para>This package is a device manager. It dynamically controls the ownership,
|
---|
| 144 | permissions, names, and symbolic links of devices in the /dev directory as
|
---|
| 145 | devices are added or removed from the system.
|
---|
[b3eb525] | 146 | </para>
|
---|
| 147 | </listitem>
|
---|
| 148 |
|
---|
[a139c25] | 149 | <listitem>
|
---|
| 150 | <para>Expat</para>
|
---|
| 151 |
|
---|
[9ec4436] | 152 | <para>This package contains a relatively small XML parsing library. It
|
---|
| 153 | is required by the XML::Parser Perl module.</para>
|
---|
[a139c25] | 154 | </listitem>
|
---|
| 155 |
|
---|
[a26951e] | 156 | <listitem>
|
---|
| 157 | <para>Expect</para>
|
---|
| 158 |
|
---|
[2ca8941] | 159 | <para>This package contains a program for carrying out scripted
|
---|
[a26951e] | 160 | dialogues with other interactive programs. It is commonly used
|
---|
[660d70a] | 161 | for testing other packages.</para>
|
---|
[a26951e] | 162 | </listitem>
|
---|
| 163 |
|
---|
| 164 | <listitem>
|
---|
| 165 | <para>File</para>
|
---|
| 166 |
|
---|
[2ca8941] | 167 | <para>This package contains a utility for determining the type of a
|
---|
[493d6b5] | 168 | given file or files. A few packages need it in their build scripts.</para>
|
---|
[a26951e] | 169 | </listitem>
|
---|
| 170 |
|
---|
| 171 | <listitem>
|
---|
| 172 | <para>Findutils</para>
|
---|
| 173 |
|
---|
[1c72dda] | 174 | <para>This package contains programs to find files in a file system.
|
---|
| 175 | It is used in many packages' build scripts.</para>
|
---|
[a26951e] | 176 | </listitem>
|
---|
| 177 |
|
---|
| 178 | <listitem>
|
---|
| 179 | <para>Flex</para>
|
---|
| 180 |
|
---|
[2ca8941] | 181 | <para>This package contains a utility for generating programs that
|
---|
| 182 | recognize patterns in text. It is the GNU version of the lex
|
---|
| 183 | (lexical analyzer) program. It is required to build several
|
---|
[1c72dda] | 184 | LFS packages.</para>
|
---|
[a26951e] | 185 | </listitem>
|
---|
| 186 |
|
---|
| 187 | <listitem>
|
---|
| 188 | <para>Gawk</para>
|
---|
| 189 |
|
---|
| 190 | <para>This package contains programs for manipulating text files.
|
---|
[1c72dda] | 191 | It is the GNU version of awk (Aho-Weinberg-Kernighan). It is used in
|
---|
| 192 | many other packages' build scripts.</para>
|
---|
[a26951e] | 193 | </listitem>
|
---|
| 194 |
|
---|
| 195 | <listitem>
|
---|
[ea7ec72] | 196 | <para>GCC</para>
|
---|
[a26951e] | 197 |
|
---|
[2ca8941] | 198 | <para>This package is the Gnu Compiler Collection. It contains the
|
---|
| 199 | C and C++ compilers as well as several others not built by LFS.
|
---|
[a26951e] | 200 | </para>
|
---|
| 201 | </listitem>
|
---|
| 202 |
|
---|
| 203 | <listitem>
|
---|
| 204 | <para>GDBM</para>
|
---|
| 205 |
|
---|
| 206 | <para>This package contains the GNU Database Manager library. It
|
---|
[1c72dda] | 207 | is used by one other LFS package, Man-DB.</para>
|
---|
[a26951e] | 208 | </listitem>
|
---|
| 209 |
|
---|
| 210 | <listitem>
|
---|
| 211 | <para>Gettext</para>
|
---|
| 212 |
|
---|
[2ca8941] | 213 | <para>This package contains utilities and libraries for
|
---|
[1c72dda] | 214 | internationalization and localization of numerous packages.</para>
|
---|
[a26951e] | 215 | </listitem>
|
---|
| 216 |
|
---|
| 217 | <listitem>
|
---|
| 218 | <para>Glibc</para>
|
---|
| 219 |
|
---|
[493d6b5] | 220 | <para>This package contains the main C library. Linux programs will
|
---|
[1c72dda] | 221 | not run without it.</para>
|
---|
[a26951e] | 222 | </listitem>
|
---|
| 223 |
|
---|
| 224 | <listitem>
|
---|
| 225 | <para>GMP</para>
|
---|
| 226 |
|
---|
[9ec9c03] | 227 | <para>This package contains math libraries that provide useful functions
|
---|
[ea7ec72] | 228 | for arbitrary precision arithmetic. It is required to build GCC.</para>
|
---|
[a26951e] | 229 | </listitem>
|
---|
| 230 |
|
---|
[a139c25] | 231 | <listitem>
|
---|
| 232 | <para>Gperf</para>
|
---|
| 233 |
|
---|
[9ec4436] | 234 | <para>This package contains a program that generates a perfect hash
|
---|
| 235 | function from a key set. It is required for Eudev.</para>
|
---|
[a139c25] | 236 | </listitem>
|
---|
| 237 |
|
---|
[a26951e] | 238 | <listitem>
|
---|
| 239 | <para>Grep</para>
|
---|
| 240 |
|
---|
[1c72dda] | 241 | <para>This package contains programs for searching through files. These
|
---|
| 242 | programs are used by most packages' build scripts.</para>
|
---|
[a26951e] | 243 | </listitem>
|
---|
| 244 |
|
---|
| 245 | <listitem>
|
---|
| 246 | <para>Groff</para>
|
---|
| 247 |
|
---|
| 248 | <para>This package contains programs for processing and formatting text.
|
---|
[1c72dda] | 249 | One important function of these programs is to format man pages.</para>
|
---|
[a26951e] | 250 | </listitem>
|
---|
| 251 |
|
---|
| 252 | <listitem>
|
---|
| 253 | <para>GRUB</para>
|
---|
| 254 |
|
---|
[2ca8941] | 255 | <para>This package is the Grand Unified Boot Loader. It is one
|
---|
[a26951e] | 256 | of several boot loaders available, but is the most flexible.
|
---|
| 257 | </para>
|
---|
| 258 | </listitem>
|
---|
| 259 |
|
---|
| 260 | <listitem>
|
---|
| 261 | <para>Gzip</para>
|
---|
| 262 |
|
---|
[2ca8941] | 263 | <para>This package contains programs for compressing and
|
---|
[1c72dda] | 264 | decompressing files. It is needed to decompress many packages in LFS
|
---|
| 265 | and beyond.</para>
|
---|
[a26951e] | 266 | </listitem>
|
---|
| 267 |
|
---|
| 268 | <listitem>
|
---|
| 269 | <para>Iana-etc</para>
|
---|
| 270 |
|
---|
| 271 | <para>This package provides data for network services and protocols.
|
---|
[1c72dda] | 272 | It is needed to enable proper networking capabilities.</para>
|
---|
[a26951e] | 273 | </listitem>
|
---|
| 274 |
|
---|
| 275 | <listitem>
|
---|
| 276 | <para>Inetutils</para>
|
---|
| 277 |
|
---|
[2ca8941] | 278 | <para>This package contains programs for basic network
|
---|
[1c72dda] | 279 | administration.</para>
|
---|
[a26951e] | 280 | </listitem>
|
---|
| 281 |
|
---|
[a139c25] | 282 | <listitem>
|
---|
| 283 | <para>Intltool</para>
|
---|
| 284 |
|
---|
| 285 | <para>This package contains tools for extracting translatable
|
---|
| 286 | strings from source files.</para>
|
---|
| 287 | </listitem>
|
---|
| 288 |
|
---|
[a26951e] | 289 | <listitem>
|
---|
| 290 | <para>IProute2</para>
|
---|
| 291 |
|
---|
| 292 | <para>This package contains programs for basic and advanced IPv4 and
|
---|
| 293 | IPv6 networking. It was chosen over the other common network
|
---|
| 294 | tools package (net-tools) for its IPv6 capabilities. </para>
|
---|
| 295 | </listitem>
|
---|
| 296 |
|
---|
[e182fa3] | 297 | <listitem revision="systemd">
|
---|
| 298 | <para>Jinja2</para>
|
---|
| 299 |
|
---|
| 300 | <para>This package is a Python module for text templating.
|
---|
| 301 | It's required to build Systemd.</para>
|
---|
| 302 | </listitem>
|
---|
| 303 |
|
---|
[a26951e] | 304 | <listitem>
|
---|
| 305 | <para>Kbd</para>
|
---|
| 306 |
|
---|
[1c72dda] | 307 | <para>This package contains key-table files, keyboard utilities
|
---|
| 308 | for non-US keyboards, and a number of console fonts.</para>
|
---|
[a26951e] | 309 | </listitem>
|
---|
| 310 |
|
---|
[46b7d91] | 311 | <listitem>
|
---|
| 312 | <para>Kmod</para>
|
---|
| 313 |
|
---|
| 314 | <para>This package contains programs needed to administer Linux
|
---|
| 315 | kernel modules.</para>
|
---|
| 316 | </listitem>
|
---|
| 317 |
|
---|
[a26951e] | 318 | <listitem>
|
---|
| 319 | <para>Less</para>
|
---|
| 320 |
|
---|
| 321 | <para>This package contains a very nice text file viewer that
|
---|
[1c72dda] | 322 | allows scrolling up or down when viewing a file. It is also used by
|
---|
| 323 | Man-DB for viewing manpages.</para>
|
---|
[a26951e] | 324 | </listitem>
|
---|
| 325 |
|
---|
[a139c25] | 326 | <listitem>
|
---|
| 327 | <para>Libcap</para>
|
---|
| 328 |
|
---|
| 329 | <para>This package implements the user-space interfaces to
|
---|
| 330 | the POSIX 1003.1e capabilities available in Linux kernels.
|
---|
| 331 | </para>
|
---|
| 332 | </listitem>
|
---|
| 333 |
|
---|
[df9fd82] | 334 | <listitem>
|
---|
| 335 | <para>Libelf</para>
|
---|
| 336 |
|
---|
| 337 | <para>The elfutils project provides libraries and tools for ELF files
|
---|
| 338 | and DWARF data. Most utilities in this package are available in
|
---|
| 339 | other packages, but the library is needed to build the Linux
|
---|
| 340 | kernel using the default (and most efficient) configuration.</para>
|
---|
| 341 |
|
---|
| 342 | </listitem>
|
---|
| 343 |
|
---|
[b0aabe0] | 344 | <listitem>
|
---|
| 345 | <para>Libffi</para>
|
---|
| 346 |
|
---|
| 347 | <para>This package implements a portable, high level programming
|
---|
| 348 | interface to various calling conventions. Some programs may not know
|
---|
| 349 | at the time of compilation what arguments are to be passed to a
|
---|
| 350 | function. For instance, an interpreter may be told at run-time about
|
---|
| 351 | the number and types of arguments used to call a given function. Libffi
|
---|
| 352 | can be used in such programs to provide a bridge from the interpreter
|
---|
| 353 | program to compiled code.</para>
|
---|
| 354 |
|
---|
| 355 | </listitem>
|
---|
| 356 |
|
---|
[c1ec480] | 357 | <listitem>
|
---|
| 358 | <para>Libpipeline</para>
|
---|
| 359 |
|
---|
| 360 | <para>The Libpipeline package contains a library for manipulating
|
---|
| 361 | pipelines of subprocesses in a flexible and convenient way. It is
|
---|
| 362 | required by the Man-DB package.</para>
|
---|
| 363 | </listitem>
|
---|
| 364 |
|
---|
[a26951e] | 365 | <listitem>
|
---|
| 366 | <para>Libtool</para>
|
---|
| 367 |
|
---|
[2ca8941] | 368 | <para>This package contains the GNU generic library support
|
---|
| 369 | script. It wraps the complexity of using shared libraries in a
|
---|
[a26951e] | 370 | consistent, portable interface. It is needed by the test
|
---|
[1c72dda] | 371 | suites in other LFS packages.</para>
|
---|
[a26951e] | 372 | </listitem>
|
---|
| 373 |
|
---|
| 374 | <listitem>
|
---|
| 375 | <para>Linux Kernel</para>
|
---|
| 376 |
|
---|
| 377 | <para>This package is the Operating System. It is the Linux in
|
---|
[1c72dda] | 378 | the GNU/Linux environment.</para>
|
---|
[a26951e] | 379 | </listitem>
|
---|
| 380 |
|
---|
| 381 | <listitem>
|
---|
| 382 | <para>M4</para>
|
---|
| 383 |
|
---|
| 384 | <para>This package contains a general text macro processor useful
|
---|
[1c72dda] | 385 | as a build tool for other programs.</para>
|
---|
[a26951e] | 386 | </listitem>
|
---|
| 387 |
|
---|
| 388 | <listitem>
|
---|
| 389 | <para>Make</para>
|
---|
| 390 |
|
---|
| 391 | <para>This package contains a program for directing the building
|
---|
[1c72dda] | 392 | of packages. It is required by almost every package in LFS.</para>
|
---|
[a26951e] | 393 | </listitem>
|
---|
| 394 |
|
---|
[e182fa3] | 395 | <listitem revision="systemd">
|
---|
| 396 | <para>MarkupSafe</para>
|
---|
| 397 |
|
---|
| 398 | <para>This package is a Python module for processing strings in
|
---|
| 399 | HTML/XHTML/XML safely. Jinja2 requires this pacakge.</para>
|
---|
| 400 | </listitem>
|
---|
| 401 |
|
---|
[a26951e] | 402 | <listitem>
|
---|
| 403 | <para>Man-DB</para>
|
---|
| 404 |
|
---|
| 405 | <para>This package contains programs for finding and viewing man pages.
|
---|
| 406 | It was chosen instead of the <application>man</application> package
|
---|
| 407 | due to superior internationalization capabilities. It supplies
|
---|
[1c72dda] | 408 | the man program.</para>
|
---|
[a26951e] | 409 | </listitem>
|
---|
| 410 |
|
---|
| 411 | <listitem>
|
---|
| 412 | <para>Man-pages</para>
|
---|
| 413 |
|
---|
| 414 | <para>This package contains the actual contents of the basic
|
---|
[1c72dda] | 415 | Linux man pages.</para>
|
---|
[a26951e] | 416 | </listitem>
|
---|
| 417 |
|
---|
[b0aabe0] | 418 | <listitem>
|
---|
| 419 | <para>Meson</para>
|
---|
| 420 |
|
---|
| 421 | <para>This package provides a software tool for automating the building
|
---|
| 422 | of software. The main goal for Meson is to minimize the amount of time
|
---|
| 423 | that software developers need to spend configuring their build
|
---|
[e182fa3] | 424 | system. It's required to build Systemd, as well as many BLFS
|
---|
| 425 | packages.</para>
|
---|
[b0aabe0] | 426 |
|
---|
| 427 | </listitem>
|
---|
| 428 |
|
---|
[1c72dda] | 429 | <listitem>
|
---|
| 430 | <para>MPC</para>
|
---|
| 431 |
|
---|
| 432 | <para>This package contains functions for the arithmetic of complex
|
---|
[ea7ec72] | 433 | numbers. It is required by GCC.</para>
|
---|
[1c72dda] | 434 | </listitem>
|
---|
| 435 |
|
---|
[a26951e] | 436 | <listitem>
|
---|
| 437 | <para>MPFR</para>
|
---|
| 438 |
|
---|
[2ca8941] | 439 | <para>This package contains functions for multiple precision
|
---|
[ea7ec72] | 440 | arithmetic. It is required by GCC.</para>
|
---|
[a26951e] | 441 | </listitem>
|
---|
| 442 |
|
---|
[b0aabe0] | 443 | <listitem>
|
---|
| 444 | <para>Ninja</para>
|
---|
| 445 |
|
---|
| 446 | <para>This package contains a small build system with a focus on speed.
|
---|
| 447 | It is designed to have its input files generated by a higher-level build
|
---|
[e182fa3] | 448 | system, and to run builds as fast as possible.
|
---|
| 449 | This package is required by Meson.</para>
|
---|
[b0aabe0] | 450 |
|
---|
| 451 | </listitem>
|
---|
| 452 |
|
---|
[a26951e] | 453 | <listitem>
|
---|
| 454 | <para>Ncurses</para>
|
---|
| 455 |
|
---|
[2ca8941] | 456 | <para>This package contains libraries for terminal-independent
|
---|
| 457 | handling of character screens. It is often used to provide
|
---|
[1c72dda] | 458 | cursor control for a menuing system. It is needed by a number of
|
---|
| 459 | packages in LFS.</para>
|
---|
[a26951e] | 460 | </listitem>
|
---|
| 461 |
|
---|
[b55310e] | 462 | <listitem>
|
---|
| 463 | <para>Openssl</para>
|
---|
| 464 |
|
---|
| 465 | <para>This package provides management tools and libraries relating to
|
---|
| 466 | cryptography. These are useful for providing cryptographic functions to
|
---|
| 467 | other packages, including the Linux kernel.</para>
|
---|
| 468 | </listitem>
|
---|
| 469 |
|
---|
[a26951e] | 470 | <listitem>
|
---|
| 471 | <para>Patch</para>
|
---|
| 472 |
|
---|
[12c82b50] | 473 | <para>This package contains a program for modifying or creating files by
|
---|
[2ca8941] | 474 | applying a <emphasis>patch</emphasis> file typically created
|
---|
[a26951e] | 475 | by the <application>diff</application> program. It is needed by
|
---|
[1c72dda] | 476 | the build procedure for several LFS packages.</para>
|
---|
[a26951e] | 477 | </listitem>
|
---|
[5b62b8d] | 478 |
|
---|
[a26951e] | 479 | <listitem>
|
---|
| 480 | <para>Perl</para>
|
---|
| 481 |
|
---|
| 482 | <para>This package is an interpreter for the runtime language
|
---|
[0ebe029b] | 483 | PERL. It is needed for the installation and test suites of several LFS
|
---|
[1c72dda] | 484 | packages.</para>
|
---|
[a26951e] | 485 | </listitem>
|
---|
| 486 |
|
---|
[450e682e] | 487 | <listitem>
|
---|
| 488 | <para>Pkg-config</para>
|
---|
| 489 |
|
---|
[493d6b5] | 490 | <para>This package provides a program that returns meta-data about an
|
---|
[450e682e] | 491 | installed library or package.</para>
|
---|
| 492 | </listitem>
|
---|
| 493 |
|
---|
| 494 | <listitem>
|
---|
[c1ec480] | 495 | <para>Procps-NG</para>
|
---|
[a26951e] | 496 |
|
---|
[1c72dda] | 497 | <para>This package contains programs for monitoring processes. These
|
---|
| 498 | programs are useful for system administration, and are also used by
|
---|
| 499 | the LFS Bootscripts.</para>
|
---|
[a26951e] | 500 | </listitem>
|
---|
| 501 |
|
---|
| 502 | <listitem>
|
---|
| 503 | <para>Psmisc</para>
|
---|
| 504 |
|
---|
[2ca8941] | 505 | <para>This package contains programs for displaying information
|
---|
[1c72dda] | 506 | about running processes. These programs are useful for system
|
---|
| 507 | administration.</para>
|
---|
[a26951e] | 508 | </listitem>
|
---|
| 509 |
|
---|
[b0aabe0] | 510 | <listitem>
|
---|
| 511 | <para>Python 3</para>
|
---|
| 512 |
|
---|
| 513 | <para>This package provides an interpreted language that has a design
|
---|
| 514 | philosophy that emphasizes code readability.</para>
|
---|
| 515 |
|
---|
| 516 | </listitem>
|
---|
| 517 |
|
---|
[a26951e] | 518 | <listitem>
|
---|
| 519 | <para>Readline</para>
|
---|
| 520 |
|
---|
[2ca8941] | 521 | <para>This package is a set of libraries that offers command-line
|
---|
[1c72dda] | 522 | editing and history capabilities. It is used by Bash.</para>
|
---|
[a26951e] | 523 | </listitem>
|
---|
| 524 |
|
---|
| 525 | <listitem>
|
---|
| 526 | <para>Sed</para>
|
---|
| 527 |
|
---|
[2ca8941] | 528 | <para>This package allows editing of text without opening it in a
|
---|
| 529 | text editor. It is also needed by most LFS packages' configure
|
---|
[1c72dda] | 530 | scripts.</para>
|
---|
[a26951e] | 531 | </listitem>
|
---|
| 532 |
|
---|
| 533 | <listitem>
|
---|
| 534 | <para>Shadow</para>
|
---|
| 535 |
|
---|
[2ca8941] | 536 | <para>This package contains programs for handling passwords
|
---|
[a26951e] | 537 | in a secure way.</para>
|
---|
| 538 | </listitem>
|
---|
| 539 |
|
---|
[e787b1f] | 540 | <listitem revision="sysv">
|
---|
[a26951e] | 541 | <para>Sysklogd</para>
|
---|
| 542 |
|
---|
[2ca8941] | 543 | <para>This package contains programs for logging system messages,
|
---|
| 544 | such as those given by the kernel or daemon processes when unusual
|
---|
[1c72dda] | 545 | events occur.</para>
|
---|
[a26951e] | 546 | </listitem>
|
---|
[e787b1f] | 547 |
|
---|
| 548 | <listitem revision="systemd">
|
---|
[a139c25] | 549 | <para>Systemd</para>
|
---|
| 550 |
|
---|
[ad1ccc7] | 551 | <para>This package provides an <application>init</application> program
|
---|
[edbeeb5] | 552 | and several additional boot and system control capabilities as an
|
---|
[a139c25] | 553 | alternative to Sysvinit. It is used by many commercial distributions.
|
---|
[3656105] | 554 | </para>
|
---|
[a139c25] | 555 | </listitem>
|
---|
[e787b1f] | 556 |
|
---|
| 557 | <listitem revision="sysv">
|
---|
[a26951e] | 558 | <para>Sysvinit</para>
|
---|
| 559 |
|
---|
| 560 | <para>This package provides the <application>init</application>
|
---|
[12c82b50] | 561 | program, which is the parent of all other processes on the Linux
|
---|
[a26951e] | 562 | system. </para>
|
---|
| 563 | </listitem>
|
---|
| 564 |
|
---|
| 565 | <listitem>
|
---|
| 566 | <para>Tar</para>
|
---|
| 567 |
|
---|
| 568 | <para>This package provides archiving and extraction capabilities
|
---|
[1c72dda] | 569 | of virtually all packages used in LFS.</para>
|
---|
[a26951e] | 570 | </listitem>
|
---|
| 571 |
|
---|
| 572 | <listitem>
|
---|
| 573 | <para>Tcl</para>
|
---|
| 574 |
|
---|
| 575 | <para>This package contains the Tool Command Language used
|
---|
[493d6b5] | 576 | in many test suites in LFS packages.</para>
|
---|
[a26951e] | 577 | </listitem>
|
---|
| 578 |
|
---|
| 579 | <listitem>
|
---|
| 580 | <para>Texinfo</para>
|
---|
| 581 |
|
---|
[2ca8941] | 582 | <para>This package contains programs for reading, writing, and
|
---|
| 583 | converting info pages. It is used in the installation
|
---|
[1c72dda] | 584 | procedures of many LFS packages.</para>
|
---|
[a26951e] | 585 | </listitem>
|
---|
| 586 |
|
---|
| 587 | <listitem>
|
---|
[e1428f3] | 588 | <para>Util-linux</para>
|
---|
[a26951e] | 589 |
|
---|
[2ca8941] | 590 | <para>This package contains miscellaneous utility programs.
|
---|
| 591 | Among them are utilities for handling file systems, consoles,
|
---|
[1c72dda] | 592 | partitions, and messages.</para>
|
---|
[a26951e] | 593 | </listitem>
|
---|
| 594 |
|
---|
| 595 | <listitem>
|
---|
| 596 | <para>Vim</para>
|
---|
| 597 |
|
---|
[c6d5b092] | 598 | <para>This package contains an editor. It was chosen because of its
|
---|
| 599 | compatibility with the classic vi editor and its huge number of powerful
|
---|
[a26951e] | 600 | capabilities. An editor is a very personal choice for
|
---|
[1c72dda] | 601 | many users and any other editor could be substituted if desired.</para>
|
---|
[a26951e] | 602 | </listitem>
|
---|
[bf2bd25] | 603 |
|
---|
[a139c25] | 604 | <listitem>
|
---|
| 605 | <para>XML::Parser</para>
|
---|
| 606 |
|
---|
| 607 | <para>This package is a Perl module that interfaces with Expat.</para>
|
---|
| 608 | </listitem>
|
---|
[bf2bd25] | 609 |
|
---|
[7002213] | 610 | <listitem>
|
---|
| 611 | <para>XZ Utils</para>
|
---|
| 612 |
|
---|
[2ca8941] | 613 | <para>This package contains programs for compressing and decompressing
|
---|
[7002213] | 614 | files. It provides the highest compression generally available
|
---|
[62b7a34] | 615 | and is useful for decompressing packages in XZ or LZMA format.</para>
|
---|
[7002213] | 616 | </listitem>
|
---|
| 617 |
|
---|
[a26951e] | 618 | <listitem>
|
---|
| 619 | <para>Zlib</para>
|
---|
| 620 |
|
---|
[2ca8941] | 621 | <para>This package contains compression and decompression routines
|
---|
[1c72dda] | 622 | used by some programs.</para>
|
---|
[a26951e] | 623 | </listitem>
|
---|
| 624 |
|
---|
[91c7fab6] | 625 | <listitem>
|
---|
| 626 | <para>Zstd</para>
|
---|
| 627 |
|
---|
| 628 | <para>This package contains compression and decompression routines
|
---|
| 629 | used by some programs. It provide high compression ratios and a very
|
---|
| 630 | wide range of compression / speed trade-offs.</para>
|
---|
| 631 | </listitem>
|
---|
| 632 |
|
---|
[a26951e] | 633 | </itemizedlist>
|
---|
| 634 |
|
---|
| 635 | </sect1>
|
---|
| 636 |
|
---|