Power-profiles-daemon-0.21

Introduction to Power-profiles-daemon

The Power-profiles-daemon package provides a program that allows modification of the system power/behavior state. This is used on many laptops and can be used by a Desktop Environment to activate power saving or performance CPU governors through dbus. On other systems, Power-profiles-daemon can be used as a streamlined way to set the CPU governor in order to increase system performance at the cost of energy usage.

This package is known to build and work properly using an LFS 12.2 platform.

Package Information

Power-profiles-daemon Dependencies

Required

Polkit-125, PyGObject-3.48.2 (pycairo is not needed), and UPower-1.90.4

Optional

GTK-Doc-1.34.0, The rest are for the tests, dbusmock-0.32.1, umockdev-0.18.3, isort, and mccabe

Kernel Configuration

Enable the following options in the kernel configuration and recompile the kernel if necessary:

Power management and ACPI options --->
  CPU Frequency scaling --->
    -*-   CPU Frequency scaling                                       [CPU_FREQ]
    -*-     'performance' governor                    [CPU_FREQ_GOV_PERFORMANCE]
    <*/M>   'powersave' governor                        [CPU_FREQ_GOV_POWERSAVE]
    # Select if CPU is Intel:
    [ /*]   Intel P state control                             [X86_INTEL_PSTATE]
    # Select if CPU is AMD:
    [ /*]   AMD Processor P-State driver                        [X86_AMD_PSTATE]

Device Drivers --->
  # Some drivers under this submenu provide "platform profile" support
  # and power-profiles-daemon can take advantage from platform profiles;
  # select a driver if suitable for your platform:
  [ /*] X86 Platform Specific Device Drivers --->         [X86_PLATFORM_DEVICES]

Select the appropriate sub-options that appear when the above options are selected. As much as possible, the layout should be the same as in kernel configuration menus.

Installation of Power-profiles-daemon

Install Power-profiles-daemon by running the following commands:

mkdir build &&
cd build &&

meson setup                \
      --prefix=/usr        \
      --buildtype=release  \
      -D gtk_doc=false     \
      -D tests=false       \
      .. &&
ninja

If you have installed the external dependencies, to test the results issue: ninja test.

Now, as the root user:

ninja install

Command Explanations

-D gtk_doc=false: Prevents building the documentation. Remove this if you have GTK-Doc installed and wish to build the documentation.

-D tests=false: Prevents building the tests because they cannot be run within the boundaries of BLFS. Remove this if you have installed the external dependencies and wish to run the tests.

Configuring Power-profiles-daemon

Systemd Unit

To start the power-profiles-daemon on boot, enable the systemd service that was installed by running the following command as the root user:

systemctl enable power-profiles-daemon

Select a Power Profile

To list all supported power profiles, issue:

powerprofilesctl

To activate a power profile (for example performance), issue:

powerprofilesctl set performance

Some desktop environments (for example GNOME and KDE) also provide a graphical interface to interact with power-profiles-daemon and activate a power profile.

The activated power profile is automatically stored in /var/lib/power-profiles-daemon/state.ini and power-profiles-daemon will read it out and activate it again on the next boot if the Systemd unit is enabled as above.

Contents

Installed Program: powerprofilesctl
Installed Libraries: None
Installed Directories: None

Short Descriptions

powerprofilesctl

This allows the user to set the power governor of the CPU.