source: BOOK/appendices/rationale/common.xml@ 3d29a98

clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 3d29a98 was 532a2c4, checked in by Chris Staub <chris@…>, 12 years ago

Updated package rationale page

  • 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-PPL</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>Kbd</para>
196 <para>Contains keytable files and keyboard utilities compatible with the
197 Linux kernel.</para>
198 </listitem>
199
200 <listitem>
201 <para>Kmod</para>
202 <para>This package contains programs that assist in loading an unloading
203 kernel modules.</para>
204 </listitem>
205
206 <listitem>
207 <para>Less</para>
208 <para>A program that lets you view text files one page at a time.
209 Used by Man for displaying manpages.</para>
210 </listitem>
211
212 <listitem>
213 <para>Libee</para>
214 <para>This package contains an event expression library. It is needed by
215 Rsyslog.</para>
216 </listitem>
217
218 <listitem>
219 <para>Libestr</para>
220 <para>This package contains a library for string essentials. It is needed
221 by Rsyslog.</para>
222 </listitem>
223
224 <listitem>
225 <para>Libtool</para>
226 <para>The Libtool package contains the GNU generic library support
227 script. It is used by some CLFS packages.</para>
228 </listitem>
229
230 <listitem>
231 <para>Linux-Headers</para>
232 <para>This package consists of santized headers from the Linux Kernel.
233 These headers are required for Glibc to compile.</para>
234 </listitem>
235
236 <listitem>
237 <para>Linux Kernel</para>
238 <para>The Linux operating system.</para>
239 </listitem>
240
241 <listitem>
242 <para>M4</para>
243 <para>This package contains a macro processor. It is required by several
244 CLFS packages, including Bison.</para>
245 </listitem>
246
247 <listitem>
248 <para>Make</para>
249 <para>Required for installation of most CLFS packages</para>
250 </listitem>
251
252 <listitem>
253 <para>Man</para>
254 <para>Used for viewing manpages</para>
255 </listitem>
256
257 <listitem>
258 <para>Man-Pages</para>
259 <para>A number of useful manpages, not supplied by other packages</para>
260 </listitem>
261
262 <listitem>
263 <para>MPC</para>
264 <para>This package is required by GCC.</para>
265 </listitem>
266
267 <listitem>
268 <para>MPFR</para>
269 <para>This package is required by GCC.</para>
270 </listitem>
271
272 <listitem>
273 <para>Ncurses</para>
274 <para>Needed by several packages in CLFS, such as Vim, Bash, and Less</para>
275 </listitem>
276
277 <listitem>
278 <para>Patch</para>
279 <para>Used for applying patches in several CLFS packages</para>
280 </listitem>
281
282 <listitem>
283 <para>Perl</para>
284 <para>The Perl package contains the Practical Extraction and Report
285 Language. It is required by several CLFS packages.</para>
286 </listitem>
287
288 <listitem>
289 <para>Pkg-config</para>
290 <para>Needed by E2fsprogs</para>
291 </listitem>
292
293 <listitem>
294 <para>PPL</para>
295 <para>This package i used by GCC.</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.