HAL

From openSUSE

(Difference between revisions)
Revision as of 17:33, 5 June 2008
Dkukawka (Talk | contribs)
Packages
� Previous diff
Revision as of 08:09, 4 August 2008
Dkukawka (Talk | contribs)
HAL don't detect a device
Next diff →
Line 57: Line 57:
# call on a console (e.g. xterm or konsole): <pre>lshal -m</pre> # call on a console (e.g. xterm or konsole): <pre>lshal -m</pre>
# readd/plug in the device and wait some seconds # readd/plug in the device and wait some seconds
-# attach the generated output to the bug and attach also the part of ''/var/log/messages'' since you added the device to your machine+# attach the generated output to the bug and attach also the part of ''/var/log/messages'' since you added the device to your machine and the full output of lshal
; If the device is not hotplugable (as e.g. build in devices as e.g. a sound card or a built-in card reader): ; If the device is not hotplugable (as e.g. build in devices as e.g. a sound card or a built-in card reader):

Revision as of 08:09, 4 August 2008

Contents

Overview

HAL is a hardware abstraction layer and aims to provide a live list of devices present in the system at any point in time. HAL tries to understand both, physical devices (such as e.g. PCI and USB) and the device classes (such as input, net, and block) physical devices have. Besides it allows merging of information from device info files (FDI-files) specific to a device. HAL provides a API through D-Bus for querying devices and notifying when things change. Finally, HAL provides some monitoring (in an unintrusive way) of devices.

For a full overview of all device information and D-Bus interfaces and methodes provided by HAL, check the HAL specification (e.g. via the hal-doc.rpm (under /usr/share/doc/packages/hal/spec/hal-spec.html or via this link))

Packages

HAL is since SUSE 10.0 part of all SUSE/openSUSE/SLE installations. These versions were shipped with our products:

  • SUSE 10.0 v0.5.4
  • SUSE 10.1/SLES10/SLED10 v0.5.6
  • openSUSE 10.2 v0.5.8 (git snapshot 20061106)
  • openSUSE 10.3 v0.5.9 (git snapshot 20070831)
  • openSUSE 11.0 v0.5.11
This article is being considered for deletion! Reason: Now unused, duplicate template.
Please do not blank, merge, or move this article, or remove this notice. Refer to this article's discussion page and the openSUSE:Deletion Policy for more information.

(Note) Additional Packages/versions

There are two repository in the openSUSE buildservice with with HAL packages you may find useful:

  • home:dkukawka:
    • a repository with HAL for all releases since SLE10/SUSE 10.1 which contains additonal patches and fixes
  • home:dkukawka:hal-beta:
    • a repository with actual development snapshots and additional patches and fixes for openSUSE 10.3 and newer


HOWTOs

Keymapping

HAL is able to map unknown scancodes (e.g. from a multimedia keyboard or special keys from Laptops) to keycodes by add the mapping to a FDI-file. You can find a detailed HOWTO here.

You can report the new mappings back as in the HOWTO described to the HAL mailing list or the freedesktop.org bugzilla, but also to the Novell Bugzilla.


Debugging/Bugreporting

If you report bugs about HAL to the Novell Bugzilla, then it would speed up the bugfixing, if you:

  • provide a detailed description about what is exactly wrong
  • read first the following instructions/hints and attach the proposed information to the bug as attachment.

General

If HAL isn't crashed, please provide always the full output of lshal. You can for example attach the file generated by:

lshal > /tmp/lshal_output

HAL crashes or hangs

  1. get root user or use sudo
  2. open /etc/init.d/haldaemon in an editor of your choice and change:
    1. for SUSE 10.1/SLE10:
         HALDAEMON_PARA="--daemon=yes --retain-privileges";
      to:
         HALDAEMON_PARA="--daemon=yes --retain-privileges --verbose=yes --use-syslog";
    2. for openSUSE 10.2 and newer:
         HALDAEMON_PARA="--daemon=yes";
      to:
         HALDAEMON_PARA="--daemon=yes --verbose=yes --use-syslog";
  3. call:
       logger ===============================
  4. then restart HAL via:
       rchal restart
  5. check if hal is ready by calling lshal and checking if device information get printed
  6. reproduce the problem
  7. attach the part of /var/log/messages since the =============================== in the syslog to the bug.

HAL don't detect a device

Is the device hotplugable (as e.g. a USB-Stick, a PCMCIA card ...)?
  1. remove the device from your machine
  2. call on a console (e.g. xterm or konsole):
    lshal -m
  3. readd/plug in the device and wait some seconds
  4. attach the generated output to the bug and attach also the part of /var/log/messages since you added the device to your machine and the full output of lshal
If the device is not hotplugable (as e.g. build in devices as e.g. a sound card or a built-in card reader)
  • follow the instuctions for the case when HAL crashes

Permission problems (since openSUSE 10.3)

If you get in your desktop session a message that you e.g. can not:

  • mount a CD/DVD
  • mount a USB-stick
  • suspend to disk/ram

because of a System policy prevents ... the action, then please check first if:

  • ConsoleKit is running, by call as root user:
    rcconsolekit status
  • if you have a XDG_SESSION_COOKIE in your environment by call:
    env | grep XDG_SESSION_COOKIE

If ConsoleKit isn't running or you don't have a XDG_SESSION_COOKIE call as root user:

rcconsolekit restart
and then leave your desktop session and login again.

Links

  • [1] HAL project page
Retrieved from "http://en.opensuse.org/HAL"