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.master
parent
307586c1e3
commit
bfac636675
|
@ -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)
|
||||
|
|
Reference in New Issue