Fix failures in texinfo regression tests.
[linux_from_scratch.git] / chapter06 / man-db.xml
blobdcb08e1285562c67b0b627c9007b5968107c2060
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 ]>
8 <sect1 id="ch-system-man-db" role="wrap">
9   <?dbhtml filename="man-db.html"?>
11   <sect1info condition="script">
12     <productname>man-db</productname>
13     <productnumber>&man-db-version;</productnumber>
14     <address>&man-db-url;</address>
15   </sect1info>
17   <title>Man-DB-&man-db-version;</title>
19   <indexterm zone="ch-system-man-db">
20     <primary sortas="a-Man-DB">Man-DB</primary>
21   </indexterm>
23   <sect2 role="package">
24     <title/>
26     <para>The Man-DB package contains programs for finding and viewing man
27     pages.</para>
29     <segmentedlist>
30       <segtitle>&buildtime;</segtitle>
31       <segtitle>&diskspace;</segtitle>
33       <seglistitem>
34         <seg>&man-db-ch6-sbu;</seg>
35         <seg>&man-db-ch6-du;</seg>
36       </seglistitem>
37     </segmentedlist>
39   </sect2>
41   <sect2 role="installation">
42     <title>Installation of Man-DB</title>
44     <para>Prepare Man-DB for compilation:</para>
46 <screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr                        \
47             --docdir=/usr/share/doc/man-db-&man-db-version; \
48             --sysconfdir=/etc                    \
49             --disable-setuid                     \
50             --enable-cache-owner=bin             \
51             --with-browser=/usr/bin/lynx         \
52             --with-vgrind=/usr/bin/vgrind        \
53             --with-grap=/usr/bin/grap</userinput></screen>
55 <screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr                        \
56             --docdir=/usr/share/doc/man-db-&man-db-version; \
57             --sysconfdir=/etc                    \
58             --disable-setuid                     \
59             --enable-cache-owner=bin             \
60             --with-browser=/usr/bin/lynx         \
61             --with-vgrind=/usr/bin/vgrind        \
62             --with-grap=/usr/bin/grap            \
63             --with-systemdtmpfilesdir=</userinput></screen>
65     <variablelist>
66       <title>The meaning of the configure options:</title>
68       <varlistentry>
69         <term><parameter>--disable-setuid</parameter></term>
70         <listitem>
71           <para>This disables making the <command>man</command> program setuid
72           to user <systemitem class="username">man</systemitem>.</para>
73         </listitem>
74       </varlistentry>
76       <varlistentry>
77         <term><parameter>--enable-cache-owner=bin</parameter></term>
78         <listitem>
79           <para>This makes the system-wide cache files be owned by user
80           bin.</para>
81         </listitem>
82       </varlistentry>
84       <varlistentry>
85         <term><parameter>--with-...</parameter></term>
86         <listitem>
87           <para>These three parameters are used to set some default programs.
88           <command>lynx</command> is a text-based web browser (see
89           BLFS for installation instructions), <command>vgrind</command>
90           converts program sources to Groff input, and <command>grap</command>
91           is useful for typesetting graphs in Groff documents. The
92           <command>vgrind</command> and <command>grap</command> programs are
93           not normally needed for viewing manual pages. They are not part of
94           LFS or BLFS, but you should be able to install them yourself after
95           finishing LFS if you wish to do so.</para>
96         </listitem>
97       </varlistentry>
99     </variablelist>
101     <para>Compile the package:</para>
103 <screen><userinput remap="make">make</userinput></screen>
105    <para>To test the results, issue:</para>
107 <screen><userinput remap="test">make check</userinput></screen>
109     <para>Install the package:</para>
111 <screen><userinput remap="install">make install</userinput></screen>
112 <!--
113     <para revision="systemd">Remove a reference to a non-existent user:</para>
115 <screen revision="systemd"><userinput remap="install">sed -i "s:man man:root root:g" /usr/lib/tmpfiles.d/man-db.conf</userinput></screen>
117   </sect2>
119   <sect2>
120     <title>Non-English Manual Pages in LFS</title>
122     <para>The following table shows the character set that Man-DB assumes
123     manual pages installed under
124     <filename class="directory">/usr/share/man/&lt;ll&gt;</filename> will be
125     encoded with.  In addition to this, Man-DB correctly determines if manual
126     pages installed in that directory are UTF-8 encoded.</para>
128     <!-- Origin: man-db-2.5.9/lib/encodings.c -->
129     <table>
130 <title>Expected character encoding of legacy 8-bit manual pages</title>
131       <?dbfo table-width="6in" ?>
133       <tgroup cols="4">
135         <colspec colnum="1" colwidth="1.5in"/>
136         <colspec colnum="2" colwidth="1in"/>
137         <colspec colnum="3" colwidth="2.5in"/>
138         <colspec colnum="4" colwidth="1in"/>
140         <thead>
141           <row>
142             <entry>Language (code)</entry>
143             <entry>Encoding</entry>
144             <entry>Language (code)</entry>
145             <entry>Encoding</entry>
146           </row>
147         </thead>
149         <tbody>
150           <row>
151             <entry>Danish (da)</entry>
152             <entry>ISO-8859-1</entry>
153             <entry>Croatian (hr)</entry>
154             <entry>ISO-8859-2</entry>
155           </row>
156           <row>
157             <entry>German (de)</entry>
158             <entry>ISO-8859-1</entry>
159             <entry>Hungarian (hu)</entry>
160             <entry>ISO-8859-2</entry>
161           </row>
162           <row>
163             <entry>English (en)</entry>
164             <entry>ISO-8859-1</entry>
165             <entry>Japanese (ja)</entry>
166             <entry>EUC-JP</entry>
167           </row>
168           <row>
169             <entry>Spanish (es)</entry>
170             <entry>ISO-8859-1</entry>
171             <entry>Korean (ko)</entry>
172             <entry>EUC-KR</entry>
173           </row>
174           <row>
175             <entry>Estonian (et)</entry>
176             <entry>ISO-8859-1</entry>
177             <entry>Lithuanian (lt)</entry>
178             <entry>ISO-8859-13</entry>
179           </row>
180           <row>
181             <entry>Finnish (fi)</entry>
182             <entry>ISO-8859-1</entry>
183             <entry>Latvian (lv)</entry>
184             <entry>ISO-8859-13</entry>
185           </row>
186           <row>
187             <entry>French (fr)</entry>
188             <entry>ISO-8859-1</entry>
189             <entry>Macedonian (mk)</entry>
190             <entry>ISO-8859-5</entry>
191           </row>
192           <row>
193             <entry>Irish (ga)</entry>
194             <entry>ISO-8859-1</entry>
195             <entry>Polish (pl)</entry>
196             <entry>ISO-8859-2</entry>
197           </row>
198           <row>
199             <entry>Galician (gl)</entry>
200             <entry>ISO-8859-1</entry>
201             <entry>Romanian (ro)</entry>
202             <entry>ISO-8859-2</entry>
203           </row>
204           <row>
205             <entry>Indonesian (id)</entry>
206             <entry>ISO-8859-1</entry>
207             <entry>Russian (ru)</entry>
208             <entry>KOI8-R</entry>
209           </row>
210           <row>
211             <entry>Icelandic (is)</entry>
212             <entry>ISO-8859-1</entry>
213             <entry>Slovak (sk)</entry>
214             <entry>ISO-8859-2</entry>
215           </row>
216           <row>
217             <entry>Italian (it)</entry>
218             <entry>ISO-8859-1</entry>
219             <entry>Slovenian (sl)</entry>
220             <entry>ISO-8859-2</entry>
221           </row>
222           <row>
223             <entry>Norwegian Bokmal (nb)</entry>
224             <entry>ISO-8859-1</entry>
225             <entry>Serbian Latin (sr@latin)</entry>
226             <entry>ISO-8859-2</entry>
227           </row>
228           <row>
229             <entry>Dutch (nl)</entry>
230             <entry>ISO-8859-1</entry>
231             <entry>Serbian (sr)</entry>
232             <entry>ISO-8859-5</entry>
233           </row>
234           <row>
235             <entry>Norwegian Nynorsk (nn)</entry>
236             <entry>ISO-8859-1</entry>
237             <entry>Turkish (tr)</entry>
238             <entry>ISO-8859-9</entry>
239           </row>
240           <row>
241             <entry>Norwegian (no)</entry>
242             <entry>ISO-8859-1</entry>
243             <entry>Ukrainian (uk)</entry>
244             <entry>KOI8-U</entry>
245           </row>
246           <row>
247             <entry>Portuguese (pt)</entry>
248             <entry>ISO-8859-1</entry>
249             <entry>Vietnamese (vi)</entry>
250             <entry>TCVN5712-1</entry>
251           </row>
252           <row>
253             <entry>Swedish (sv)</entry>
254             <entry>ISO-8859-1</entry>
255             <entry>Simplified Chinese (zh_CN)</entry>
256             <entry>GBK</entry>
257           </row>
258           <row>
259             <entry>Belarusian (be)</entry>
260             <entry>CP1251</entry>
261             <entry>Simplified Chinese, Singapore (zh_SG)</entry>
262             <entry>GBK</entry>
263           </row>
264           <row>
265             <entry>Bulgarian (bg)</entry>
266             <entry>CP1251</entry>
267             <entry>Traditional Chinese, Hong Kong (zh_HK)</entry>
268             <entry>BIG5HKSCS</entry>
269           </row>
270           <row>
271             <entry>Czech (cs)</entry>
272             <entry>ISO-8859-2</entry>
273             <entry>Traditional Chinese (zh_TW)</entry>
274             <entry>BIG5</entry>
275           </row>
276           <row>
277             <entry>Greek (el)</entry>
278             <entry>ISO-8859-7</entry>
279             <entry></entry>
280             <entry></entry>
281           </row>
283         </tbody>
285       </tgroup>
287     </table>
289     <note>
290       <para>Manual pages in languages not in the list are not supported.</para>
291     </note>
293   </sect2>
295   <sect2 id="contents-man-db" role="content">
296     <title>Contents of Man-DB</title>
298     <segmentedlist>
299       <segtitle>Installed programs</segtitle>
300       <segtitle>Installed libraries</segtitle>
301       <segtitle>Installed directories</segtitle>
303       <seglistitem>
304         <seg>accessdb, apropos (link to whatis), catman, lexgrog, man, mandb,
305         manpath, and whatis</seg>
306         <seg>libman.so and libmandb.so</seg>
307         <seg>/usr/lib/man-db, /usr/lib/tmpfiles.d, /usr/libexec/man-db,
308         and /usr/share/doc/man-db-&man-db-version;</seg>
309       </seglistitem>
310     </segmentedlist>
312     <variablelist>
313       <bridgehead renderas="sect3">Short Descriptions</bridgehead>
314       <?dbfo list-presentation="list"?>
315       <?dbhtml list-presentation="table"?>
317       <varlistentry id="accessdb">
318         <term><command>accessdb</command></term>
319         <listitem>
320           <para>Dumps the <command>whatis</command> database contents in
321           human-readable form</para>
322           <indexterm zone="ch-system-man-db accessdb">
323             <primary sortas="b-accessdb">accessdb</primary>
324           </indexterm>
325         </listitem>
326       </varlistentry>
328       <varlistentry id="apropos">
329         <term><command>apropos</command></term>
330         <listitem>
331           <para>Searches the <command>whatis</command> database and displays
332           the short descriptions of system commands that contain a given
333           string</para>
334           <indexterm zone="ch-system-man-db apropos">
335             <primary sortas="b-apropos">apropos</primary>
336           </indexterm>
337         </listitem>
338       </varlistentry>
340       <varlistentry id="catman">
341         <term><command>catman</command></term>
342         <listitem>
343           <para>Creates or updates the pre-formatted manual pages</para>
344           <indexterm zone="ch-system-man-db catman">
345             <primary sortas="b-catman">catman</primary>
346           </indexterm>
347         </listitem>
348       </varlistentry>
350       <varlistentry id="lexgrog">
351         <term><command>lexgrog</command></term>
352         <listitem>
353           <para>Displays one-line summary information about a given manual
354           page</para>
355           <indexterm zone="ch-system-man-db lexgrog">
356             <primary sortas="b-lexgrog">lexgrog</primary>
357           </indexterm>
358         </listitem>
359       </varlistentry>
361       <varlistentry id="man">
362         <term><command>man</command></term>
363         <listitem>
364           <para>Formats and displays the requested manual page</para>
365           <indexterm zone="ch-system-man-db man">
366             <primary sortas="b-man">man</primary>
367           </indexterm>
368         </listitem>
369       </varlistentry>
371       <varlistentry id="mandb">
372         <term><command>mandb</command></term>
373         <listitem>
374           <para>Creates or updates the <command>whatis</command> database</para>
375           <indexterm zone="ch-system-man-db mandb">
376             <primary sortas="b-mandb">mandb</primary>
377           </indexterm>
378         </listitem>
379       </varlistentry>
381       <varlistentry id="manpath">
382         <term><command>manpath</command></term>
383         <listitem>
384           <para>Displays the contents of $MANPATH or (if $MANPATH is not set)
385           a suitable search path based on the settings in man.conf and the
386           user's environment</para>
387           <indexterm zone="ch-system-man-db manpath">
388             <primary sortas="b-manpath">manpath</primary>
389           </indexterm>
390         </listitem>
391       </varlistentry>
393       <varlistentry id="whatis">
394         <term><command>whatis</command></term>
395         <listitem>
396           <para>Searches the <command>whatis</command> database and displays
397           the short descriptions of system commands that contain the given
398           keyword as a separate word</para>
399           <indexterm zone="ch-system-man-db whatis">
400             <primary sortas="b-whatis">whatis</primary>
401           </indexterm>
402         </listitem>
403       </varlistentry>
405       <varlistentry id="libman">
406         <term><filename class="libraryfile">libman</filename></term>
407         <listitem>
408           <para>Contains run-time support for <command>man</command></para>
409           <indexterm zone="ch-system-man-db libman">
410             <primary sortas="c-libman">libman</primary>
411           </indexterm>
412         </listitem>
413       </varlistentry>
415       <varlistentry id="libmandb">
416         <term><filename class="libraryfile">libmandb</filename></term>
417         <listitem>
418           <para>Contains run-time support for <command>man</command></para>
419           <indexterm zone="ch-system-man-db libmandb">
420             <primary sortas="c-libmandb">libmandb</primary>
421           </indexterm>
422         </listitem>
423       </varlistentry>
425     </variablelist>
427   </sect2>
429 </sect1>