source: general/sysutils/hal.xml@ bccbdaea

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 bccbdaea was bccbdaea, checked in by Manuel Canales Esparcia <manuel@…>, 18 years ago

Trailing spaces clean-up. Basicnet, book, and general parts.

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

  • Property mode set to 100644
File size: 16.5 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 "2f84ddbc22bc35baa9388e7794d1fa31">
10 <!ENTITY hal-size "1.4 MB">
11 <!ENTITY hal-buildsize "18.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. The most important goal
38 of <application>HAL</application> is to provide plug-and-play facilities
39 for UNIX-like desktops with focus on providing a rich and extensible
40 description of device characteristics and features.</para>
41
42 <bridgehead renderas="sect3">Package Information</bridgehead>
43 <itemizedlist spacing="compact">
44 <listitem>
45 <para>Download (HTTP): <ulink url="&hal-download-http;"/></para>
46 </listitem>
47 <listitem>
48 <para>Download (FTP): <ulink url="&hal-download-ftp;"/></para>
49 </listitem>
50 <listitem>
51 <para>Download MD5 sum: &hal-md5sum;</para>
52 </listitem>
53 <listitem>
54 <para>Download size: &hal-size;</para>
55 </listitem>
56 <listitem>
57 <para>Estimated disk space required: &hal-buildsize;</para>
58 </listitem>
59 <listitem>
60 <para>Estimated build time: &hal-time;</para>
61 </listitem>
62 </itemizedlist>
63
64 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
65 <itemizedlist spacing="compact">
66 <listitem>
67 <para>Recommended USB ID list:
68 <ulink url="http://www.linux-usb.org/usb.ids"/></para>
69 </listitem>
70 </itemizedlist>
71
72 <bridgehead renderas="sect3">HAL Dependencies</bridgehead>
73
74 <bridgehead renderas="sect4">Required</bridgehead>
75 <para><xref linkend="dbus"/>,
76 <xref linkend="popt"/> and
77 <xref linkend="perl-xml-parser"/></para>
78
79 <bridgehead renderas="sect4">Recommended</bridgehead>
80 <para><xref linkend="pciutils"/> (with a current
81 <filename>pci.ids</filename> file)</para>
82
83 <bridgehead renderas="sect4">Optional</bridgehead>
84 <para><xref linkend="pkgconfig"/>,
85 <xref linkend="intltool"/>,
86 <xref linkend="libusb"/>,
87 <xref linkend="expat"/>,
88 <xref linkend="python"/>,
89 <ulink url="http://ftp.gnome.org/pub/GNOME/sources/gnome-python/">GNOME-Python</ulink>
90 (run-time requirement to use the <command>hal-device-manager</command> program),
91 <xref linkend="doxygen"/> and
92 <xref linkend="docbook-utils"/></para>
93
94 </sect2>
95
96 <sect2 role="installation">
97 <title>Installation of HAL</title>
98
99 <para>If you downloaded the USB ID list, install it by issuing the
100 following command as the <systemitem class="username">root</systemitem>
101 user:</para>
102
103<screen role="root"><userinput>install -v -m644 ../usb.ids /usr/share</userinput></screen>
104
105 <para>You must create a dedicated user and group for the
106 <application>HAL</application> daemon before installing the package. Issue
107 the following as the <systemitem class="username">root</systemitem>
108 user:</para>
109
110<screen role="root"><userinput>groupadd -g 19 haldaemon &amp;&amp;
111useradd -c "HAL Daemon User" -d /dev/null -u 19 \
112 -g haldaemon -s /bin/false haldaemon</userinput></screen>
113
114 <para>Install <application>HAL</application> by running the following
115 commands:</para>
116
117<screen><userinput>sed -i -e "9,11d" -e "s/pamconsole/users/" \
118 fdi/policy/10osvendor/10-storage-policy.fdi
119./configure --prefix=/usr \
120 --sysconfdir=/etc \
121 --libexecdir=/usr/lib/hal \
122 --localstatedir=/var \
123 --enable-fstab-sync \
124 --enable-pcmcia-support &amp;&amp;
125make</userinput></screen>
126
127 <para>This package does not come with a test suite.</para>
128
129 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
130
131<screen role="root"><userinput>make install &amp;&amp;
132install -v -m755 -d /var/run/hald</userinput></screen>
133
134 </sect2>
135
136 <sect2 role="commands">
137 <title>Command Explanations</title>
138
139 <para><command>sed -i -e "9,11d" -e "s/pamconsole/users/" ...</command>:
140 This command adjusts the policy for storage devices so that the
141 <filename>/etc/fstab</filename> file is updated to standards used by LFS
142 systems.</para>
143
144 <para><parameter>--libexecdir=/usr/lib/hal</parameter>: This parameter
145 forces the installation of libexec files to
146 <filename class='directory'>/usr/lib/hal</filename> instead of
147 <filename class='directory'>/usr/libexec</filename>.</para>
148
149 <para><parameter>--localstatedir=/var</parameter>: This parameter forces
150 the creation of the <filename>pid</filename> file to
151 <filename class='directory'>/var/run/hald</filename> instead of
152 <filename class='directory'>/usr/var/run/hald</filename>.</para>
153
154 <para><parameter>--enable-fstab-sync</parameter>: This parameter will
155 ensure the <command>fstab-sync</command> program is built.</para>
156
157 <para><parameter>--enable-pcmcia-support</parameter>: This parameter
158 provides extended PCMCIA support.</para>
159
160 </sect2>
161
162 <sect2 role="configuration">
163 <title>Configuring HAL</title>
164
165 <sect3 id="hal-config">
166 <title>Config Files</title>
167 <para><filename>/etc/dbus-1/system.d/hal.conf</filename> and
168 <filename>/etc/hal/*</filename></para>
169
170 <indexterm zone="hal hal-config">
171 <primary sortas="e-etc-dbus-1-system.d-hal.conf">/etc/dbus-1/system.d/hal.conf</primary>
172 </indexterm>
173
174 <indexterm zone="hal hal-config">
175 <primary sortas="e-etc-hal-star">/etc/hal/*</primary>
176 </indexterm>
177 </sect3>
178
179 <sect3><title>Configuration Information</title>
180
181 <para>No configuration is necessary as the default values will work for
182 most systems. Some tweaking of the various policies may be required for
183 special circumstances.</para>
184
185 </sect3>
186
187 <sect3 id="hal-init">
188 <title>Boot Script</title>
189
190 <para>To automatically start the <command>hald</command> daemon
191 when the system is rebooted, install the
192 <filename>/etc/rc.d/init.d/haldaemon</filename>
193 bootscript from the
194 <xref linkend="intro-important-bootscripts"/> package.</para>
195
196 <indexterm zone="hal hal-init">
197 <primary sortas="f-haldaemon">haldaemon</primary>
198 </indexterm>
199
200 <note>
201 <para>If the system-wide <application>D-BUS</application> daemon was
202 running during the installation of <application>HAL</application>,
203 ensure you stop and restart the <application>D-BUS</application>
204 daemon before attempting to start the <command>hald</command>
205 daemon.</para>
206 </note>
207
208<screen role="root"><userinput>make install-haldaemon</userinput></screen>
209
210 </sect3>
211
212 </sect2>
213
214 <sect2 role="content">
215 <title>Contents</title>
216
217 <segmentedlist>
218 <segtitle>Installed Programs</segtitle>
219 <segtitle>Installed Libraries</segtitle>
220 <segtitle>Installed Directories</segtitle>
221
222 <seglistitem>
223 <seg>fstab-sync, hal.hotplug, hal-device, hal-device-manager,
224 hal-find-by-capability, hal-find-by-property, hal-get-property,
225 hal-luks-remove, hal-luks-setup, hal-set-property,
226 hal-system-power-hibernate, hal-system-power-set-power-save,
227 hal-system-power-suspend, hald, hald-addon-acpi, hald-addon-hid-ups,
228 hald-addon-pmu, hald-addon-storage, hald-addon-usb-csr,
229 hald-probe-hiddev, hald-probe-input, hald-probe-pc-floppy,
230 hald-probe-printer, hald-probe-smbios, hald-probe-storage,
231 hald-probe-volume and lshal</seg>
232 <seg>libhal.[so,a] and libhal-storage,[so,a]</seg>
233 <seg>/etc/hal, /usr/include/hal, /usr/lib/hal,
234 /usr/share/doc/hal-&hal-version;, /usr/share/hal
235 and /var/run/hald</seg>
236 </seglistitem>
237 </segmentedlist>
238
239 <variablelist>
240 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
241 <?dbfo list-presentation="list"?>
242 <?dbhtml list-presentation="table"?>
243
244 <varlistentry id="fstab-sync">
245 <term><command>fstab-sync</command></term>
246 <listitem>
247 <para>updates the file systems table file
248 <filename class='directory'>/etc/fstab</filename> and creates/removes
249 mount points in <filename class='directory'>/media</filename> in
250 response to <application>HAL</application> events. This program is
251 usually never run directly from a shell; instead it is invoked as a
252 callout by the <application>HAL</application> daemon.</para>
253 <indexterm zone="hal fstab-sync">
254 <primary sortas="b-fstab-sync">fstab-sync</primary>
255 </indexterm>
256 </listitem>
257 </varlistentry>
258
259 <varlistentry id="hal-device">
260 <term><command>hal-device</command></term>
261 <listitem>
262 <para>is used to create, remove or show a
263 <application>HAL</application> device.</para>
264 <indexterm zone="hal hal-device">
265 <primary sortas="b-hal-device">hal-device</primary>
266 </indexterm>
267 </listitem>
268 </varlistentry>
269
270 <varlistentry id="hal-device-manager">
271 <term><command>hal-device-manager</command></term>
272 <listitem>
273 <para>shows a graphical respresentation of all the devices
274 <application>HAL</application> is aware of. This program requires
275 <application>GNOME-Python</application>.</para>
276 <indexterm zone="hal hal-device-manager">
277 <primary sortas="b-hal-device-manager">hal-device-manager</primary>
278 </indexterm>
279 </listitem>
280 </varlistentry>
281
282 <varlistentry id="hal-find-by-capability">
283 <term><command>hal-find-by-capability</command></term>
284 <listitem>
285 <para>prints the Unique Device Identifiers for
286 <application>HAL</application> device objects of a given
287 capability.</para>
288 <indexterm zone="hal hal-find-by-capability">
289 <primary sortas="b-hal-find-by-cpability">hal-find-by-capability</primary>
290 </indexterm>
291 </listitem>
292 </varlistentry>
293
294 <varlistentry id="hal-find-by-property">
295 <term><command>hal-find-by-property</command></term>
296 <listitem>
297 <para>prints the Unique Device Identifiers for
298 <application>HAL</application> device objects where a given property
299 assumes a given value.</para>
300 <indexterm zone="hal hal-find-by-property">
301 <primary sortas="b-hal-find-by-property">hal-find-by-property</primary>
302 </indexterm>
303 </listitem>
304 </varlistentry>
305
306 <varlistentry id="hal-get-property">
307 <term><command>hal-get-property</command></term>
308 <listitem>
309 <para>retrieves a property from a device.</para>
310 <indexterm zone="hal hal-get-property">
311 <primary sortas="b-hal-get-property">hal-get-property</primary>
312 </indexterm>
313 </listitem>
314 </varlistentry>
315
316 <varlistentry id="hal-luks-remove">
317 <term><command>hal-luks-remove</command></term>
318 <listitem>
319 <para>is a <application>HAL</application> method wrapper for
320 <command>cryptsetup</command> remove. This program requires <ulink
321 url="http://luks.endorphin.org/dm-crypt">LUKS</ulink>.</para>
322 <indexterm zone="hal hal-luks-remove">
323 <primary sortas="b-hal-luks-remove">hal-luks-remove</primary>
324 </indexterm>
325 </listitem>
326 </varlistentry>
327
328 <varlistentry id="hal-luks-setup">
329 <term><command>hal-luks-setup</command></term>
330 <listitem>
331 <para>is a <application>HAL</application> method wrapper for
332 <command>luks-setup</command>. This program requires <ulink
333 url="http://luks.endorphin.org/dm-crypt">LUKS</ulink>.</para>
334 <indexterm zone="hal hal-luks-setup">
335 <primary sortas="b-hal-luks-setup">hal-luks-setup</primary>
336 </indexterm>
337 </listitem>
338 </varlistentry>
339
340 <varlistentry id="hal-set-property">
341 <term><command>hal-set-property</command></term>
342 <listitem>
343 <para>attempts to set property for a device. Note that, due to
344 security considerations, it may not be possible to set a
345 property.</para>
346 <indexterm zone="hal hal-set-property">
347 <primary sortas="b-hal-set-property">hal-set-property</primary>
348 </indexterm>
349 </listitem>
350 </varlistentry>
351
352 <varlistentry id="hal-system-power-hibernate">
353 <term><command>hal-system-power-hibernate</command></term>
354 <listitem>
355 <para>is a <application>HAL</application> wrapper script for
356 system power saving features. This program is currently not supported
357 on LFS platforms.</para>
358 <indexterm zone="hal hal-system-power-hibernate">
359 <primary sortas="b-hal-system-power-hibernate">hal-system-power-hibernate</primary>
360 </indexterm>
361 </listitem>
362 </varlistentry>
363
364 <varlistentry id="hal-system-power-set-power-save">
365 <term><command>hal-system-power-set-power-save</command></term>
366 <listitem>
367 <para>is a <application>HAL</application> wrapper script for
368 system power saving features. This program is currently not supported
369 on LFS platforms.</para>
370 <indexterm zone="hal hal-system-power-set-power-save">
371 <primary sortas="b-hal-system-power-set-power-save">hal-system-power-set-power-save</primary>
372 </indexterm>
373 </listitem>
374 </varlistentry>
375
376 <varlistentry id="hal-system-power-suspend">
377 <term><command>hal-system-power-suspend</command></term>
378 <listitem>
379 <para>is a <application>HAL</application> wrapper script for
380 system power saving features. This program is currently not supported
381 on LFS platforms.</para>
382 <indexterm zone="hal hal-system-power-suspend">
383 <primary sortas="b-hal-system-power-suspend">hal-system-power-suspend</primary>
384 </indexterm>
385 </listitem>
386 </varlistentry>
387
388 <varlistentry id="hald">
389 <term><command>hald</command></term>
390 <listitem>
391 <para>is the <application>HAL</application> daemon program.</para>
392 <indexterm zone="hal hald">
393 <primary sortas="b-hald">hald</primary>
394 </indexterm>
395 </listitem>
396 </varlistentry>
397
398 <varlistentry id="lshal">
399 <term><command>lshal</command></term>
400 <listitem>
401 <para>shows all devices and their properties. If the --monitor option
402 is given then the device list and all devices are monitored for
403 changes.</para>
404 <indexterm zone="hal lshal">
405 <primary sortas="b-lshal">lshal</primary>
406 </indexterm>
407 </listitem>
408 </varlistentry>
409
410 <varlistentry id="libhal">
411 <term><filename class='libraryfile'>libhal.[so,a]</filename></term>
412 <listitem>
413 <para>contains the API functions required by the
414 <application>HAL</application> programs.</para>
415 <indexterm zone="hal libhal">
416 <primary sortas="c-libhal">libhal.[so,a]</primary>
417 </indexterm>
418 </listitem>
419 </varlistentry>
420
421 <varlistentry id="libhal-storage">
422 <term><filename class='libraryfile'>libhal-storage.[so,a]</filename></term>
423 <listitem>
424 <para>contains the API functions required by the
425 <application>HAL</application> storage and volume utility
426 programs.</para>
427 <indexterm zone="hal libhal-storage">
428 <primary sortas="c-libhal-storage">libhal-storage.[so,a]</primary>
429 </indexterm>
430 </listitem>
431 </varlistentry>
432
433 </variablelist>
434
435 </sect2>
436
437</sect1>
Note: See TracBrowser for help on using the repository browser.