From e57c2adb2a7ed94610f4c35e8710bc1346199de6 Mon Sep 17 00:00:00 2001 From: Timothy Sample Date: Wed, 13 Feb 2019 14:22:14 -0500 Subject: services: gdm: Remove etc service. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (gdm)[arguments]: Update pre-configure phase to make GDM get the configuration file path from an environment variable. * gnu/services/xorg.scm (gdm-etc-service): Remove function. (gdm-configuration-file): New function. (gdm-shepherd-service): Set GDM_CUSTOM_CONF before invoking GDM. (gdm-service-type)[extensions]: Remove etc-service-type extension. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'gnu/packages/gnome.scm') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 2f99755933..21c61473c5 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -32,7 +32,7 @@ ;;; Copyright © 2018 Jovany Leandro G.C ;;; Copyright © 2018 Vasile Dumitrascu ;;; Copyright © 2018 Björn Höfling -;;; Copyright © 2018 Timothy Sample +;;; Copyright © 2018, 2019 Timothy Sample ;;; ;;; This file is part of GNU Guix. ;;; @@ -5462,6 +5462,9 @@ libxml2.") ;; 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" ;; FIXME: Really glib should be declaring XDG_CONFIG_DIRS as a ;; variable, but it doesn't do that right now. Anyway ;; /run/current-system/profile/share/gnome-session/sessions/gnome.desktop @@ -5481,7 +5484,9 @@ libxml2.") ;; Look for custom GDM conf in /run/current-system. (substitute* '("common/gdm-settings-desktop-backend.c") (("GDM_CUSTOM_CONF") - "\"/run/current-system/etc/gdm/custom.conf\"")) + (string-append "(g_getenv(\"GDM_CUSTOM_CONF\") != NULL" + " ? g_getenv(\"GDM_CUSTOM_CONF\")" + " : GDM_CUSTOM_CONF)"))) ;; Use service-supplied path to X. (substitute* '("daemon/gdm-server.c") (("\\(X_SERVER X_SERVER_ARG_FORMAT") -- cgit v1.2.3