source: BOOK/appendices/rationale/common.xml @ 0c9f18a

clfs-2.1clfs-3.0.0-systemdclfs-3.0.0-sysvinitsystemdsysvinit
Last change on this file since 0c9f18a was 5dcc246, checked in by William Harrington <kb0iic@…>, 11 years ago

Add ISL to common package rationale.

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