PowerDevil/newTechnicalChanges

From KDE Community Wiki

Library

We are going to move the following things into libsolid:

  • Brightness change
  • suspend/hibernate
  • use dbusxml2cpp

Additionally, we are going to make libsolid async.

Daemon

  • Everything MUST be asynchronous
  • System inhibition will be delegated to systemd
  • Session inhibition will still be handled in the daemon
  • Actions will be renamed to plugins
  • Instead of virtuals such onProfileUnload/onIdleTimeout we will connect to signals (This will make implementation of actions simpler)
  • Simplify profiles by making some configurations dynamic
    • Set defaults and save configuration if they are changed only
    • Potentially separate Workstation, Laptop, Tablet... config values
  • use dbus2cpp instead of all the mess we have right now and libsoild whenever possible