Sunday, July 25, 2010

KDE suspend, hibernate workaround for Gentoo on Lenovo U150

Hello, recently I upgraded my Gentoo packages to the following:


sys-auth/consolekit-0.4.1

sys-auth/policykit-0.9-r1

sys-apps/hal-0.5.14-r2

kde-base/powerdevil-4.4.5

kde-base/policykit-kde-4.4.5
With these, I lost the ability to suspend the laptop. I trield by directly communicating with HAL:

dbus-send --system --print-reply --dest=org.freedesktop.Hal /org/freedesktop/Hal/devices/computer org.freedesktop.Hal.Device.SystemPowerManagement.Suspend int32:0
The program answered:

Error org.freedesktop.Hal.Device.UnknownError: error: org.freedesktop.Hal.Error: Could not determine whether caller is privileged

org.freedesktop.Hal.Device.Error
I don't have the clue why this is happening, so I found a workaround by adding the following to the local_start() function of /etc/conf.d/local:

sleep 3s && /etc/init.d/hald restart
I also had to make sure the suspension policies were enabled for the relevant users in PolicyKit through KDE's System Settings.

Update Oct 13, 2010 - Thanks to Motosauro's comments, I checked for the workaround in my current setup:

sys-auth/consolekit-0.4.1

sys-auth/policykit-0.9-r1

sys-apps/hal-0.5.14-r3 -apm

kde-base/powerdevil-4.5.2
The workaround is no longer needed.

3 comments:

  1. Hi
    I had the same issue, same package versions and restarting hald after login made it work.
    I just saw that I emerged hal with the apm flag disabled.
    I'm re-emerging it right now with apm enabled to see whether that was the issue

    BTW I'm on Xfce4: I think it's really a hal thing
    Thanks anyway for pointing me tothe right direction

    ReplyDelete
  2. It was the apm flag :)
    At least for me
    Now everything works just fine

    Bye

    ReplyDelete
  3. Thanks for the pointers, please check out the update.

    ReplyDelete

Is your comment or question:

1. Constructive?
2. Interesting?
3. Short?

If not, please post it in your own blog.