source: general/sysutils/hal.xml@ 735ddd0

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 735ddd0 was 735ddd0, checked in by Randy McMurchy <randy@…>, 17 years ago

Removed redundant pkg-config dependency in the HAL instructions

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