summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-09-19 15:14:35 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-10-07 10:11:11 -0400
commitf3e9b069b1af5f03f0feef11aa9f5c52050a3dcf (patch)
tree9f5e7c01a1d2647cf4299a0541f8ca06bcf2b014 /gnu
parent447c20db7ead3052f2719157f7e70d8614743988 (diff)
downloadguix-f3e9b069b1af5f03f0feef11aa9f5c52050a3dcf.tar.gz
gnu: gdm: Patch an extra reference to the Xsession script.
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.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/gnome.scm5
1 files changed, 4 insertions, 1 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 12cb4550b3..840cdabeb9 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -8862,7 +8862,10 @@ library.")
                                   "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")