@@ -990,6 +990,61 @@ (define-public packagekit
manager for the current system.")
(license license:gpl2+)))
+
+(define-public power-profiles-daemon
+ (package
+ (name "power-profiles-daemon")
+ (version "0.12")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.freedesktop.org/hadess/power-profiles-daemon")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1wqcajbj358zpyj6y4h1v34y2yncq76wqxd0jm431habcly0bqyr"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:configure-flags (list "-Dsystemdsystemunitdir=false")
+ #:glib-or-gtk? #t
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'install 'fake-pkexec
+ (lambda _ (setenv "PKEXEC_UID" "-1")))
+ (add-before 'configure 'correct-polkit-dir
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute*
+ "meson.build"
+ (("polkit_gobject_dep\\.get_pkgconfig_variable\\('policydir'\\)")
+ (string-append "'" out "/share/polkit-1/actions'"))))))
+ (add-after 'install 'wrap-program
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (string-append (assoc-ref outputs "out")))
+ (prog (string-append out "/bin/powerprofilesctl")))
+ (wrap-program prog
+ `("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")))
+ `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))))))))
+ (native-inputs
+ (list `(,glib "bin") vala python gobject-introspection pkg-config))
+ (inputs
+ (list upower glib polkit dbus libgudev
+ dbus-glib python python-pygobject))
+ (synopsis "Makes power profiles handling available over D-Bus.")
+ (home-page "https://gitlab.freedesktop.org/hadess/power-profiles-daemon")
+ (description "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.")
+ (license license:gpl3)))
+
(define-public python-libevdev
(package
(name "python-libevdev")
From: florhizome <florhizome@posteo.net> --- gnu/packages/freedesktop.scm | 55 ++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+)