source: archive/hal.xml@ d0cf396

10.0 10.1 11.0 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 krejzi/svn nosym perl-modules qt5new systemd-11177 systemd-13485 trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since d0cf396 was d0cf396, checked in by Bruce Dubbs <bdubbs@…>, 9 years ago

Clean up III. General Libraries and Utilities

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@10189 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 24.5 KB
Line 
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 <!ENTITY hal-download-http "http://hal.freedesktop.org/releases/hal-&hal-version;.tar.bz2">
8 <!ENTITY hal-download-ftp " ">
9 <!ENTITY hal-md5sum "c627d8fb0f9afff94f3c687b5216bc06">
10 <!ENTITY hal-size "924 KB">
11 <!ENTITY hal-buildsize "25 MB">
12 <!ENTITY hal-time "0.5 SBU">
13
14 <!ENTITY hal-info-version "20091130">
15 <!ENTITY hal-info-download-http "http://hal.freedesktop.org/releases/hal-info-&hal-info-version;.tar.bz2">
16 <!ENTITY hal-info-download-ftp " ">
17 <!ENTITY hal-info-md5sum "995b8d2dbfb0646b07c92bb8d23cbcf1">
18 <!ENTITY hal-info-size "108 KB">
19]>
20
21<sect1 id="hal" xreflabel="HAL-&hal-version;">
22 <?dbhtml filename="hal.html"?>
23
24 <sect1info>
25 <othername>$LastChangedBy$</othername>
26 <date>$Date$</date>
27 </sect1info>
28
29 <title>HAL-&hal-version;</title>
30
31 <indexterm zone="hal">
32 <primary sortas="a-HAL">HAL</primary>
33 </indexterm>
34
35 <sect2 role="package">
36 <title>Introduction to HAL</title>
37
38 <para><application>HAL</application> is a hardware abstraction layer, which
39 is a piece of software that provides a view of the various hardware
40 attached to a system. In addition to this, <application>HAL</application>
41 keeps detailed metadata for each piece of hardware and provides hooks such
42 that system and desktop-level software can react to changes in the hardware
43 configuration in order to maintain system policy.</para>
44
45 <para>The most important goal of <application>HAL</application> is to
46 provide plug-and-play facilities for UNIX-like desktops with focus on
47 providing a rich and extensible description of device characteristics and
48 features. One example of the functionality provided by
49 <application>HAL</application> is when you plug in a USB storage device.
50 <application>HAL</application> can automatically create a mount point in
51 <filename class="directory">/media</filename> and mount the device.</para>
52
53 <bridgehead renderas="sect3">Package Information</bridgehead>
54 <itemizedlist spacing="compact">
55 <listitem>
56 <para>Download (HTTP): <ulink url="&hal-download-http;"/></para>
57 </listitem>
58 <listitem>
59 <para>Download (FTP): <ulink url="&hal-download-ftp;"/></para>
60 </listitem>
61 <listitem>
62 <para>Download MD5 sum: &hal-md5sum;</para>
63 </listitem>
64 <listitem>
65 <para>Download size: &hal-size;</para>
66 </listitem>
67 <listitem>
68 <para>Estimated disk space required: &hal-buildsize;</para>
69 </listitem>
70 <listitem>
71 <para>Estimated build time: &hal-time;</para>
72 </listitem>
73 </itemizedlist>
74
75 <bridgehead renderas="sect3">Additional Package Download</bridgehead>
76 <itemizedlist spacing='compact'>
77 <title>Required Hardware Data</title>
78 <listitem>
79 <para>Download (HTTP): <ulink url="&hal-info-download-http;"/></para>
80 </listitem>
81 <listitem>
82 <para>Download (FTP): <ulink url="&hal-info-download-ftp;"/></para>
83 </listitem>
84 <listitem>
85 <para>Download MD5 sum: &hal-info-md5sum;</para>
86 </listitem>
87 <listitem>
88 <para>Download size: &hal-info-size;</para>
89 </listitem>
90 </itemizedlist>
91
92 <bridgehead renderas="sect3">HAL Dependencies</bridgehead>
93
94 <bridgehead renderas="sect4">Required</bridgehead>
95 <para role="required"><xref linkend="dbus-glib"/></para>
96
97 <bridgehead renderas="sect4">Recommended</bridgehead>
98 <para role="recommended"><xref linkend="pciutils"/>
99 (with a current <filename>pci.ids</filename> file) and
100 <xref linkend="usbutils"/>
101 (with a current <filename>usb.ids</filename> file)</para>
102
103 <bridgehead renderas="sect4">Optional (to Create Documentation)</bridgehead>
104 <para role="optional"><xref linkend="xmlto"/></para>
105
106 <bridgehead renderas="sect4">Optional</bridgehead>
107 <para role="optional"><xref linkend="gtk-doc"/>,
108 <xref linkend="acl"/>,
109 <xref linkend="gperf"/>,
110 <ulink url="http://www.freedesktop.org/wiki/Software/PolicyKit">PolicyKit</ulink>,
111 <xref linkend="consolekit"/>,
112 <xref linkend="intltool"/>,
113 <xref linkend="parted"/>, and
114 <ulink url="https://fedorahosted.org/libsmbios/">libsmbios</ulink></para>
115
116 <para condition="html" role="usernotes">User Notes:
117 <ulink url="&blfs-wiki;/hal"/></para>
118
119 </sect2>
120
121 <sect2 role="installation">
122 <title>Installation of HAL</title>
123
124 <para>You must create a dedicated user and group before installing the
125 package. Though the default BLFS instructions run the
126 <application>HAL</application> daemon as the
127 <systemitem class="username">root</systemitem> user, a configuration file
128 is installed which has the dedicated user's name hard-coded in it. This
129 causes a confusing message to be generated when starting the
130 <application>D-BUS</application> daemon. Issue the following commands as
131 the <systemitem class="username">root</systemitem> user:</para>
132
133<screen role="root"><userinput>groupadd -fg 19 haldaemon &amp;&amp;
134useradd -c "HAL Daemon User" -d /dev/null -u 19 \
135 -g haldaemon -s /bin/false haldaemon || [ $? == 9 ]</userinput></screen>
136
137 <para>Install <application>HAL</application> by running the following
138 commands:</para>
139
140<screen><userinput>./configure --prefix=/usr \
141 --sysconfdir=/etc \
142 --libexecdir=/usr/lib/hal \
143 --localstatedir=/var \
144 --docdir=/usr/share/doc/hal-&hal-version; \
145 --enable-policy-kit=no &amp;&amp;
146make</userinput></screen>
147
148 <para>To test the results, issue: <command>make check</command>.</para>
149
150 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
151
152<screen role="root"><userinput>make install</userinput></screen>
153
154 <para>Install the <application>HAL</application> hardware data with the
155 following commands:</para>
156
157<screen><userinput>tar -xf ../hal-info-&hal-info-version;.tar.bz2 &amp;&amp;
158cd hal-info-&hal-info-version; &amp;&amp;
159./configure --prefix=/usr --sysconfdir=/etc</userinput></screen>
160
161 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
162
163<screen role="root"><userinput>make install</userinput></screen>
164
165 </sect2>
166
167 <sect2 role="commands">
168 <title>Command Explanations</title>
169
170 <para><parameter>--libexecdir=/usr/lib/hal</parameter>: This parameter
171 forces the installation of libexec files to
172 <filename class='directory'>/usr/lib/hal</filename> instead of
173 <filename class='directory'>/usr/libexec</filename>.</para>
174
175 <para><parameter>--localstatedir=/var</parameter>: This parameter forces
176 the creation of the <filename>pid</filename> file to
177 <filename class='directory'>/var/run/hald</filename> instead of
178 <filename class='directory'>/usr/var/run/hald</filename>.</para>
179
180 <para><parameter>--enable-policy-kit=no</parameter>: This parameter is
181 required if PolicyKit is not installed. Remove it if PolicyKit is
182 installed.</para>
183
184 <para><parameter>--enable-docbook-docs
185 --docdir=/usr/share/doc/hal-&hal-version;</parameter>: If <xref
186 linkend="xmlto"/> is available, these parameters enable the
187 <application>HAL</application> specification documentation to be
188 built.</para>
189
190 </sect2>
191
192 <sect2>
193 <title>Run-Time Dependencies</title>
194
195 <para>A few more packages enable more functionality in
196 <application>HAL</application> at run-time.
197 These include <xref linkend="eject"/>, <ulink
198 url="http://www.nongnu.org/dmidecode/">dmidecode</ulink>,
199 <xref linkend="lvm2"/> (device-mapper),
200 <ulink url="http://luks.endorphin.org/dm-crypt">Cryptsetup-LUKS</ulink>, and
201 <ulink url="http://pm-utils.freedesktop.org/wiki/">pm-utils</ulink>.</para>
202
203 </sect2>
204
205 <sect2 role="configuration">
206 <title>Configuring HAL</title>
207
208 <sect3 id="hal-config">
209 <title>Config Files</title>
210 <para><filename>/etc/dbus-1/system.d/hal.conf</filename>,
211 <filename>/etc/dbus-1/system.d/halusers.conf</filename> and
212 <filename>/etc/hal/*</filename></para>
213
214 <indexterm zone="hal hal-config">
215 <primary sortas="e-etc-dbus-1-system.d-hal.conf">/etc/dbus-1/system.d/hal.conf</primary>
216 </indexterm>
217
218 <indexterm zone="hal hal-config">
219 <primary sortas="e-etc-dbus-1-system.d-halusers.conf">/etc/dbus-1/system.d/halusers.conf</primary>
220 </indexterm>
221
222 <indexterm zone="hal hal-config">
223 <primary sortas="e-etc-hal-star">/etc/hal/*</primary>
224 </indexterm>
225 </sect3>
226
227 <sect3><title>Configuration Information</title>
228 <sect4><title>Allowing users to invoke HAL methods</title>
229
230 <para>The default setup for <application>HAL</application> is to allow
231 only certain users to invoke methods such as Mount(). These are
232 the <systemitem class="username">root</systemitem> user and the user
233 determined to be at the active console using <ulink
234 url="&blfs-wiki;/linux-pam">pam_console</ulink>. If you are not set
235 up to use <xref linkend="linux-pam"/> and <ulink
236 url="&blfs-wiki;/linux-pam">pam_console</ulink>, create a group that
237 is allowed to invoke <application>HAL</application> methods with the
238 following commands:</para>
239
240<screen role="root"><userinput>groupadd -fg 61 halusers &amp;&amp;
241cat &gt; /etc/dbus-1/system.d/halusers.conf &lt;&lt; "EOF"
242<literal>&lt;!DOCTYPE busconfig PUBLIC
243 "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
244 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"&gt;
245&lt;busconfig&gt;
246
247 &lt;!-- Allow users in the halusers group invoke HAL methods --&gt;
248 &lt;policy group="halusers"&gt;
249 &lt;allow send_interface="org.freedesktop.Hal.Device.SystemPowerManagement"/&gt;
250 &lt;allow send_interface="org.freedesktop.Hal.Device.LaptopPanel"/&gt;
251 &lt;allow send_interface="org.freedesktop.Hal.Device.Volume"/&gt;
252 &lt;allow send_interface="org.freedesktop.Hal.Device.Volume.Crypto"/&gt;
253 &lt;/policy&gt;
254
255&lt;/busconfig&gt;</literal>
256EOF</userinput></screen>
257
258 <para>Now add the users you would like to the <systemitem
259 class="groupname">halusers</systemitem> group to use
260 <application>HAL</application>.</para>
261
262<screen role="root"><userinput>usermod -a -G halusers <replaceable>&lt;username&gt;</replaceable></userinput></screen>
263
264 <para>Note that these users still need
265 to have appropriate permissions to access the devices that
266 <application>HAL</application> will invoke its methods on.</para>
267
268 <para>With the above configuration in place, authorized users now
269 have the ability to unmount disk partitions mounted at non-standard
270 locations such as <filename class='directory'>/pub</filename>. If
271 you'd like to restrict this policy to only drives which are considered
272 removable or hotpluggable, add the following configuration file as
273 the <systemitem class='username'>root</systemitem> user:</para>
274
275<screen role="root"><userinput>cat &gt; /etc/hal/fdi/policy/no-fixed-drives.fdi &lt;&lt; "EOF"
276<literal>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!-- -*- SGML -*- --&gt;
277
278&lt;!-- Don't allow HAL methods on disks that are not
279 removable or hotpluggable --&gt;
280
281&lt;deviceinfo version="0.2"&gt;
282&lt;device&gt;
283 &lt;match key="@block.storage_device:storage.hotpluggable" bool="false"&gt;
284 &lt;match key="@block.storage_device:storage.removable" bool="false"&gt;
285 &lt;merge key="volume.ignore" type="bool"&gt;true&lt;/merge&gt;
286 &lt;/match&gt;
287 &lt;/match&gt;
288&lt;/device&gt;
289&lt;/deviceinfo&gt;</literal>
290EOF</userinput></screen>
291 </sect4>
292
293 <sect4><title>Installing mount helpers</title>
294 <para><application>HAL</application> only provides the methods such
295 as Mount() to act on hardware. In order to take advantage of these,
296 a <application>HAL</application> event handler such as <ulink
297 url="http://ivman.sourceforge.net/">Ivman</ulink> should be
298 installed.</para>
299 <!-- FIXME: is Ivman still alive? -->
300 <!-- FIXME: explicitly name the mount helpers
301 from KDE (???) and Xfce (exo-mount) -->
302 </sect4>
303
304 <sect4><title>Changing default mount options</title>
305 <para>In some cases, it is necessary to specify some default mount
306 options for filesystems. E.g., in non-English environments, the
307 <option>iocharset</option> and <option>codepage</option> options
308 are needed for filesystems of Windows origin in order to show
309 national characters correctly. Also, due to a
310 <ulink url="https://launchpad.net/bugs/133567">bug</ulink> in the
311 Linux kernel version in LFS (2.6.22.x), you may want to pass the
312 <option>usefree</option> option to vfat filesystems in order to reduce
313 the time needed to determine the amount of free space on the
314 filesystem.</para>
315
316 <para>Google search results for <quote>hal default mount options</quote>
317 are still full of recommendations to create <filename>*.fdi</filename>
318 files mentioning either
319 <option>volume.policy</option> or <option>storage.policy</option> keys.
320 Such recommendations worked for HAL-0.4.x only and are invalid now.
321 For HAL-&hal-version;, mount options are expected to be handled
322 as follows:</para>
323
324 <itemizedlist>
325 <listitem>
326 <para>An event handler from the desktop environment receives an
327 event describing the newly-added storage device.</para>
328 </listitem>
329 <listitem>
330 <para>If the storage device is not already mentioned in
331 <filename>/etc/fstab</filename>, mount options are fetched from
332 a database of user preferences, which is specific to the desktop
333 environment, and passed back to HAL.
334 This process can be influenced by the filesystem type
335 and possibly other volume properties available from HAL.</para>
336 </listitem>
337 <listitem>
338 <para>If the options are in the list of permitted ones, HAL
339 mounts the volume.</para>
340 </listitem>
341 </itemizedlist>
342
343 <para>The important point above is that the configuration procedure is
344 desktop-specific. However, as of December, 2007, only GNOME allows the
345 user to set default mount options on a per-filesystem basis,
346 as described in the next paragraph.
347 KDE allows the mount options to be set only on a per-volume basis,
348 not per-filesystem, which is a
349 <ulink url="http://bugs.kde.org/show_bug.cgi?id=133456">bug</ulink>,
350 because, as mentioned in the report, <quote>for every new device (let's
351 say your friend's USB stick) you have to first not mount it, then change
352 options and then mount</quote>. Xfce, if compiled with HAL support,
353 <ulink url="http://bugzilla.xfce.org/show_bug.cgi?id=2891">hard-codes</ulink>
354 the mount options without any means to override them,
355 which is even worse.
356 <!-- (for BLFS editors only: they mention policy-kit as a future
357 solution, but, from the description, policy-kit looks like
358 an XML-ized sudo-like configuration parser, which has nothing
359 common with the "default mount options" problem. -->
360 In KDE and Xfce, if the built-in default mount options are not suitable,
361 it is needed to mention every possible removable storage device in
362 <filename>/etc/fstab</filename> with the correct options, thus mostly
363 defeating the point of installing HAL.</para>
364
365 <para>In order to adjust the default mount options, GNOME users should
366 change the
367 <systemitem>/system/storage/default_options/[fs_type]/mount_options</systemitem>
368 GConf key <!--either using <xref linkend="gconf-editor"/>, or -->from the
369 command line, as demonstrated in the following example:</para>
370
371<screen><userinput>gconftool-2 --type list --list-type=string \
372 --set /system/storage/default_options/vfat/mount_options \
373 "[shortname=mixed,uid=,usefree,iocharset=koi8-r,codepage=866]"</userinput></screen>
374
375 <para>See more details in the gnome-mount(1) manual page.</para>
376 </sect4>
377
378 <sect4><title>Adding allowed mount options</title>
379 <para>The list of mount options permitted in the default HAL
380 configuration resides in the
381 <filename>/usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi</filename>
382 file. GNOME and KDE users may want to use options not in this
383 list (in the above example, this applies to the <option>usefree</option>
384 option). In this case, as <systemitem class="username">root</systemitem>
385 user, create a custom policy file that mentions unknown mount
386 options:</para>
387
388<screen role="root"><userinput>cat &gt; /etc/hal/fdi/policy/user-options.fdi &lt;&lt; "EOF"
389<literal>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!-- -*- SGML -*- --&gt;
390
391&lt;!--
392This file is used to set custom options to the HAL policy settings.
393The default policy settings are defined in files contained in the
394/usr/share/hal/fdi/policy subdirectories. User defined customizations
395should be in files contained in the /etc/hal/fdi/policy directory.
396--&gt;
397
398&lt;deviceinfo version="0.2"&gt;
399 &lt;device&gt;
400
401 &lt;!-- this is to be able to mount media in drives we cannot poll,
402 e.g. IDE Zip Drives and PC style floppy drives --&gt;
403 &lt;match key="storage.media_check_enabled" bool="false"&gt;
404 &lt;match key="storage.no_partitions_hint" bool="true"&gt;
405 &lt;append key="volume.mount.valid_options" type="strlist"&gt;usefree&lt;/append&gt;
406 &lt;!-- Insert other options here --&gt;
407 &lt;/match&gt;
408 &lt;/match&gt;
409
410 &lt;match key="volume.fsusage" string="filesystem"&gt;
411
412 &lt;!-- allow these mount options for vfat --&gt;
413 &lt;match key="volume.fstype" string="vfat"&gt;
414 &lt;append key="volume.mount.valid_options" type="strlist"&gt;usefree&lt;/append&gt;
415 &lt;!-- Insert other options here --&gt;
416 &lt;/match&gt;
417 &lt;/match&gt;
418
419 &lt;/device&gt;
420&lt;/deviceinfo&gt;</literal>
421EOF</userinput></screen>
422
423 </sect4>
424 </sect3>
425
426 <sect3 id="hal-init">
427 <title>Boot Script</title>
428
429 <para>To automatically start the <command>hald</command> daemon
430 when the system is rebooted, install the
431 <filename>/etc/rc.d/init.d/haldaemon</filename>
432 bootscript from the
433 <xref linkend="bootscripts"/> package.</para>
434
435 <indexterm zone="hal hal-init">
436 <primary sortas="f-haldaemon">haldaemon</primary>
437 </indexterm>
438
439 <important>
440 <para>If the system-wide <application>D-BUS</application> daemon was
441 running during the installation of <application>HAL</application>,
442 ensure you stop and restart the <application>D-BUS</application>
443 daemon before attempting to start the <command>hald</command>
444 daemon.</para>
445 </important>
446
447<screen role="root"><userinput>make install-haldaemon</userinput></screen>
448
449 </sect3>
450
451 </sect2>
452
453 <sect2 role="content">
454 <title>Contents</title>
455
456 <segmentedlist>
457 <segtitle>Installed Programs</segtitle>
458 <segtitle>Installed Libraries</segtitle>
459 <segtitle>Installed Directories</segtitle>
460
461 <seglistitem>
462 <seg>hal-device, hal-disable-polling,
463 hal-find-by-capability, hal-find-by-property, hal-get-property,
464 hal-is-caller-locked-out, hal-lock, hal-set-property, hald and
465 lshal</seg>
466 <seg>libhal.{so,a} and libhal-storage,{so,a}</seg>
467 <seg>/etc/hal, /usr/include/hal, /usr/lib/hal,
468 /usr/share/doc/hal-&hal-version;, /usr/share/hal, /var/cache/hald,
469 /var/lib/hal, and /var/run/hald</seg>
470 </seglistitem>
471 </segmentedlist>
472
473 <variablelist>
474 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
475 <?dbfo list-presentation="list"?>
476 <?dbhtml list-presentation="table"?>
477
478 <varlistentry id="hal-device">
479 <term><command>hal-device</command></term>
480 <listitem>
481 <para>is used to create, remove or show a
482 <application>HAL</application> device.</para>
483 <indexterm zone="hal hal-device">
484 <primary sortas="b-hal-device">hal-device</primary>
485 </indexterm>
486 </listitem>
487 </varlistentry>
488
489 <varlistentry id="hal-disable-polling">
490 <term><command>hal-disable-polling</command></term>
491 <listitem>
492 <para>can be used to to disable and enable media detection on
493 drives with removable storage.</para>
494 <indexterm zone="hal hal-disable-polling">
495 <primary sortas="b-hal-disable-polling">hal-disable-polling</primary>
496 </indexterm>
497 </listitem>
498 </varlistentry>
499
500 <varlistentry id="hal-find-by-capability">
501 <term><command>hal-find-by-capability</command></term>
502 <listitem>
503 <para>prints the Unique Device Identifiers for
504 <application>HAL</application> device objects of a given
505 capability.</para>
506 <indexterm zone="hal hal-find-by-capability">
507 <primary sortas="b-hal-find-by-capability">hal-find-by-capability</primary>
508 </indexterm>
509 </listitem>
510 </varlistentry>
511
512 <varlistentry id="hal-find-by-property">
513 <term><command>hal-find-by-property</command></term>
514 <listitem>
515 <para>prints the Unique Device Identifiers for
516 <application>HAL</application> device objects where a given property
517 assumes a given value.</para>
518 <indexterm zone="hal hal-find-by-property">
519 <primary sortas="b-hal-find-by-property">hal-find-by-property</primary>
520 </indexterm>
521 </listitem>
522 </varlistentry>
523
524 <varlistentry id="hal-get-property">
525 <term><command>hal-get-property</command></term>
526 <listitem>
527 <para>retrieves a property from a device.</para>
528 <indexterm zone="hal hal-get-property">
529 <primary sortas="b-hal-get-property">hal-get-property</primary>
530 </indexterm>
531 </listitem>
532 </varlistentry>
533
534 <varlistentry id="hal-set-property">
535 <term><command>hal-set-property</command></term>
536 <listitem>
537 <para>attempts to set property for a device. Note that, due to
538 security considerations, it may not be possible to set a
539 property.</para>
540 <indexterm zone="hal hal-set-property">
541 <primary sortas="b-hal-set-property">hal-set-property</primary>
542 </indexterm>
543 </listitem>
544 </varlistentry>
545
546 <varlistentry id="hal-is-caller-locked-out">
547 <term><command>hal-is-caller-locked-out</command></term>
548 <listitem>
549 <para>determines if a specific caller is locked out of a specific
550 <application>D-Bus</application> interface on a specific device.</para>
551 <indexterm zone="hal hal-is-caller-locked-out">
552 <primary sortas="b-hal-is-caller-locked-out">hal-is-caller-locked-out</primary>
553 </indexterm>
554 </listitem>
555 </varlistentry>
556
557 <varlistentry id="hald">
558 <term><command>hald</command></term>
559 <listitem>
560 <para>is the <application>HAL</application> daemon program.</para>
561 <indexterm zone="hal hald">
562 <primary sortas="b-hald">hald</primary>
563 </indexterm>
564 </listitem>
565 </varlistentry>
566
567 <varlistentry id="lshal">
568 <term><command>lshal</command></term>
569 <listitem>
570 <para>shows all devices and their properties. If the --monitor option
571 is given then the device list and all devices are monitored for
572 changes.</para>
573 <indexterm zone="hal lshal">
574 <primary sortas="b-lshal">lshal</primary>
575 </indexterm>
576 </listitem>
577 </varlistentry>
578
579 <varlistentry id="libhal">
580 <term><filename class='libraryfile'>libhal.{so,a}</filename></term>
581 <listitem>
582 <para>contains the API functions required by the
583 <application>HAL</application> programs.</para>
584 <indexterm zone="hal libhal">
585 <primary sortas="c-libhal">libhal.{so,a}</primary>
586 </indexterm>
587 </listitem>
588 </varlistentry>
589
590 <varlistentry id="libhal-storage">
591 <term><filename class='libraryfile'>libhal-storage.{so,a}</filename></term>
592 <listitem>
593 <para>contains the API functions required by the
594 <application>HAL</application> storage and volume utility
595 programs.</para>
596 <indexterm zone="hal libhal-storage">
597 <primary sortas="c-libhal-storage">libhal-storage.{so,a}</primary>
598 </indexterm>
599 </listitem>
600 </varlistentry>
601
602 </variablelist>
603
604 </sect2>
605
606</sect1>
Note: See TracBrowser for help on using the repository browser.