summaryrefslogtreecommitdiff
path: root/gnu/packages/ratpoison.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/ratpoison.scm')
-rw-r--r--gnu/packages/ratpoison.scm67
1 files changed, 38 insertions, 29 deletions
diff --git a/gnu/packages/ratpoison.scm b/gnu/packages/ratpoison.scm
index 0c0687032d..14933da5a8 100644
--- a/gnu/packages/ratpoison.scm
+++ b/gnu/packages/ratpoison.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013, 2014, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,8 +20,9 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages ratpoison)
- #:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix gexp)
+ #:use-module (guix packages)
#:use-module (guix build-system gnu)
#:use-module ((guix licenses) #:select (gpl2+))
#:use-module (gnu packages)
@@ -44,42 +46,49 @@
(patches (search-patches "ratpoison-shell.patch"))))
(build-system gnu-build-system)
(arguments
- `(#:modules ((ice-9 format)
+ (list
+ #:modules `((ice-9 format)
,@%gnu-build-system-modules)
- #:phases
- (modify-phases %standard-phases
- (add-after 'install 'install-xsession
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Add a .desktop file to xsessions.
- (let* ((output (assoc-ref outputs "out"))
- (xsessions (string-append output "/share/xsessions")))
- (mkdir-p xsessions)
- (call-with-output-file (string-append xsessions
- "/ratpoison.desktop")
- (lambda (port)
- (format port
- "[Desktop Entry]~@
+ ;; Specify the absolute location of xterm, as the user experience sucks
+ ;; when no terminal is available (can't consult help with 'C-t ?', for
+ ;; example).
+ #:configure-flags
+ #~(list (string-append "--with-xterm="
+ (search-input-file %build-inputs "bin/xterm")))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'install-xsession
+ (lambda _
+ ;; Add a .desktop file to xsessions.
+ (let ((xsessions (string-append #$output "/share/xsessions")))
+ (mkdir-p xsessions)
+ (call-with-output-file (string-append xsessions
+ "/ratpoison.desktop")
+ (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))))))
+ #$output)))))))))
(inputs
- `(("fontconfig" ,fontconfig)
- ("freetype" ,freetype)
- ("libXft" ,libxft)
- ("libXi" ,libxi)
- ("libxrandr" ,libxrandr)
- ("libXpm" ,libxpm)
- ("libXt" ,libxt)
- ("libXtst" ,libxtst)
- ("libX11" ,libx11)
- ("readline" ,readline)
- ("xorgproto" ,xorgproto)))
+ (list fontconfig
+ freetype
+ libxft
+ libxi
+ libxrandr
+ libxpm
+ libxt
+ libxtst
+ libx11
+ readline
+ xorgproto
+ xterm))
(native-inputs
- (list perl pkg-config))
+ (list perl
+ pkg-config))
(home-page "https://www.nongnu.org/ratpoison/")
(synopsis "Simple mouse-free tiling window manager")
(description