diff mbox series

[bug#58014,06/15] gnu: gdm: Patch an extra reference to the Xsession script.

Message ID 20220923050042.29893-6-maxim.cournoyer@gmail.com
State Accepted
Headers show
Series Add xvnc-service-type. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Maxim Cournoyer Sept. 23, 2022, 5 a.m. UTC
Without this change, attempting to start a remote session over VNC would fail
with:

    Sep 19 19:54:04 localhost gdm-session-worker: Gdm: GdmSessionWorker: child
    '/gnu/store/yy9wq647l37658vgi291a287ll9iw6dc-gdm-42.0/etc/gdm/Xsession' could
    not be started: No such file or directory

* gnu/packages/gnome.scm (gdm)[phases]{patch-paths}
<daemon/gdm-session.c>: Patch a reference in so the Xsession script is
correctly found via the GDM_X_SESSION environment variable.
---
 gnu/packages/gnome.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 0adb065eb5..facc8515f5 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -8830,7 +8830,10 @@  (define-public gdm
                                   "gdm_session_set_environment_variable "
                                   "(self, \"" name "\","
                                   "g_getenv (\"" name "\"));\n"))
-                               propagate)))))
+                               propagate)))
+                  ;; This is used by remote sessions, such as when using VNC.
+                  (("\\(GDMCONFDIR \"/Xsession \\\\\"%s\\\\\"\", command)")
+                   "(\"%s \\\"%s\\\"\", g_getenv (\"GDM_X_SESSION\"), command)")))
               ;; Find the configuration file using an environment variable.
               (substitute* '("common/gdm-settings.c")
                 (("GDM_CUSTOM_CONF")