source: BOOK/appendices/rationale/common.xml @ 24213983

clfs-3.0.0-systemdclfs-3.0.0-sysvinitsystemdsysvinit
Last change on this file since 24213983 was 24213983, checked in by William Harrington <kb0iic@…>, 10 years ago

Change text where required to Systemd rather than systemd to be consistent wtih the rest of the book. Adjust Systemd introduction text to be a bit consistent to the rest of the book's introduction to packages.

  • Property mode set to 100644
File size: 13.1 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE appendix 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<appendix id="appendixd-common" xreflabel="Appendix D">
9  <?dbhtml dir="appendixd"?>
10  <?dbhtml filename="rationale-common.html"?>
11
12  <title>Package Rationale</title>
13
14  <para>CLFS includes many packages, a number of which might not necessarily
15  be required for a "minimal" system, but still considered very useful. The
16  purpose of this page is to list the reasoning for each package's inclusion
17  in the book.</para>
18
19  <itemizedlist>
20
21    <listitem>
22      <para>ACL</para>
23      <para>The ACL package allows usage and setting of POSIX Access Control
24      Lists. It can be used by several other packages in CLFS, such as Coreutils
25      and Systemd.</para>
26    </listitem>
27
28    <listitem>
29      <para>Attr</para>
30      <para>Attr allows setting and viewing extended attributes of filesystem
31      objects. It is required by Systemd..</para>
32    </listitem>
33
34    <listitem>
35      <para>Autoconf</para>
36      <para>The Autoconf package contains programs for producing shell scripts
37      that can automatically configure source code. This is useful for software
38      developers, as well as anyone who wants to install packages that don't
39      come with a configure script, such as some of the packages in CBLFS.</para>
40    </listitem>
41
42    <listitem>
43      <para>Automake</para>
44      <para>The Automake package contains programs for generating Makefiles for use with Autoconf. This can be useful to software developers.</para>
45    </listitem>
46
47    <listitem>
48      <para>Bash</para>
49      <para>This package contains the Bourne-Again SHell. A shell is an
50      important component of a Linux system, as there must be some way of
51      allowing the users to enter commands.</para>
52    </listitem>
53
54    <listitem>
55      <para>Bc</para>
56      <para>This package contains a precision calculator. The Linux kernel
57      uses Bc to render the timeconst header.</para>
58    </listitem>
59
60
61    <listitem>
62      <para>Binutils</para>
63      <para>This package contains programs for handling object files. The
64      programs in this package are needed for compiling most of the packages
65      in CLFS.</para>
66    </listitem>
67
68    <listitem>
69      <para>Bison</para>
70      <para>This package contains programs that are required by several packages in CLFS.</para>
71    </listitem>
72
73    <listitem>
74      <para>Bzip2</para>
75      <para>The programs in this package are useful for compressing files to
76      reduce size. They are also needed to uncompress tarballs for many
77      CLFS packages.</para>
78    </listitem>
79
80    <listitem>
81      <para>CLFS-Bootscripts</para>
82      <para>This package contains a number of scripts that run at boottime,
83      performing essential tasks such as mounting/checking filesystems and
84      starting the network interface.</para>
85    </listitem>
86
87    <listitem>
88      <para>Check</para>
89      <para>This package contains a test harness for other programs. It is
90      used for some packages' testsuites.</para>
91    </listitem>
92
93    <listitem>
94      <para>CLooG</para>
95      <para>This package is used by GCC.</para>
96    </listitem>
97
98    <listitem>
99      <para>Coreutils</para>
100      <para>This package contains many basic command-line file-management
101      tools, required for installation of every package in CLFS.</para>
102    </listitem>
103
104    <listitem>
105      <para>D-Bus</para>
106      <para>D-Bus is a message bus system, which allows applications to
107      communicate to each other. It is required by Systemd.</para>
108    </listitem>
109
110    <listitem>
111      <para>DejaGNU</para>
112      <para>This package is needed for the testsuites of several packages,
113      especially GCC and Binutils.</para>
114    </listitem>
115
116    <listitem>
117      <para>DHCPCD</para>
118      <para>This package allows for automatic configuration of network
119      interfaces from a DHCP server. It (or some other package providing a
120      DHCP client is needed to connect to a DHCP server.</para>
121    </listitem>
122
123    <listitem>
124      <para>Diffutils</para>
125      <para>This package contains programs to compare files, and can also
126      be used to create patches. It is required by the installation procedures of
127      many CLFS packages.</para>
128    </listitem>
129
130    <listitem>
131      <para>EGLIBC</para>
132      <para>Any dynamically-linked C program (which is nearly everything
133      in CLFS) needs a C library to compile and run.</para>
134    </listitem>
135
136    <listitem>
137      <para>Eudev</para>
138      <para>This is a package that allows for dynamic creation of device nodes.
139      It is a fork of Udev, which is now part of Systemd. It is still
140      used for the "Boot" method in the temp-system, as Systemd is not needed
141      there.</para>
142    </listitem>
143
144    <listitem>
145      <para>Expect</para>
146      <para>This package is needed for the testsuites for several packages.</para>
147    </listitem>
148
149    <listitem>
150      <para>E2fsprogs</para>
151      <para>The programs in this package are used for the creation and
152      maintenance of ext2/3/4 filesystems.</para>
153    </listitem>
154
155    <listitem>
156      <para>File</para>
157      <para>This package contains a program that determines the type of
158      a given file. It is needed by some CLFS packages.</para>
159    </listitem>
160
161    <listitem>
162      <para>Findutils</para>
163      <para>This package contains programs for finding files based on certain
164      criteria, and optionally performing commands on them. Used by the
165      installation procedures of many CLFS packages.</para>
166    </listitem>
167
168    <listitem>
169      <para>Flex</para>
170      <para>This package contains a tool for generating text scanners. It is
171      used by multiple packages in CLFS</para>
172    </listitem>
173
174    <listitem>
175      <para>Gawk</para>
176      <para>This package contains programs for manipulating text files, using
177      the AWK language. It is used by the installation procedures of many
178      packages in CLFS.</para>
179    </listitem>
180
181    <listitem>
182      <para>Gcc</para>
183      <para>This package contains a C compiler, which is required to compile
184      most of the packages in CLFS.</para>
185    </listitem>
186
187    <listitem>
188      <para>Gettext</para>
189      <para>A tool that allows programmers to easily implement i18n
190      (internationalization) in their programs. It is a required dependency
191      for a number of packages</para>
192    </listitem>
193
194    <listitem>
195      <para>GMP</para>
196      <para>This package is required by GCC.</para>
197    </listitem>
198
199    <listitem>
200      <para>Gperf</para>
201      <para>This package is required by Systemd.</para>
202    </listitem>
203
204    <listitem>
205      <para>Grep</para>
206      <para>This package contains programs for searching for text in files.
207      These programs are required by many packages in CLFS.</para>
208    </listitem>
209
210    <listitem>
211      <para>Groff</para>
212      <para>This package is required by Man.</para>
213    </listitem>
214
215    <listitem>
216      <para>Gzip</para>
217      <para>Useful for compressing files to reduce size. It is also needed to
218      uncompress tarballs for many CLFS packages</para>
219    </listitem>
220
221    <listitem>
222      <para>Iana-Etc</para>
223      <para>This package provides the <filename>/etc/services</filename> and
224      <filename>/etc/protocols</filename> files. These files map port names to
225      port numbers as well as protocol names to their corresponding numbers.
226      These files are essential for many network based programs to work properly.</para>
227    </listitem>
228
229    <listitem>
230      <para>Intltool</para>
231      <para>This package is required by Systemd.</para>
232    </listitem>
233
234    <listitem>
235      <para>IProute2</para>
236      <para>This package contains programs for administering network interfaces.</para>
237    </listitem>
238
239    <listitem>
240      <para>IPutils</para>
241      <para>This package contains several basic network-management tools.</para>
242    </listitem>
243
244    <listitem>
245      <para>ISL</para>
246      <para>This package is required by CLooG.</para>
247    </listitem>
248
249    <listitem>
250      <para>Kbd</para>
251      <para>Contains keytable files and keyboard utilities compatible with the
252      Linux kernel.</para>
253    </listitem>
254
255    <listitem>
256      <para>Kmod</para>
257      <para>This package contains programs that assist in loading an unloading
258      kernel modules.</para>
259    </listitem>
260
261    <listitem>
262      <para>Less</para>
263      <para>A program that lets you view text files one page at a time.
264      Used by Man for displaying manpages.</para>
265    </listitem>
266
267    <listitem>
268      <para>Libcap</para>
269      <para>This package is required by Systemd.</para>
270    </listitem>
271
272    <listitem>
273      <para>Libtool</para>
274      <para>The Libtool package contains the GNU generic library support
275      script. It is used by some CLFS packages.</para>
276    </listitem>
277
278    <listitem>
279      <para>Linux-Headers</para>
280      <para>This package consists of santized headers from the Linux Kernel.
281      These headers are required for Glibc to compile.</para>
282    </listitem>
283
284    <listitem>
285      <para>Linux Kernel</para>
286      <para>The Linux operating system.</para>
287    </listitem>
288
289    <listitem>
290      <para>M4</para>
291      <para>This package contains a macro processor. It is required by several
292      CLFS packages, including Bison.</para>
293    </listitem>
294
295    <listitem>
296      <para>Make</para>
297      <para>Required for installation of most CLFS packages</para>
298    </listitem>
299
300    <listitem>
301      <para>Man</para>
302      <para>Used for viewing manpages</para>
303    </listitem>
304
305    <listitem>
306      <para>Man-Pages</para>
307      <para>A number of useful manpages, not supplied by other packages</para>
308    </listitem>
309
310    <listitem>
311      <para>MPC</para>
312      <para>This package is required by GCC.</para>
313    </listitem>
314
315    <listitem>
316      <para>MPFR</para>
317      <para>This package is required by GCC.</para>
318    </listitem>
319
320    <listitem>
321      <para>Ncurses</para>
322      <para>Needed by several packages in CLFS, such as Vim, Bash, and Less</para>
323    </listitem>
324
325    <listitem>
326      <para>Patch</para>
327      <para>Used for applying patches in several CLFS packages</para>
328    </listitem>
329
330    <listitem>
331      <para>Perl</para>
332      <para>The Perl package contains the Practical Extraction and Report
333      Language. It is required by several CLFS packages.</para>
334    </listitem>
335
336    <listitem>
337      <para>Pkg-config-lite</para>
338      <para>Needed by E2fsprogs</para>
339    </listitem>
340
341    <listitem>
342      <para>Procps-ng</para>
343      <para>Provides a number of small, useful utilities that give information
344      about the <filename class="directory">/proc</filename> filesystem.</para>
345    </listitem>
346
347    <listitem>
348      <para>Psmisc</para>
349      <para>Provides more utilties that give information about the
350      <filename class="directory">/proc</filename> filesystem.</para>
351    </listitem>
352
353    <listitem>
354      <para>Readline</para>
355      <para>The Readline library provides a set of functions for use by
356      applications that allow users to edit command lines as they are typed
357      in. This is essential for input in programs like <command>bash</command>
358      to work properly.</para>
359    </listitem>
360
361    <listitem>
362      <para>Sed</para>
363      <para>This package contains a stream editor. It is used in the
364      installation procedures of most CLFS packages.</para>
365    </listitem>
366
367    <listitem>
368      <para>Shadow</para>
369      <para>This package contains programs that assist in the administration
370      of users and groups, and passwords.</para>
371    </listitem>
372
373    <listitem>
374      <para>Systemd</para>
375      <para>Systemd provides the init daemon for the system, as well as Udev,
376      which dynamically creates device nodes.</para>
377    </listitem>
378
379    <listitem>
380      <para>Tar</para>
381      <para>Required to unpack the tar archives in which all CLFS packages
382      are distributed</para>
383    </listitem>
384
385    <listitem>
386      <para>Tcl</para>
387      <para>Needed for the testsuites of several packages</para>
388    </listitem>
389
390    <listitem>
391      <para>Texinfo</para>
392      <para>This package contains programs for viewing, installing and
393      converting info pages. It is used in the installation procedures
394      of many CLFS packages.</para>
395    </listitem>
396
397    <listitem>
398      <para>Util-linux</para>
399      <para>The Util-linux package contains miscellaneous utility programs.
400      Among them are utilities for handling file systems, consoles,
401      partitions, and messages. It also includes libraries that are required
402      by E2fsprogs.</para>
403    </listitem>
404
405    <listitem>
406      <para>Vim</para>
407      <para>The Vim package contains a text editor. Users may substitute Nano,
408      Joe, Emacs, or whatever other editor they prefer.</para>
409    </listitem>
410
411    <listitem>
412      <para>XML::Parser</para>
413      <para>This Perl module is required by Intltool.</para>
414    </listitem>
415
416    <listitem>
417      <para>XZ Utils</para>
418      <para>Useful for compressing files to reduce size. Also needed to
419      uncompress tarballs for many CLFS packages</para>
420    </listitem>
421
422    <listitem>
423      <para>Zlib</para>
424      <para>The Zlib package contains compression and decompression routines
425      used by some programs.</para>
426    </listitem>
427
428  </itemizedlist>
429
430</appendix>
Note: See TracBrowser for help on using the repository browser.