summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/services/desktop.scm10
1 files changed, 10 insertions, 0 deletions
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index 5ddfbb9e53..2034b3d099 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -1379,6 +1379,14 @@ rules."
                       ;; in GNOME Boxes.
                       ("gnome-boxes" "spice-gtk")))))
 
+(define (gnome-setuid-programs config)
+  "Return the list of GNOME setuid programs."
+  (let* ((gnome (gnome-desktop-configuration-gnome config))
+         (spice-gtk (gnome-package gnome '("gnome-boxes" "spice-gtk"))))
+    (map file-like->setuid-program
+         (list (file-append spice-gtk
+                            "/libexec/spice-client-glib-usb-acl-helper")))))
+
 (define gnome-desktop-service-type
   (service-type
    (name 'gnome-desktop)
@@ -1387,6 +1395,8 @@ rules."
                              gnome-udev-rules)
           (service-extension polkit-service-type
                              gnome-polkit-settings)
+          (service-extension setuid-program-service-type
+                             gnome-setuid-programs)
           (service-extension profile-service-type
                              (compose list gnome-desktop-configuration-gnome))))
    (default-value (gnome-desktop-configuration))