aboutsummaryrefslogtreecommitdiff
path: root/gnu/services/xorg.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/services/xorg.scm')
-rw-r--r--gnu/services/xorg.scm15
1 files changed, 15 insertions, 0 deletions
diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
index de5438e3fe..6a589779b9 100644
--- a/gnu/services/xorg.scm
+++ b/gnu/services/xorg.scm
@@ -29,6 +29,7 @@
#:use-module (gnu packages guile)
#:use-module (gnu packages xorg)
#:use-module (gnu packages gl)
+ #:use-module (gnu packages glib)
#:use-module (gnu packages display-managers)
#:use-module (gnu packages gnustep)
#:use-module (gnu packages gnome)
@@ -623,12 +624,23 @@ makes the good ol' XlockMore usable."
(home-directory "/var/lib/gdm")
(shell (file-append shadow "/sbin/nologin")))))
+(define dbus-daemon-wrapper
+ (program-file "gdm-dbus-wrapper"
+ #~(begin
+ (setenv "XDG_CONFIG_DIRS"
+ "/run/current-system/profile/etc/xdg")
+ (setenv "XDG_DATA_DIRS"
+ "/run/current-system/profile/share")
+ (apply execl (string-append #$dbus "/bin/dbus-daemon")
+ (program-arguments)))))
+
(define-record-type* <gdm-configuration>
gdm-configuration make-gdm-configuration
gdm-configuration?
(gdm gdm-configuration-gdm (default gdm))
(allow-empty-passwords? gdm-configuration-allow-empty-passwords? (default #t))
(auto-login? gdm-configuration-auto-login? (default #f))
+ (dbus-daemon gdm-configuration-dbus-daemon (default dbus-daemon-wrapper))
(default-user gdm-configuration-default-user (default #f))
(x-server gdm-configuration-x-server
(default (xorg-wrapper))))
@@ -697,6 +709,9 @@ makes the good ol' XlockMore usable."
"GDM_CUSTOM_CONF="
#$(gdm-configuration-file config))
(string-append
+ "GDM_DBUS_DAEMON="
+ #$(gdm-configuration-dbus-daemon config))
+ (string-append
"GDM_X_SERVER="
#$(gdm-configuration-x-server config))
;; XXX: GDM requires access to a handful of