diff mbox series

[bug#61576,19/21] services: gnome-desktop-service-type: Extend setuid-program-service-type.

Message ID 20230217170103.10147-20-maxim.cournoyer@gmail.com
State New
Headers show
Series Allow USB redirection as an unprivileged user in in GNOME Boxes | expand

Commit Message

Maxim Cournoyer Feb. 17, 2023, 5:01 p.m. UTC
* gnu/services/desktop.scm (gnome-setuid-programs): New variable.
(gnome-desktop-service-type): Extend setuid-program-service-type with it.
---

 gnu/services/desktop.scm | 10 ++++++++++
 1 file changed, 10 insertions(+)
diff mbox series

Patch

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 @@  (define (gnome-polkit-settings config)
                       ;; 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 @@  (define gnome-desktop-service-type
                              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))