Skip to content

[Feature] D-Bus Interface like PPD #876

@Panda-Code-Master

Description

@Panda-Code-Master

First of all, thank you for developing auto-cpufreq — it’s an excellent tool for dynamic CPU frequency scaling.

Currently, several desktop environments (DEs) provide a power mode/slider integration in their system tray or settings panels. These sliders usually work with power-profiles-daemon or tuned-ppd, allowing users to switch between modes such as Performance, Balanced, and Power Saver.

It would be great if auto-cpufreq could integrate with these power sliders across DEs.

Benefits

  • Unified user experience across desktop environments.
  • Quick and intuitive switching between auto-cpufreq profiles without relying on CLI.
  • Encourages wider adoption since many users prefer GUI-driven controls.

Examples of DE Integration Points

  • KDE Plasma – System Tray Power Management Slider (via powerdevil).
  • GNOME – Settings → Power Mode toggle (exposed via power-profiles-daemon).
  • XFCE – Power Manager panel plugin.
  • Cinnamon / MATE / Budgie – Power applets that already use PPD as backend.

Possible Implementation Approaches

  • Allow auto-cpufreq to expose its profiles via D-Bus, making them visible to DEs in the same way as power-profiles-daemon.
  • Provide an optional compatibility layer that lets DEs treat auto-cpufreq as if it were power-profiles-daemon or tuned-ppd.
  • Offer a configurable mapping of auto-cpufreq modes to standard power profiles.

References


Feature Request Summary

Add integration between auto-cpufreq and desktop environment power sliders (KDE, GNOME, XFCE, etc.) by exposing profiles through a standard interface (e.g., D-Bus, PPD compatibility), similar to how power-profiles-daemon and tuned-ppd work. I just really like the look and feel of KDE's powerdevil

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions