gnu: gdm: Simplify pre-configure phase.

* gnu/packages/gnome.scm (gdm)[arguments]: Simplify the pre-configure phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Timothy Sample 2019-02-13 14:22:18 -05:00 committed by Ludovic Courtès
parent def6d6b616
commit c9ff92b550
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -5460,25 +5460,21 @@ (define-public gdm
"\"/run/current-system/profile/share/wayland")
(("DATADIR \"/gnome")
"\"/run/current-system/profile/share/gnome"))
(substitute* '("daemon/gdm-session.c")
(("set_up_session_environment \\(self\\);")
(string-append
"set_up_session_environment (self);\n"
;; Propagate GDM_X_SERVER environment variable (which is set
;; by the GDM service, as it's a function of what X modules
;; the user decides to have available) down to worker
;; processes.
"gdm_session_set_environment_variable (self, \"GDM_X_SERVER\",\n"
" g_getenv (\"GDM_X_SERVER\"));\n"
;; Propagate the GDM_CUSTOM_CONF environment variable.
"gdm_session_set_environment_variable (self, \"GDM_CUSTOM_CONF\",\n"
" g_getenv (\"GDM_CUSTOM_CONF\"));\n"
;; The session bus (which GDM will initialize from the this
;; session environment) needs to know where to find the system
;; service files.
"gdm_session_set_environment_variable (self, \"XDG_DATA_DIRS\",\n"
" \"/run/current-system/profile/share\");\n"
)))
(let ((propagate '("GDM_CUSTOM_CONF"
"GDM_X_SERVER"
;; XXX: Remove this once GNOME Shell is
;; a dependency of GDM.
"XDG_DATA_DIRS")))
(substitute* "daemon/gdm-session.c"
(("set_up_session_environment \\(self\\);")
(apply string-append
"set_up_session_environment (self);\n"
(map (lambda (name)
(string-append
"gdm_session_set_environment_variable "
"(self, \"" name "\","
"g_getenv (\"" name "\"));\n"))
propagate)))))
;; Look for custom GDM conf in /run/current-system.
(substitute* '("common/gdm-settings-desktop-backend.c")
(("GDM_CUSTOM_CONF")