The Hardware Abstraction Layer (short HAL) is a tool mainly used for hardware hotplug/hotswap functions, e.g. reacting immediately on media insertion without the user's interaction (say, when your Linux/BSD system opens a file browser or a media player when you plug in a USB drive or insert a disk, HAL is probably involved). It is included in most modern Linux distributions.
Users do not need to worry about HAL, nor can they use it directly. However, projects that include support for HAL should be considered more user-friendly. Only advanced users, or developers, will be able to make direct use of HAL.
HAL on Gentoo
Note that you have to explicitly choose to use HAL on Gentoo by adding it to your USE-flags, like so (nano is used as text editor): Put hal (small letters) into the USE variable in /etc/make.conf:
If you are using very few USE-flags, the part of the file with the USE variable could appear like so:
USE="gtk gnome dbus usb X fam hal"
Now the changes have to be applied (let's say, on all installed packages); I'm putting a sync here to avoid '404 - file not found' errors:
emerge --sync emerge -NavuD world
/etc/init.d/hald start rc-update add default hald
- HAL specification, perhaps on your distribution in /usr/share/doc/hal-doc/spec/hal-spec.html