source: general/sysutils/hal.xml@ f55cbb3

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

Modified the Python dependencies in the HAL instructions to better identify what is optional at build-time and what is optional at run-time

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

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