source: general/sysutils/hal.xml@ befd6fb

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 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 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since befd6fb was befd6fb, checked in by Dan Nichilson <dnicholson@…>, 17 years ago

HAL configuration to prevent methods on fixed drives

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

  • Property mode set to 100644
File size: 24.4 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY hal-download-http "http://freedesktop.org/~david/dist/hal-&hal-version;.tar.gz">
8 <!ENTITY hal-download-ftp "ftp://ftp.fu-berlin.de/unix/linux/mirrors/gentoo/distfiles/hal-&hal-version;.tar.gz">
9 <!ENTITY hal-md5sum "d7a7741808ba130f8aff3f5d3b5689e4">
10 <!ENTITY hal-size "1.5 MB">
11 <!ENTITY hal-buildsize "19.0 MB">
12 <!ENTITY hal-time "0.5 SBU">
13]>
14
15<sect1 id="hal" xreflabel="HAL-&hal-version;">
16 <?dbhtml filename="hal.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>HAL-&hal-version;</title>
24
25 <indexterm zone="hal">
26 <primary sortas="a-HAL">HAL</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to HAL</title>
31
32 <para><application>HAL</application> is a hardware abstraction layer, which
33 is a piece of software that provides a view of the various hardware
34 attached to a system. In addition to this, <application>HAL</application>
35 keeps detailed metadata for each piece of hardware and provides hooks such
36 that system and desktop-level software can react to changes in the hardware
37 configuration in order to maintain system policy.</para>
38
39 <para>The most important goal of <application>HAL</application> is to
40 provide plug-and-play facilities for UNIX-like desktops with focus on
41 providing a rich and extensible description of device characteristics and
42 features. One example of the functionality provided by
43 <application>HAL</application> is when you plug in a USB storage device.
44 <application>HAL</application> can automatically create a mount point in
45 <filename class="directory">/media</filename> and mount the device.</para>
46
47 <bridgehead renderas="sect3">Package Information</bridgehead>
48 <itemizedlist spacing="compact">
49 <listitem>
50 <para>Download (HTTP): <ulink url="&hal-download-http;"/></para>
51 </listitem>
52 <listitem>
53 <para>Download (FTP): <ulink url="&hal-download-ftp;"/></para>
54 </listitem>
55 <listitem>
56 <para>Download MD5 sum: &hal-md5sum;</para>
57 </listitem>
58 <listitem>
59 <para>Download size: &hal-size;</para>
60 </listitem>
61 <listitem>
62 <para>Estimated disk space required: &hal-buildsize;</para>
63 </listitem>
64 <listitem>
65 <para>Estimated build time: &hal-time;</para>
66 </listitem>
67 </itemizedlist>
68
69 <bridgehead renderas="sect3">HAL Dependencies</bridgehead>
70
71 <bridgehead renderas="sect4">Required</bridgehead>
72 <para role="required"><xref linkend="glib2"/>,
73 <xref linkend="dbus"/> (see the <xref linkend="hal-requirements"/>),
74 <xref linkend="python"/>, and
75 <xref linkend="perl-xml-parser"/></para>
76
77 <bridgehead renderas="sect4">Recommended</bridgehead>
78 <para role="recommended"><xref linkend="pciutils"/>
79 (with a current <filename>pci.ids</filename> file) and
80 <xref linkend="usbutils"/>
81 (with a current <filename>usb.ids</filename> file)</para>
82
83 <bridgehead renderas="sect4">Optional</bridgehead>
84 <para role="optional"><xref linkend="pkgconfig"/>,
85 <xref linkend="intltool"/>,
86 <xref linkend="libusb"/>,
87 <xref linkend="doxygen"/>, and
88 <xref linkend="docbook-utils"/></para>
89
90 <para condition="html" role="usernotes">User Notes:
91 <ulink url="&blfs-wiki;/hal"/></para>
92
93 </sect2>
94
95 <sect2 role="installation">
96 <title>Installation of HAL</title>
97
98 <para>You must create a dedicated user and group before installing the
99 package. Though the default BLFS instructions run the
100 <application>HAL</application> daemon as the
101 <systemitem class="username">root</systemitem> user, a configuration file
102 is installed which has the dedicated user's name hard-coded in it. This
103 causes a confusing message to be generated when starting the
104 <application>D-BUS</application> daemon. Issue the following commands as
105 the <systemitem class="username">root</systemitem> user:</para>
106
107<screen role="root"><userinput>groupadd -g 19 haldaemon &amp;&amp;
108useradd -c "HAL Daemon User" -d /dev/null -u 19 \
109 -g haldaemon -s /bin/false haldaemon</userinput></screen>
110
111 <para>Install <application>HAL</application> by running the following
112 commands:</para>
113
114<screen><userinput>./configure --prefix=/usr \
115 --sysconfdir=/etc \
116 --libexecdir=/usr/lib/hal \
117 --localstatedir=/var &amp;&amp;
118make</userinput></screen>
119
120 <para>To test the results, issue <command>make check</command>.</para>
121
122 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
123
124<screen role="root"><userinput>make install &amp;&amp;
125install -v -m755 -d /var/run/hald</userinput></screen>
126
127 </sect2>
128
129 <sect2 role="commands">
130 <title>Command Explanations</title>
131
132 <para><parameter>--libexecdir=/usr/lib/hal</parameter>: This parameter
133 forces the installation of libexec files to
134 <filename class='directory'>/usr/lib/hal</filename> instead of
135 <filename class='directory'>/usr/libexec</filename>.</para>
136
137 <para><parameter>--localstatedir=/var</parameter>: This parameter forces
138 the creation of the <filename>pid</filename> file to
139 <filename class='directory'>/var/run/hald</filename> instead of
140 <filename class='directory'>/usr/var/run/hald</filename>.</para>
141
142 </sect2>
143
144 <sect2 id="hal-runtime-dependencies" xreflabel="GNOME-Python">
145 <title>Run-Time Dependencies</title>
146
147 <para>The <xref linkend="hal-device-manager"/> program requires several
148 additional packages to be installed before it will run. The list is
149 significant and requires a substantial commitment to install them. It is
150 left up to you to determine if the time and effort spent installing the
151 following packages is worth using the <command>hal-device-manager</command>
152 program.</para>
153
154 <para>Though the only requirement to run the
155 <command>hal-device-manager</command> program is installing
156 <ulink url="&gnome-download-http;/gnome-python/">
157 GNOME-Python</ulink>, the dependency list is staggering. The following
158 list does not include the dependencies already identified in the BLFS
159 book. For example, <application>libgnome</application> already lists
160 <application>GNOME VFS</application>, <application>GConf</application>,
161 etc., so they are not repeated here. Note that some of the dependencies
162 have their own dependencies, which have their own, and so forth and so
163 on.</para>
164
165 <itemizedlist>
166 <listitem>
167 <para><ulink
168 url="&gnome-download-http;/gnome-python/">GNOME-Python</ulink>
169 </para>
170
171 <itemizedlist>
172 <listitem>
173 <para><ulink
174 url="http://www.pygtk.org/">PyGTK</ulink> (required)
175 </para>
176
177 <itemizedlist>
178 <listitem>
179 <para><ulink
180 url="http://www.cairographics.org/pycairo">Pycairo</ulink> (optional)
181 </para>
182
183 <itemizedlist>
184 <listitem>
185 <para><ulink
186 url="http://www.cairographics.org/snapshots/">libsvg-cairo</ulink> (optional)
187 </para>
188
189 <itemizedlist>
190 <listitem>
191 <para><ulink
192 url="http://www.cairographics.org/snapshots/">libsvg</ulink> (required)
193 </para>
194 </listitem>
195 </itemizedlist>
196
197 </listitem>
198 <listitem>
199 <para><ulink
200 url="http://www.pygtk.org/">PyGTK</ulink> (optional, and circular)
201 </para>
202 </listitem>
203 <listitem>
204 <para><ulink
205 url="http://sourceforge.net/projects/numpy">Numerical Python</ulink> (optional)
206 </para>
207 </listitem>
208 </itemizedlist>
209
210 </listitem>
211 <listitem>
212 <para><ulink
213 url="http://sourceforge.net/projects/numpy">Numerical Python</ulink> (optional)
214 </para>
215 </listitem>
216 <listitem>
217 <para><xref linkend="libglade"/> (required)</para>
218 </listitem>
219 </itemizedlist>
220
221 </listitem>
222 <listitem>
223 <para><xref linkend="libgnomeui"/> (optional)</para>
224 </listitem>
225 <listitem>
226 <para><xref linkend="libgnome"/> (required)</para>
227 </listitem>
228 <listitem>
229 <para><ulink
230 url="&gnome-download-http;/pyorbit/">PyORBit</ulink> (optional)
231 </para>
232
233 <itemizedlist>
234 <listitem>
235 <para><xref linkend="ORBit2"/> (required)</para>
236 </listitem>
237 </itemizedlist>
238
239 </listitem>
240 </itemizedlist>
241
242 </listitem>
243 </itemizedlist>
244
245 <note>
246 <para>The dependency list is designed to start at the bottom and work
247 your way up until the last package to install is
248 <application>GNOME-Python</application>. Note that the dependencies
249 marked as <quote>required</quote> are required for the package it is
250 listed under. For example, you don't need to install
251 <application>ORBit</application> if you don't plan on installing
252 <application>PyORBit</application>. The minimum packages you could
253 install to support running <xref linkend="hal-device-manager"/> would be
254 (in this order): <xref linkend="libgnome"/>, <xref linkend="libglade"/>,
255 <ulink url="http://www.pygtk.org/">PyGTK</ulink> and <ulink
256 url="&gnome-download-http;/gnome-python/">
257 GNOME-Python</ulink>.</para>
258 </note>
259
260 </sect2>
261
262 <sect2 role="configuration">
263 <title>Configuring HAL</title>
264
265 <sect3 id="hal-config">
266 <title>Config Files</title>
267 <para><filename>/etc/dbus-1/system.d/hal.conf</filename>,
268 <filename>/etc/dbus-1/system.d/halusers.conf</filename> and
269 <filename>/etc/hal/*</filename></para>
270
271 <indexterm zone="hal hal-config">
272 <primary sortas="e-etc-dbus-1-system.d-hal.conf">/etc/dbus-1/system.d/hal.conf</primary>
273 </indexterm>
274
275 <indexterm zone="hal hal-config">
276 <primary sortas="e-etc-dbus-1-system.d-halusers.conf">/etc/dbus-1/system.d/halusers.conf</primary>
277 </indexterm>
278
279 <indexterm zone="hal hal-config">
280 <primary sortas="e-etc-hal-star">/etc/hal/*</primary>
281 </indexterm>
282 </sect3>
283
284 <sect3><title>Configuration Information</title>
285
286 <para>The default setup for <application>HAL</application> is to allow
287 only certain users to invoke methods such as Mount(). These are
288 the <systemitem class="username">root</systemitem> user and the user
289 determined to be at the active console using <ulink
290 url="&blfs-wiki;/linux-pam">pam_console</ulink>. If you are not set
291 up to use <xref linkend="linux-pam"/> and <ulink
292 url="&blfs-wiki;/linux-pam">pam_console</ulink>, create a group that
293 is allowed to invoke <application>HAL</application> methods with the
294 following commands:</para>
295
296<screen role="root"><userinput>groupadd -g 61 halusers &amp;&amp;
297cat &gt; /etc/dbus-1/system.d/halusers.conf &lt;&lt; "EOF"
298<literal>&lt;!DOCTYPE busconfig PUBLIC
299 "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
300 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"&gt;
301&lt;busconfig&gt;
302
303 &lt;!-- Allow users in the halusers group invoke HAL methods --&gt;
304 &lt;policy group="halusers"&gt;
305 &lt;allow send_interface="org.freedesktop.Hal.Device.SystemPowerManagement"/&gt;
306 &lt;allow send_interface="org.freedesktop.Hal.Device.LaptopPanel"/&gt;
307 &lt;allow send_interface="org.freedesktop.Hal.Device.Volume"/&gt;
308 &lt;allow send_interface="org.freedesktop.Hal.Device.Volume.Crypto"/&gt;
309 &lt;/policy&gt;
310
311&lt;/busconfig&gt;</literal>
312EOF</userinput></screen>
313
314 <para>Now add the users you would like to the <systemitem
315 class="groupname">halusers</systemitem> group to use
316 <application>HAL</application>. Note that these users still need
317 to have appropriate permissions to access the devices that
318 <application>HAL</application> will invoke its methods on.</para>
319
320 <para>With the above configuration in place, authorized users now
321 have the ability to unmount disk partitions mounted at non-standard
322 locations such as <filename class='directory'>/pub</filename>. If
323 you'd like to restrict this policy to only drives which are considered
324 removable or hotpluggable, add the following configuration file as
325 the <systemitem class='username'>root</systemitem> user:</para>
326
327<screen role="root"><userinput>cat &gt; /etc/hal/fdi/policy/no-fixed-drives.fdi &lt;&lt; "EOF"
328<literal>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!-- -*- SGML -*- --&gt;
329
330&lt;!-- Don't allow HAL methods on disks that are not
331 removable or hotpluggable --&gt;
332
333&lt;deviceinfo version="0.2"&gt;
334&lt;device&gt;
335 &lt;match key="@block.storage_device:storage.hotpluggable" bool="false"&gt;
336 &lt;match key="@block.storage_device:storage.removable" bool="false"&gt;
337 &lt;merge key="volume.ignore" type="bool"&gt;true&lt;/merge&gt;
338 &lt;/match&gt;
339 &lt;/match&gt;
340&lt;/device&gt;
341&lt;/deviceinfo&gt;</literal>
342EOF</userinput></screen>
343
344 <para><application>HAL</application> only provides the methods such
345 as Mount() to act on hardware. In order to take advantage of these,
346 a <application>HAL</application> event handler such as
347 <xref linkend="gnome-volume-manager"/> or <ulink
348 url="http://ivman.sourceforge.net/">Ivman</ulink> should be
349 installed.</para>
350
351 <!-- Following note is only relevant for HAL-0.5.7.x.
352 Fixed upstream. -->
353 <note>
354 <para><application>HAL</application> will ignore any devices listed
355 in <filename>/etc/fstab</filename> for the purpose of automounting.
356 You must remove any listings for devices that you would like
357 automounted such as CD-ROMs or USB keys.</para>
358 </note>
359
360 <!-- This section commented out for now until it is determined what should
361 be placed in this section
362
363 FIXME: I think this information is still relevant with the
364 exception of its interaction with /etc/fstab. Needs investigation.
365
366 <para>No configuration is necessary for the majority of installations
367 on systems configured with ISO-8859-1 compatible locales. The defaults
368 should work just fine. For some installations, tweaking of the various
369 policies may be required. One such configuration change necessary in some
370 locales is identifying the <option>iocharset</option> and
371 <option>codepage</option> variables in the
372 <filename>/etc/fstab</filename> entries created by the
373 <command>fstab-sync</command> program. If changes are required to the
374 configuration so that your locale is properly identified in the entries
375 created in <filename>/etc/fstab</filename>, issue the following commands
376 as the <systemitem class="username">root</systemitem> user (you must
377 substitute the proper data for the
378 <replaceable>&lt;iocharset&gt;</replaceable> and
379 <replaceable>&lt;codepage&gt;</replaceable> info):</para>
380
381<screen role="root"><userinput>install -v -m755 -d /etc/hal/fdi/policy/30user &amp;&amp;
382cat &gt; /etc/hal/fdi/policy/30user/30user-policy.fdi &lt;&lt; "EOF"
383<literal>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!- -*- SGML -*- -&gt;
384
385&lt;!-
386This file is used to set custom options to the HAL policy settings.
387The default policy settings are defined in files contained in the
388/usr/share/hal/fdi/policy directories. User defined customizations
389should be in files contained in the /etc/hal/fdi/policy directories.
390-&gt;
391
392&lt;deviceinfo version="0.2"&gt;
393
394 &lt;device&gt;
395 &lt;match key="info.udi"
396 string="/org/freedesktop/Hal/devices/computer"&gt;
397
398 &lt;!- Set the iocharset variable in the /etc/fstab file entry -&gt;
399 &lt;merge
400 key="storage.policy.default.mount_option.iocharset=<replaceable>&lt;iocharset&gt;</replaceable>"
401 type="bool"&gt;true&lt;/merge&gt;
402
403 &lt;!- Set the codepage variable in the /etc/fstab file entry -&gt;
404 &lt;merge
405 key="storage.policy.default.mount_option.codepage=<replaceable>&lt;codepage&gt;</replaceable>"
406 type="bool"&gt;true&lt;/merge&gt;
407
408 &lt;/match&gt;
409 &lt;/device&gt;
410
411&lt;/deviceinfo&gt;</literal>
412
413EOF</userinput></screen>
414
415 <note>
416 <para>The previous commands created a file named
417 <filename>/etc/hal/fdi/policy/30user/30user-policy.fdi</filename>. To
418 ease readability of the file, put everything between the
419 &lt;angle brackets&gt; and &lt;merge&gt;&lt;/merge&gt; tags on one
420 line. You must have at least one space character
421 where the ends of the lines were. The file would then look like this
422 (trimmed at the top and bottom for brevity):</para>
423
424<screen><literal> &lt;device&gt;
425 &lt;match key="<replaceable>&lt;text&gt;</replaceable>" string="<replaceable>&lt;text&gt;</replaceable>"&gt;
426
427 &lt;!- Set the iocharset variable in the /etc/fstab file entry -&gt;
428 &lt;merge key="<replaceable>&lt;iocharset text&gt;</replaceable>" type="bool"&gt;true&lt;/merge&gt;
429
430 &lt;!- Set the codepage variable in the /etc/fstab file entry -&gt;
431 &lt;merge key="<replaceable>&lt;codepage text&gt;</replaceable>" type="bool"&gt;true&lt;/merge&gt;
432
433 &lt;/match&gt;
434 &lt;/device&gt;</literal></screen>
435
436 </note>
437
438 -->
439
440 </sect3>
441
442 <sect3 id="hal-init">
443 <title>Boot Script</title>
444
445 <para>To automatically start the <command>hald</command> daemon
446 when the system is rebooted, install the
447 <filename>/etc/rc.d/init.d/haldaemon</filename>
448 bootscript from the
449 <xref linkend="bootscripts"/> package.</para>
450
451 <indexterm zone="hal hal-init">
452 <primary sortas="f-haldaemon">haldaemon</primary>
453 </indexterm>
454
455 <!-- Not sure if this is still required any longer as the HAL daemon
456 used to hang if you didn't first restart the DBUS daemon. This is
457 not the case any longer, but it still seems that D-Bus should be
458 restarted, as the hald.conf file is read by the D-BUS daemon.
459 Leaving it in for now until it is positively confirmed it is not
460 required. -->
461
462 <important>
463 <para>If the system-wide <application>D-BUS</application> daemon was
464 running during the installation of <application>HAL</application>,
465 ensure you stop and restart the <application>D-BUS</application>
466 daemon before attempting to start the <command>hald</command>
467 daemon.</para>
468 </important>
469
470<screen role="root"><userinput>make install-haldaemon</userinput></screen>
471
472 </sect3>
473
474 </sect2>
475
476 <sect2 role="content">
477 <title>Contents</title>
478
479 <segmentedlist>
480 <segtitle>Installed Programs</segtitle>
481 <segtitle>Installed Libraries</segtitle>
482 <segtitle>Installed Directories</segtitle>
483
484 <seglistitem>
485 <seg>hal-device, hal-device-manager,
486 hal-find-by-capability, hal-find-by-property, hal-get-property,
487 hal-set-property, hald and lshal</seg>
488 <seg>libhal.{so,a} and libhal-storage,{so,a}</seg>
489 <seg>/etc/hal, /usr/include/hal, /usr/lib/hal,
490 /usr/share/doc/hal-&hal-version;, /usr/share/hal
491 and /var/run/hald</seg>
492 </seglistitem>
493 </segmentedlist>
494
495 <variablelist>
496 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
497 <?dbfo list-presentation="list"?>
498 <?dbhtml list-presentation="table"?>
499
500 <varlistentry id="hal-device">
501 <term><command>hal-device</command></term>
502 <listitem>
503 <para>is used to create, remove or show a
504 <application>HAL</application> device.</para>
505 <indexterm zone="hal hal-device">
506 <primary sortas="b-hal-device">hal-device</primary>
507 </indexterm>
508 </listitem>
509 </varlistentry>
510
511 <varlistentry id="hal-device-manager">
512 <term><command>hal-device-manager</command></term>
513 <listitem>
514 <para>shows a graphical representation of all the devices
515 <application>HAL</application> is aware of. This program requires
516 <xref linkend="hal-runtime-dependencies"/>. Here is a <ulink
517 url="http://cvs.freedesktop.org/*checkout*/hal/hal/doc/spec/hal-devices1.png">
518 screenshot</ulink> of <command>hal-device-manager</command>
519 communicating with the HAL daemon and displaying a tree of device
520 objects. The shown properties in the screenshot are for a device
521 object representing a hard disk.</para>
522 <indexterm zone="hal hal-device-manager">
523 <primary sortas="b-hal-device-manager">hal-device-manager</primary>
524 </indexterm>
525 </listitem>
526 </varlistentry>
527
528 <varlistentry id="hal-find-by-capability">
529 <term><command>hal-find-by-capability</command></term>
530 <listitem>
531 <para>prints the Unique Device Identifiers for
532 <application>HAL</application> device objects of a given
533 capability.</para>
534 <indexterm zone="hal hal-find-by-capability">
535 <primary sortas="b-hal-find-by-capability">hal-find-by-capability</primary>
536 </indexterm>
537 </listitem>
538 </varlistentry>
539
540 <varlistentry id="hal-find-by-property">
541 <term><command>hal-find-by-property</command></term>
542 <listitem>
543 <para>prints the Unique Device Identifiers for
544 <application>HAL</application> device objects where a given property
545 assumes a given value.</para>
546 <indexterm zone="hal hal-find-by-property">
547 <primary sortas="b-hal-find-by-property">hal-find-by-property</primary>
548 </indexterm>
549 </listitem>
550 </varlistentry>
551
552 <varlistentry id="hal-get-property">
553 <term><command>hal-get-property</command></term>
554 <listitem>
555 <para>retrieves a property from a device.</para>
556 <indexterm zone="hal hal-get-property">
557 <primary sortas="b-hal-get-property">hal-get-property</primary>
558 </indexterm>
559 </listitem>
560 </varlistentry>
561
562 <varlistentry id="hal-set-property">
563 <term><command>hal-set-property</command></term>
564 <listitem>
565 <para>attempts to set property for a device. Note that, due to
566 security considerations, it may not be possible to set a
567 property.</para>
568 <indexterm zone="hal hal-set-property">
569 <primary sortas="b-hal-set-property">hal-set-property</primary>
570 </indexterm>
571 </listitem>
572 </varlistentry>
573
574 <varlistentry id="hald">
575 <term><command>hald</command></term>
576 <listitem>
577 <para>is the <application>HAL</application> daemon program.</para>
578 <indexterm zone="hal hald">
579 <primary sortas="b-hald">hald</primary>
580 </indexterm>
581 </listitem>
582 </varlistentry>
583
584 <varlistentry id="lshal">
585 <term><command>lshal</command></term>
586 <listitem>
587 <para>shows all devices and their properties. If the --monitor option
588 is given then the device list and all devices are monitored for
589 changes.</para>
590 <indexterm zone="hal lshal">
591 <primary sortas="b-lshal">lshal</primary>
592 </indexterm>
593 </listitem>
594 </varlistentry>
595
596 <varlistentry id="libhal">
597 <term><filename class='libraryfile'>libhal.{so,a}</filename></term>
598 <listitem>
599 <para>contains the API functions required by the
600 <application>HAL</application> programs.</para>
601 <indexterm zone="hal libhal">
602 <primary sortas="c-libhal">libhal.{so,a}</primary>
603 </indexterm>
604 </listitem>
605 </varlistentry>
606
607 <varlistentry id="libhal-storage">
608 <term><filename class='libraryfile'>libhal-storage.{so,a}</filename></term>
609 <listitem>
610 <para>contains the API functions required by the
611 <application>HAL</application> storage and volume utility
612 programs.</para>
613 <indexterm zone="hal libhal-storage">
614 <primary sortas="c-libhal-storage">libhal-storage.{so,a}</primary>
615 </indexterm>
616 </listitem>
617 </varlistentry>
618
619 </variablelist>
620
621 </sect2>
622
623</sect1>
Note: See TracBrowser for help on using the repository browser.