summary refs log tree commit diff
path: root/gnu/services
diff options
context:
space:
mode:
authorLeo Prikler <leo.prikler@student.tugraz.at>2019-11-23 19:51:15 +0100
committerLudovic Courtès <ludo@gnu.org>2019-11-30 23:50:40 +0100
commit7f25ff10e1c821da84c641e7f6c01c34a2ebe12e (patch)
treee6e1a7ff707c8873fff90a9961456a67eb36fa72 /gnu/services
parent99c45877a984dd0148151b2e304afef6fb04f1a5 (diff)
downloadguix-7f25ff10e1c821da84c641e7f6c01c34a2ebe12e.tar.gz
services: Add polkit-wheel-service.
* gnu/services/desktop.scm: (polkit-wheel): New variable.
(polkit-wheel-service): New service.
* doc/guix.texi: Document polkit-wheel-service.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/services')
-rw-r--r--gnu/services/desktop.scm21
1 files changed, 21 insertions, 0 deletions
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index 0152e86e8a..9eee2fa485 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -135,6 +135,8 @@
             inputattach-configuration?
             inputattach-service-type
 
+            polkit-wheel-service
+
             %desktop-services))
 
 ;;; Commentary:
@@ -1066,6 +1068,25 @@ dispatches events from it.")))
 
 
 ;;;
+;;; polkit-wheel-service -- Allow wheel group to perform admin actions
+;;;
+
+(define polkit-wheel
+  (file-union
+   "polkit-wheel"
+   `(("share/polkit-1/rules.d/wheel.rules"
+      ,(plain-file
+        "wheel.rules"
+        "polkit.addAdminRule(function(action, subject) {
+    return [\"unix-group:wheel\"];
+});
+")))))
+
+(define polkit-wheel-service
+  (simple-service 'polkit-wheel polkit-service-type (list polkit-wheel)))
+
+
+;;;
 ;;; The default set of desktop services.
 ;;;