~ruther/guix-local

bfac63667552898b32821c0f0fae1256f5bcab0c — Ludovic Courtès 7 years ago 307586c
gnu: mate-session-manager: Provide absolute file name in '.desktop' file.

Previously GDM would crash when selecting MATE.

* gnu/packages/mate.scm (mate-session-manager)[arguments]: Add
'update-xsession-dot-desktop' phase.
1 files changed, 15 insertions(+), 1 deletions(-)

M gnu/packages/mate.scm
M gnu/packages/mate.scm => gnu/packages/mate.scm +15 -1
@@ 3,6 3,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 ng0 <ng0@n0.is>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;


@@ 337,7 338,20 @@ configurations (profiles).")
               (("#ifdef HAVE_SYSTEMD") "#if 0"))
             (substitute* "mate-session/gsm-autostart-app.c"
               (("#ifdef HAVE_SYSTEMD") "#if 0"))
             #t)))))
             #t))
         (add-after 'install 'update-xsession-dot-desktop
           (lambda* (#:key outputs #:allow-other-keys)
             ;; Record the absolute file name of 'mate-session' in the
             ;; '.desktop' file.
             (let* ((out (assoc-ref outputs "out"))
                    (xsession (string-append
                               out "/share/xsessions/mate.desktop")))
               (substitute* xsession
                 (("^Exec=.*$")
                  (string-append "Exec=" out "/bin/mate-session\n"))
                 (("^TryExec=.*$")
                  (string-append "Exec=" out "/bin/mate-session\n")))
               #t))))))
    (native-inputs
     `(("pkg-config" ,pkg-config)
       ("intltool" ,intltool)