gnu: ratpoison: Provide a .desktop file with an absolute file name.
This allows GDM to start ratpoison. Without that GDM crashes with an assertion failure when trying to start a ratpoison session. * gnu/packages/ratpoison.scm (ratpoison.desktop): Remove. (ratpoison.desktop)[arguments]: Add #:modules. Rewrite 'install-xsession' phase such that .desktop file contains an absolute file name.
This commit is contained in:
parent
539af7f257
commit
c9711f9347
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2014, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
|
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
|
||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
|
@ -30,17 +30,6 @@
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages fontutils))
|
#:use-module (gnu packages fontutils))
|
||||||
|
|
||||||
(define ratpoison.desktop
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append "https://sources.gentoo.org/cgi-bin/viewvc.cgi/"
|
|
||||||
"gentoo-x86/x11-wm/ratpoison/files/ratpoison.desktop"
|
|
||||||
"?revision=1.1"))
|
|
||||||
(file-name "ratpoison.desktop")
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1rh3f4c3rhn6q2hmkraam0831xqcqyj3qkqf019ahaxsxaan3553"))))
|
|
||||||
|
|
||||||
(define-public ratpoison
|
(define-public ratpoison
|
||||||
(package
|
(package
|
||||||
(name "ratpoison")
|
(name "ratpoison")
|
||||||
|
@ -55,17 +44,28 @@
|
||||||
(patches (search-patches "ratpoison-shell.patch"))))
|
(patches (search-patches "ratpoison-shell.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
`(#:modules ((ice-9 format)
|
||||||
|
,@%gnu-build-system-modules)
|
||||||
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'install 'install-xsession
|
(add-after 'install 'install-xsession
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let ((rpd "ratpoison.desktop")
|
;; Add a .desktop file to xsessions.
|
||||||
(dst (string-append (assoc-ref outputs "out")
|
(let* ((output (assoc-ref outputs "out"))
|
||||||
"/share/xsessions/")))
|
(xsessions (string-append output "/share/xsessions")))
|
||||||
(mkdir-p dst)
|
(mkdir-p xsessions)
|
||||||
(copy-file (assoc-ref inputs rpd)
|
(call-with-output-file (string-append xsessions
|
||||||
(string-append dst rpd))
|
"/ratpoison.desktop")
|
||||||
#t))))))
|
(lambda (port)
|
||||||
|
(format port
|
||||||
|
"[Desktop Entry]~@
|
||||||
|
Name=ratpoison~@
|
||||||
|
Comment=Tiling window manager: say goodbye to the rodent!~@
|
||||||
|
Exec=~a/bin/ratpoison~@
|
||||||
|
TryExec=~@*~a/bin/ratpoison~@
|
||||||
|
Type=Application~%"
|
||||||
|
output)))
|
||||||
|
#t))))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("fontconfig" ,fontconfig)
|
`(("fontconfig" ,fontconfig)
|
||||||
("freetype" ,freetype)
|
("freetype" ,freetype)
|
||||||
|
@ -80,8 +80,7 @@
|
||||||
("xorgproto" ,xorgproto)))
|
("xorgproto" ,xorgproto)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("perl" ,perl)
|
`(("perl" ,perl)
|
||||||
("pkg-config" ,pkg-config)
|
("pkg-config" ,pkg-config)))
|
||||||
("ratpoison.desktop" ,ratpoison.desktop)))
|
|
||||||
(home-page "https://www.nongnu.org/ratpoison/")
|
(home-page "https://www.nongnu.org/ratpoison/")
|
||||||
(synopsis "Simple mouse-free tiling window manager")
|
(synopsis "Simple mouse-free tiling window manager")
|
||||||
(description
|
(description
|
||||||
|
|
Loading…
Reference in New Issue