Find a file
Bastien Nocera 97f449a497 main: Add "Actions" property
That allows API users to programmatically check whether a particular
functionality is implemented in the daemon, eg. if we wanted to move
GPU performance modes from gamemode to this daemon, gamemode could
query whether that feature was implemented and available in the backend.

Closes: #12
2020-08-12 11:31:34 +02:00
data data: Make service D-Bus activatable 2020-08-10 11:42:31 +02:00
docs docs: Fix copyright year 2020-07-24 11:23:44 +02:00
src main: Add "Actions" property 2020-08-12 11:31:34 +02:00
tests main: Add "Actions" property 2020-08-12 11:31:34 +02:00
.editorconfig power-profiles-daemon 2020-07-10 17:29:23 +02:00
.gitignore power-profiles-daemon 2020-07-10 17:29:23 +02:00
.gitlab-ci.yml ci: Add packages for integration tests 2020-07-16 17:07:10 +02:00
COPYING power-profiles-daemon 2020-07-10 17:29:23 +02:00
meson.build data: Make service D-Bus activatable 2020-08-10 11:42:31 +02:00
meson_options.txt power-profiles-daemon 2020-07-10 17:29:23 +02:00
NEWS power-profiles-daemon 2020-07-10 17:29:23 +02:00
README.md README: Remove mention of accelerometers 2020-07-16 18:31:16 +02:00

power-profiles-daemon

Makes power profiles handling available over D-Bus.

Installation

$ meson _build -Dprefix=/usr
$ ninja -v -C _build install

It requires libgudev and systemd.

Introduction

power-profiles-daemon offers to modify system behaviour based upon user-selected power profiles. There are 3 different power profiles, a "balanced" default mode, a "power-saver" mode, as well as a "performance" mode. The first 2 of those are available on every system. The "performance" mode is only available on select systems and is implemented by different "drivers" based on the system or systems it targets.

In addition to those 2 or 3 modes (depending on the system), "actions" can be hooked up to change the behaviour of a particular device. For example, this can be used to disable the fast-charging for some USB devices when in power-saver mode.

GNOME's Settings and shell both include interfaces to select the current mode, but they are also expected to adjust the behaviour of the desktop depending on the mode, such as turning the screen off after inaction more aggressively when in power-saver mode.

Note that power-profiles-daemon does not save the currently active profile across system restarts and will always start with the "balanced" profile selected.

Debugging

You can now check which mode is in use, and which ones are available by running:

gdbus introspect --system --dest net.hadess.PowerProfiles --object-path /net/hadess/PowerProfiles

You can change the selected profile by running (change power-saver for the chosen profile):

gdbus call --system --dest net.hadess.PowerProfiles --object-path /net/hadess/PowerProfiles --method org.freedesktop.DBus.Properties.Set 'net.hadess.PowerProfiles' 'SelectedProfile' "<'power-saver'>"

If that doesn't work, please file an issue, make sure any running power-profiles-daemon has been stopped: systemctl stop power-profiles-daemon.service and attach the output of: G_MESSAGES_DEBUG=all /usr/libexec/power-profiles-daemon running as root.

References