source: general/sysutils/hal.xml@ dc66411

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 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 dc66411 was dc66411, checked in by Randy McMurchy <randy@…>, 17 years ago

Added a missing comma to the HAL instructions

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

  • Property mode set to 100644
File size: 28.4 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://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 "a6f532770cf9286e1de38d6570cbc6bc">
10 <!ENTITY hal-size "1.5 MB">
11 <!ENTITY hal-buildsize "20.2 MB">
12 <!ENTITY hal-time "0.4 SBU">
13
14 <!ENTITY hal-info-version "20070425">
15 <!ENTITY hal-info-download-http "http://freedesktop.org/~david/dist/hal-info-&hal-info-version;.tar.gz">
16 <!ENTITY hal-info-download-ftp "ftp://ftp.fu-berlin.de/unix/linux/mirrors/gentoo/distfiles/hal-info-&hal-info-version;.tar.gz">
17 <!ENTITY hal-info-md5sum "69022cc562aa374c603d3ff8ca33569c">
18 <!ENTITY hal-info-size "106 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 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"/>,
96 <xref linkend="python"/>, and
97 <xref linkend="perl-xml-parser"/></para>
98
99 <bridgehead renderas="sect4">Recommended</bridgehead>
100 <para role="recommended"><xref linkend="pciutils"/>
101 (with a current <filename>pci.ids</filename> file) and
102 <xref linkend="usbutils"/>
103 (with a current <filename>usb.ids</filename> file)</para>
104
105 <bridgehead renderas="sect4">Optional (to Build
106 <command>hal-device-manager</command>)</bridgehead>
107 <para role="optional"><xref linkend="dbus-python"/></para>
108
109 <bridgehead renderas="sect4">Optional (to Create Documentation)</bridgehead>
110 <para role="optional"><xref linkend="libxml2"/> and
111 <ulink url="http://cyberelk.net/tim/xmlto/">xmlto</ulink></para>
112
113 <bridgehead renderas="sect4">Optional</bridgehead>
114 <para role="optional"><xref linkend="gtk-doc"/>,
115 <ulink url="http://www.gnu.org/software/parted/index.shtml">Parted</ulink>,
116 <xref linkend="libusb"/>,
117 <ulink url="http://linux.dell.com/libsmbios/main/index.html">libsmbios</ulink>,
118 <ulink url="http://gitweb.freedesktop.org/?p=PolicyKit.git;a=summary">PolicyKit</ulink>,
119 and <xref linkend="intltool"/></para>
120
121 <para condition="html" role="usernotes">User Notes:
122 <ulink url="&blfs-wiki;/hal"/></para>
123
124 </sect2>
125
126 <sect2 role="installation">
127 <title>Installation of HAL</title>
128
129 <para>You must create a dedicated user and group before installing the
130 package. Though the default BLFS instructions run the
131 <application>HAL</application> daemon as the
132 <systemitem class="username">root</systemitem> user, a configuration file
133 is installed which has the dedicated user's name hard-coded in it. This
134 causes a confusing message to be generated when starting the
135 <application>D-BUS</application> daemon. Issue the following commands as
136 the <systemitem class="username">root</systemitem> user:</para>
137
138<screen role="root"><userinput>groupadd -g 19 haldaemon &amp;&amp;
139useradd -c "HAL Daemon User" -d /dev/null -u 19 \
140 -g haldaemon -s /bin/false haldaemon</userinput></screen>
141
142 <para>Install <application>HAL</application> by running the following
143 commands:</para>
144
145<screen><userinput>./configure --prefix=/usr \
146 --sysconfdir=/etc \
147 --libexecdir=/usr/lib/hal \
148 --localstatedir=/var &amp;&amp;
149make</userinput></screen>
150
151 <para>To test the results, issue <command>make check</command>.</para>
152
153 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
154
155<screen role="root"><userinput>make install</userinput></screen>
156
157 <para>Prepare the <application>HAL</application> hardware data with the
158 following commands:</para>
159
160<screen><userinput>tar -xf ../hal-info-&hal-info-version;.tar.gz &amp;&amp;
161cd hal-info-&hal-info-version; &amp; &amp;
162./configure --prefix=/usr</userinput></screen>
163
164 <para>Finally, as the <systemitem class="username">root</systemitem> user:</para>
165
166<screen role="root"><userinput>make install</userinput></screen>
167
168 </sect2>
169
170 <sect2 role="commands">
171 <title>Command Explanations</title>
172
173 <para><parameter>--libexecdir=/usr/lib/hal</parameter>: This parameter
174 forces the installation of libexec files to
175 <filename class='directory'>/usr/lib/hal</filename> instead of
176 <filename class='directory'>/usr/libexec</filename>.</para>
177
178 <para><parameter>--localstatedir=/var</parameter>: This parameter forces
179 the creation of the <filename>pid</filename> file to
180 <filename class='directory'>/var/run/hald</filename> instead of
181 <filename class='directory'>/usr/var/run/hald</filename>.</para>
182
183 <para><parameter>--enable-docbook-docs
184 --docdir=/usr/share/doc/hal-&hal-version;</parameter>: If <xref
185 linkend="libxml2"/> and <ulink
186 url="http://cyberelk.net/tim/xmlto/">xmlto</ulink> are available, these
187 parameters enable the <application>HAL</application> specification
188 documentation to be built.</para>
189
190 </sect2>
191
192 <sect2 id="hal-runtime-dependencies" xreflabel="GNOME-Python">
193 <title>Run-Time Dependencies</title>
194
195 <para>A few more packages enable more functionality in
196 <application>HAL</application> at run-time. These include <ulink
197 url="http://ca.geocities.com/jefftranter@rogers.com/eject.html">Eject</ulink>,
198 <ulink url="http://people.freedesktop.org/~mccann/dist/">ConsoleKit</ulink>,
199 <ulink url="http://www.nongnu.org/dmidecode/">dmidecode</ulink>,
200 <ulink url="http://sourceware.org/dm/">Device-mapper</ulink>,
201 <ulink url="http://luks.endorphin.org/dm-crypt">Cryptsetup-LUKS</ulink>, and
202 <ulink url="http://cvsweb.freedesktop.org/pm-utils/pm-utils/">pm-utils</ulink>.</para>
203
204 <para>The <xref linkend="hal-device-manager"/> program requires several
205 additional packages to be installed before it will run. The list is
206 significant and requires a substantial commitment to install them. It is
207 left up to you to determine if the time and effort spent installing the
208 following packages is worth using the <command>hal-device-manager</command>
209 program.</para>
210
211 <para>Though the only requirement to run the
212 <command>hal-device-manager</command> program is installing
213 <ulink url="&gnome-download-http;/gnome-python/">
214 GNOME-Python</ulink>, the dependency list is staggering. The following
215 list does not include the dependencies already identified in the BLFS
216 book. For example, <application>libgnome</application> already lists
217 <application>GNOME VFS</application>, <application>GConf</application>,
218 etc., so they are not repeated here. Note that some of the dependencies
219 have their own dependencies, which have their own, and so forth and so
220 on.</para>
221
222 <itemizedlist>
223 <listitem>
224 <para><ulink
225 url="&gnome-download-http;/gnome-python/">GNOME-Python</ulink>
226 </para>
227
228 <itemizedlist>
229 <listitem>
230 <para><ulink
231 url="http://www.pygtk.org/">PyGTK</ulink> (required)
232 </para>
233
234 <itemizedlist>
235 <listitem>
236 <para><xref linkend="libglade"/> (required)</para>
237 </listitem>
238 <listitem>
239 <para><ulink
240 url="&gnome-download-http;/pygobject/">PyGObject</ulink> (required)</para>
241 </listitem>
242 <listitem>
243 <para><ulink
244 url="http://www.cairographics.org/pycairo">Pycairo</ulink> (optional)
245 </para>
246
247 <!-- Removing these dependencies as they are now obsolete
248 See the pycairo docs for full details
249 <itemizedlist>
250 <listitem>
251 <para><ulink
252 url="http://www.cairographics.org/snapshots/">libsvg-cairo</ulink> (optional)
253 </para>
254
255 <itemizedlist>
256 <listitem>
257 <para><ulink
258 url="http://www.cairographics.org/snapshots/">libsvg</ulink> (required)
259 </para>
260 </listitem>
261 </itemizedlist>
262
263 </listitem>
264 <listitem>
265 <para><ulink
266 url="http://www.pygtk.org/">PyGTK</ulink> (optional, and circular)
267 </para>
268 </listitem>
269 <listitem>
270 <para><ulink
271 url="http://sourceforge.net/projects/numpy">Numerical Python</ulink> (optional)
272 </para>
273 </listitem>
274 </itemizedlist>
275 -->
276
277 </listitem>
278 <listitem>
279 <para><ulink
280 url="http://sourceforge.net/projects/numpy">Old Numeric</ulink> (optional)
281 </para>
282 </listitem>
283 </itemizedlist>
284
285 </listitem>
286 <listitem>
287 <para><xref linkend="libgnomeui"/> (optional)</para>
288 </listitem>
289 <listitem>
290 <para><xref linkend="libgnome"/> (required)</para>
291 </listitem>
292 <listitem>
293 <para><ulink
294 url="&gnome-download-http;/pyorbit/">PyORBit</ulink> (optional)
295 </para>
296
297 <itemizedlist>
298 <listitem>
299 <para><xref linkend="ORBit2"/> (required)</para>
300 </listitem>
301 </itemizedlist>
302
303 </listitem>
304 </itemizedlist>
305
306 </listitem>
307 </itemizedlist>
308
309 <note>
310 <para>The dependency list is designed to start at the bottom and work
311 your way up until the last package to install is
312 <application>GNOME-Python</application>. Note that the dependencies
313 marked as <quote>required</quote> are required for the package it is
314 listed under. For example, you don't need to install
315 <application>ORBit</application> if you don't plan on installing
316 <application>PyORBit</application>. The minimum packages you could
317 install to support running <xref linkend="hal-device-manager"/> would be
318 (in this order): <xref linkend="libgnome"/>, <xref linkend="libglade"/>,
319 <ulink url="http://www.pygtk.org/">PyGTK</ulink> and <ulink
320 url="&gnome-download-http;/gnome-python/">
321 GNOME-Python</ulink>.</para>
322 </note>
323
324 </sect2>
325
326 <sect2 role="configuration">
327 <title>Configuring HAL</title>
328
329 <sect3 id="hal-config">
330 <title>Config Files</title>
331 <para><filename>/etc/dbus-1/system.d/hal.conf</filename>,
332 <filename>/etc/dbus-1/system.d/halusers.conf</filename> and
333 <filename>/etc/hal/*</filename></para>
334
335 <indexterm zone="hal hal-config">
336 <primary sortas="e-etc-dbus-1-system.d-hal.conf">/etc/dbus-1/system.d/hal.conf</primary>
337 </indexterm>
338
339 <indexterm zone="hal hal-config">
340 <primary sortas="e-etc-dbus-1-system.d-halusers.conf">/etc/dbus-1/system.d/halusers.conf</primary>
341 </indexterm>
342
343 <indexterm zone="hal hal-config">
344 <primary sortas="e-etc-hal-star">/etc/hal/*</primary>
345 </indexterm>
346 </sect3>
347
348 <sect3><title>Configuration Information</title>
349
350 <para>The default setup for <application>HAL</application> is to allow
351 only certain users to invoke methods such as Mount(). These are
352 the <systemitem class="username">root</systemitem> user and the user
353 determined to be at the active console using <ulink
354 url="&blfs-wiki;/linux-pam">pam_console</ulink>. If you are not set
355 up to use <xref linkend="linux-pam"/> and <ulink
356 url="&blfs-wiki;/linux-pam">pam_console</ulink>, create a group that
357 is allowed to invoke <application>HAL</application> methods with the
358 following commands:</para>
359
360<screen role="root"><userinput>groupadd -g 61 halusers &amp;&amp;
361cat &gt; /etc/dbus-1/system.d/halusers.conf &lt;&lt; "EOF"
362<literal>&lt;!DOCTYPE busconfig PUBLIC
363 "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
364 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"&gt;
365&lt;busconfig&gt;
366
367 &lt;!-- Allow users in the halusers group invoke HAL methods --&gt;
368 &lt;policy group="halusers"&gt;
369 &lt;allow send_interface="org.freedesktop.Hal.Device.SystemPowerManagement"/&gt;
370 &lt;allow send_interface="org.freedesktop.Hal.Device.LaptopPanel"/&gt;
371 &lt;allow send_interface="org.freedesktop.Hal.Device.Volume"/&gt;
372 &lt;allow send_interface="org.freedesktop.Hal.Device.Volume.Crypto"/&gt;
373 &lt;/policy&gt;
374
375&lt;/busconfig&gt;</literal>
376EOF</userinput></screen>
377
378 <para>Now add the users you would like to the <systemitem
379 class="groupname">halusers</systemitem> group to use
380 <application>HAL</application>. Note that these users still need
381 to have appropriate permissions to access the devices that
382 <application>HAL</application> will invoke its methods on.</para>
383
384 <para>With the above configuration in place, authorized users now
385 have the ability to unmount disk partitions mounted at non-standard
386 locations such as <filename class='directory'>/pub</filename>. If
387 you'd like to restrict this policy to only drives which are considered
388 removable or hotpluggable, add the following configuration file as
389 the <systemitem class='username'>root</systemitem> user:</para>
390
391<screen role="root"><userinput>cat &gt; /etc/hal/fdi/policy/no-fixed-drives.fdi &lt;&lt; "EOF"
392<literal>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!-- -*- SGML -*- --&gt;
393
394&lt;!-- Don't allow HAL methods on disks that are not
395 removable or hotpluggable --&gt;
396
397&lt;deviceinfo version="0.2"&gt;
398&lt;device&gt;
399 &lt;match key="@block.storage_device:storage.hotpluggable" bool="false"&gt;
400 &lt;match key="@block.storage_device:storage.removable" bool="false"&gt;
401 &lt;merge key="volume.ignore" type="bool"&gt;true&lt;/merge&gt;
402 &lt;/match&gt;
403 &lt;/match&gt;
404&lt;/device&gt;
405&lt;/deviceinfo&gt;</literal>
406EOF</userinput></screen>
407
408 <para><application>HAL</application> only provides the methods such
409 as Mount() to act on hardware. In order to take advantage of these,
410 a <application>HAL</application> event handler such as
411 <xref linkend="gnome-volume-manager"/> or <ulink
412 url="http://ivman.sourceforge.net/">Ivman</ulink> should be
413 installed.</para>
414
415 <!-- Following note is only relevant for HAL-0.5.7.x.
416 Fixed upstream. -->
417 <note>
418 <para><application>HAL</application> will ignore any devices listed
419 in <filename>/etc/fstab</filename> for the purpose of automounting.
420 You must remove any listings for devices that you would like
421 automounted such as CD-ROMs or USB keys.</para>
422 </note>
423
424 <!-- This section commented out for now until it is determined what should
425 be placed in this section
426
427 FIXME: I think this information is still relevant with the
428 exception of its interaction with /etc/fstab. Needs investigation.
429
430 <para>No configuration is necessary for the majority of installations
431 on systems configured with ISO-8859-1 compatible locales. The defaults
432 should work just fine. For some installations, tweaking of the various
433 policies may be required. One such configuration change necessary in some
434 locales is identifying the <option>iocharset</option> and
435 <option>codepage</option> variables in the
436 <filename>/etc/fstab</filename> entries created by the
437 <command>fstab-sync</command> program. If changes are required to the
438 configuration so that your locale is properly identified in the entries
439 created in <filename>/etc/fstab</filename>, issue the following commands
440 as the <systemitem class="username">root</systemitem> user (you must
441 substitute the proper data for the
442 <replaceable>&lt;iocharset&gt;</replaceable> and
443 <replaceable>&lt;codepage&gt;</replaceable> info):</para>
444
445<screen role="root"><userinput>install -v -m755 -d /etc/hal/fdi/policy/30user &amp;&amp;
446cat &gt; /etc/hal/fdi/policy/30user/30user-policy.fdi &lt;&lt; "EOF"
447<literal>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!- -*- SGML -*- -&gt;
448
449&lt;!-
450This file is used to set custom options to the HAL policy settings.
451The default policy settings are defined in files contained in the
452/usr/share/hal/fdi/policy directories. User defined customizations
453should be in files contained in the /etc/hal/fdi/policy directories.
454-&gt;
455
456&lt;deviceinfo version="0.2"&gt;
457
458 &lt;device&gt;
459 &lt;match key="info.udi"
460 string="/org/freedesktop/Hal/devices/computer"&gt;
461
462 &lt;!- Set the iocharset variable in the /etc/fstab file entry -&gt;
463 &lt;merge
464 key="storage.policy.default.mount_option.iocharset=<replaceable>&lt;iocharset&gt;</replaceable>"
465 type="bool"&gt;true&lt;/merge&gt;
466
467 &lt;!- Set the codepage variable in the /etc/fstab file entry -&gt;
468 &lt;merge
469 key="storage.policy.default.mount_option.codepage=<replaceable>&lt;codepage&gt;</replaceable>"
470 type="bool"&gt;true&lt;/merge&gt;
471
472 &lt;/match&gt;
473 &lt;/device&gt;
474
475&lt;/deviceinfo&gt;</literal>
476
477EOF</userinput></screen>
478
479 <note>
480 <para>The previous commands created a file named
481 <filename>/etc/hal/fdi/policy/30user/30user-policy.fdi</filename>. To
482 ease readability of the file, put everything between the
483 &lt;angle brackets&gt; and &lt;merge&gt;&lt;/merge&gt; tags on one
484 line. You must have at least one space character
485 where the ends of the lines were. The file would then look like this
486 (trimmed at the top and bottom for brevity):</para>
487
488<screen><literal> &lt;device&gt;
489 &lt;match key="<replaceable>&lt;text&gt;</replaceable>" string="<replaceable>&lt;text&gt;</replaceable>"&gt;
490
491 &lt;!- Set the iocharset variable in the /etc/fstab file entry -&gt;
492 &lt;merge key="<replaceable>&lt;iocharset text&gt;</replaceable>" type="bool"&gt;true&lt;/merge&gt;
493
494 &lt;!- Set the codepage variable in the /etc/fstab file entry -&gt;
495 &lt;merge key="<replaceable>&lt;codepage text&gt;</replaceable>" type="bool"&gt;true&lt;/merge&gt;
496
497 &lt;/match&gt;
498 &lt;/device&gt;</literal></screen>
499
500 </note>
501
502 -->
503
504 </sect3>
505
506 <sect3 id="hal-init">
507 <title>Boot Script</title>
508
509 <para>To automatically start the <command>hald</command> daemon
510 when the system is rebooted, install the
511 <filename>/etc/rc.d/init.d/haldaemon</filename>
512 bootscript from the
513 <xref linkend="bootscripts"/> package.</para>
514
515 <indexterm zone="hal hal-init">
516 <primary sortas="f-haldaemon">haldaemon</primary>
517 </indexterm>
518
519 <!-- Not sure if this is still required any longer as the HAL daemon
520 used to hang if you didn't first restart the DBUS daemon. This is
521 not the case any longer, but it still seems that D-Bus should be
522 restarted, as the hald.conf file is read by the D-BUS daemon.
523 Leaving it in for now until it is positively confirmed it is not
524 required. -->
525
526 <important>
527 <para>If the system-wide <application>D-BUS</application> daemon was
528 running during the installation of <application>HAL</application>,
529 ensure you stop and restart the <application>D-BUS</application>
530 daemon before attempting to start the <command>hald</command>
531 daemon.</para>
532 </important>
533
534<screen role="root"><userinput>make install-haldaemon</userinput></screen>
535
536 </sect3>
537
538 </sect2>
539
540 <sect2 role="content">
541 <title>Contents</title>
542
543 <segmentedlist>
544 <segtitle>Installed Programs</segtitle>
545 <segtitle>Installed Libraries</segtitle>
546 <segtitle>Installed Directories</segtitle>
547
548 <seglistitem>
549 <seg>hal-device, hal-device-manager, hal-disable-polling,
550 hal-find-by-capability, hal-find-by-property, hal-get-property,
551 hal-set-property, hal-is-caller-locked-out, hal-lock, hald and
552 lshal</seg>
553 <seg>libhal.{so,a} and libhal-storage,{so,a}</seg>
554 <seg>/etc/hal, /usr/include/hal, /usr/lib/hal,
555 /usr/share/doc/hal-&hal-version;, /usr/share/hal, /var/cache/hald,
556 /var/lib/hal, and /var/run/hald</seg>
557 </seglistitem>
558 </segmentedlist>
559
560 <variablelist>
561 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
562 <?dbfo list-presentation="list"?>
563 <?dbhtml list-presentation="table"?>
564
565 <varlistentry id="hal-device">
566 <term><command>hal-device</command></term>
567 <listitem>
568 <para>is used to create, remove or show a
569 <application>HAL</application> device.</para>
570 <indexterm zone="hal hal-device">
571 <primary sortas="b-hal-device">hal-device</primary>
572 </indexterm>
573 </listitem>
574 </varlistentry>
575
576 <varlistentry id="hal-device-manager">
577 <term><command>hal-device-manager</command></term>
578 <listitem>
579 <para>shows a graphical representation of all the devices
580 <application>HAL</application> is aware of. This program requires
581 <xref linkend="hal-runtime-dependencies"/>. Here is a <ulink
582 url="http://cvs.freedesktop.org/*checkout*/hal/hal/doc/spec/hal-devices1.png">
583 screenshot</ulink> of <command>hal-device-manager</command>
584 communicating with the HAL daemon and displaying a tree of device
585 objects. The shown properties in the screenshot are for a device
586 object representing a hard disk.</para>
587 <indexterm zone="hal hal-device-manager">
588 <primary sortas="b-hal-device-manager">hal-device-manager</primary>
589 </indexterm>
590 </listitem>
591 </varlistentry>
592
593 <varlistentry id="hal-disable-polling">
594 <term><command>hal-disable-polling</command></term>
595 <listitem>
596 <para>can be used to to disable and enable media detection on
597 drives with removable storage.</para>
598 <indexterm zone="hal hal-disable-polling">
599 <primary sortas="b-hal-disable-polling">hal-disable-polling</primary>
600 </indexterm>
601 </listitem>
602 </varlistentry>
603
604 <varlistentry id="hal-find-by-capability">
605 <term><command>hal-find-by-capability</command></term>
606 <listitem>
607 <para>prints the Unique Device Identifiers for
608 <application>HAL</application> device objects of a given
609 capability.</para>
610 <indexterm zone="hal hal-find-by-capability">
611 <primary sortas="b-hal-find-by-capability">hal-find-by-capability</primary>
612 </indexterm>
613 </listitem>
614 </varlistentry>
615
616 <varlistentry id="hal-find-by-property">
617 <term><command>hal-find-by-property</command></term>
618 <listitem>
619 <para>prints the Unique Device Identifiers for
620 <application>HAL</application> device objects where a given property
621 assumes a given value.</para>
622 <indexterm zone="hal hal-find-by-property">
623 <primary sortas="b-hal-find-by-property">hal-find-by-property</primary>
624 </indexterm>
625 </listitem>
626 </varlistentry>
627
628 <varlistentry id="hal-get-property">
629 <term><command>hal-get-property</command></term>
630 <listitem>
631 <para>retrieves a property from a device.</para>
632 <indexterm zone="hal hal-get-property">
633 <primary sortas="b-hal-get-property">hal-get-property</primary>
634 </indexterm>
635 </listitem>
636 </varlistentry>
637
638 <varlistentry id="hal-set-property">
639 <term><command>hal-set-property</command></term>
640 <listitem>
641 <para>attempts to set property for a device. Note that, due to
642 security considerations, it may not be possible to set a
643 property.</para>
644 <indexterm zone="hal hal-set-property">
645 <primary sortas="b-hal-set-property">hal-set-property</primary>
646 </indexterm>
647 </listitem>
648 </varlistentry>
649
650 <varlistentry id="hal-is-caller-locked-out">
651 <term><command>hal-is-caller-locked-out</command></term>
652 <listitem>
653 <para>determines if a specific caller is locked out of a specific
654 <application>D-Bus</application> interface on a specific device.</para>
655 <indexterm zone="hal hal-is-caller-locked-out">
656 <primary sortas="b-hal-is-caller-locked-out">hal-is-caller-locked-out</primary>
657 </indexterm>
658 </listitem>
659 </varlistentry>
660
661 <varlistentry id="hald">
662 <term><command>hald</command></term>
663 <listitem>
664 <para>is the <application>HAL</application> daemon program.</para>
665 <indexterm zone="hal hald">
666 <primary sortas="b-hald">hald</primary>
667 </indexterm>
668 </listitem>
669 </varlistentry>
670
671 <varlistentry id="lshal">
672 <term><command>lshal</command></term>
673 <listitem>
674 <para>shows all devices and their properties. If the --monitor option
675 is given then the device list and all devices are monitored for
676 changes.</para>
677 <indexterm zone="hal lshal">
678 <primary sortas="b-lshal">lshal</primary>
679 </indexterm>
680 </listitem>
681 </varlistentry>
682
683 <varlistentry id="libhal">
684 <term><filename class='libraryfile'>libhal.{so,a}</filename></term>
685 <listitem>
686 <para>contains the API functions required by the
687 <application>HAL</application> programs.</para>
688 <indexterm zone="hal libhal">
689 <primary sortas="c-libhal">libhal.{so,a}</primary>
690 </indexterm>
691 </listitem>
692 </varlistentry>
693
694 <varlistentry id="libhal-storage">
695 <term><filename class='libraryfile'>libhal-storage.{so,a}</filename></term>
696 <listitem>
697 <para>contains the API functions required by the
698 <application>HAL</application> storage and volume utility
699 programs.</para>
700 <indexterm zone="hal libhal-storage">
701 <primary sortas="c-libhal-storage">libhal-storage.{so,a}</primary>
702 </indexterm>
703 </listitem>
704 </varlistentry>
705
706 </variablelist>
707
708 </sect2>
709
710</sect1>
Note: See TracBrowser for help on using the repository browser.