diff options
| author | 陈功 <andy@andycbruce.com> | 2026-03-12 12:47:36 -0700 |
|---|---|---|
| committer | Liliana Marie Prikler <liliana.prikler@gmail.com> | 2026-03-19 07:37:06 +0100 |
| commit | fd9d0b3530485305033cfea37e0dc96f85209011 (patch) | |
| tree | c7ed77cbdcac1b0b4a82a388be2a89661fafbddc /gnu/services | |
| parent | 9bfbf735b916253c4601ca74b8d3dca6d90584f2 (diff) | |
services: dbus: Add rtkit service.
* gnu/services/dbus.scm (rtkit-service-type): New variable.
(rtkit-configuration): New record.
Change-Id: I5078cb5032824c7799e7d26962911bbc67527562
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Diffstat (limited to 'gnu/services')
| -rw-r--r-- | gnu/services/dbus.scm | 38 |
1 files changed, 37 insertions, 1 deletions
diff --git a/gnu/services/dbus.scm b/gnu/services/dbus.scm index 76e04bf2215..40f2c9264ef 100644 --- a/gnu/services/dbus.scm +++ b/gnu/services/dbus.scm @@ -29,6 +29,7 @@ #:use-module ((gnu packages glib) #:select (dbus)) #:use-module (gnu packages polkit) #:use-module (gnu packages admin) + #:use-module (gnu packages freedesktop) #:use-module (guix deprecation) #:use-module (guix gexp) #:use-module ((guix packages) #:select (package-name)) @@ -45,7 +46,10 @@ polkit-configuration polkit-configuration? polkit-service-type - polkit-service)) ; deprecated + polkit-service ; deprecated + + rtkit-configuration + rtkit-service-type)) ;;; ;;; D-Bus. @@ -442,4 +446,36 @@ the capability to suspend the system if the user is logged in locally." (service polkit-service-type (polkit-configuration (polkit polkit)))) +(define-record-type* <rtkit-configuration> + rtkit-configuration make-rtkit-configuration + rtkit-configuration? + (rtkit rtkit-configuration-rtkit + (default rtkit))) + +(define %rtkit-account + ;; Account used by rtkit. + (user-account + (name "rtkit") + (group "nogroup") + (system? #t) + (comment "Realtime kit user") + (home-directory "/var/empty") + (shell (file-append shadow "/sbin/nologin")))) + +(define rtkit-service-type + (let ((rtkit-package (compose list rtkit-configuration-rtkit))) + (service-type + (name 'rtkit) + (extensions + (list (service-extension + polkit-service-type rtkit-package) + (service-extension dbus-root-service-type rtkit-package) + (service-extension + account-service-type + (const (list %rtkit-account))))) + (default-value (rtkit-configuration)) + (description + "Return a service that sets up D-Bus and PolKit so that the Realtime Kit +daemon is readily usable.")))) + ;;; dbus.scm ends here |
