Subject: [PATCH 2/8] gnu: gnome-session: Use absolute paths in .desktop files.

From: Timothy Sample <[email-masked]>
Date: Wed, 13 Feb 2019 14:22:15 -0500

This makes the gnome-session .desktop files usable even if gnome-session
is not available from the PATH variable.

* gnu/packages/gnome.scm (gnome-session)[arguments]: Add a phase that
adds the absolute path of gnome-session in its .desktop files.
---
 gnu/packages/gnome.scm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index b2c7aa60cc..59e1011a8f 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4575,6 +4575,14 @@ such as gzip tarballs.")
                    (out  (assoc-ref outputs "out")))
                (wrap-program (string-append out "/bin/gnome-session")
                  `("PATH" ":" prefix (,(string-append glib "/bin"))))
+               #t)))
+         (add-after 'install 'add-absolute-paths-to-desktop-files
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out")))
+               (substitute* (map (lambda (x)
+                                   (string-append out "/share/xsessions/" x))
+                                 '("gnome.desktop" "gnome-xorg.desktop"))
+                 (("gnome-session") (string-append out "/bin/gnome-session")))
                #t))))
 
        #:configure-flags
-- 
2.20.1