From 39816716c3a59ace1dde062d3524bedbf7817ef3 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Mon, 31 Oct 2022 14:55:17 +0100 Subject: [PATCH] gnu: stumpwm: Update to 22.05-1.ff6cb73. * gnu/packages/wm.scm (stumpwm): Update to 22.05-1.ff6cb73. --- gnu/packages/wm.scm | 143 +++++++++++++++++++++++--------------------- 1 file changed, 74 insertions(+), 69 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index af406ed2ed..eedd339c6c 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -1849,79 +1849,84 @@ (define-public kanshi (license license:expat))) ; MIT license (define-public stumpwm - (package - (name "stumpwm") - (version "22.05") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/stumpwm/stumpwm") - (commit version))) - (file-name (git-file-name "stumpwm" version)) - (sha256 - (base32 "12hf70mpwy0ixiyvv8sf8pkwrzz8nb12a8ybvsdpibsxfjxgxnan")))) - (build-system asdf-build-system/sbcl) - (native-inputs - (list sbcl-fiasco - texinfo + ;; Some fixes to make stumpwm work with sbcl>=2.2.7 are not in a release + ;; yet, so we use a commit directly. + (let ((commit "ff6cb73f48f0df4285948f1009ef3b285c78b351") + (revision "1")) + (package + (name "stumpwm") + (version (git-version "22.05" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/stumpwm/stumpwm") + (commit commit))) + (file-name (git-file-name "stumpwm" version)) + (sha256 + (base32 "0gvr136fv5zs61017gns3kbkz00837n0b52fif9vany5fslx3aj2")))) + (build-system asdf-build-system/sbcl) + (native-inputs + (list sbcl-fiasco + texinfo - ;; To build the manual. - autoconf - automake)) - (inputs - (list sbcl-alexandria - sbcl-cl-ppcre - sbcl-clx)) - (outputs '("out" "lib")) - (arguments - (list - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'fix-tests - (lambda _ - (substitute* "stumpwm-tests.asd" - (("\"ALL-TESTS\"") - "\"RUN-PACKAGE-TESTS\" :package")))) - (add-after 'create-asdf-configuration 'build-program - (lambda* (#:key outputs #:allow-other-keys) - (build-program - (string-append (assoc-ref outputs "out") "/bin/stumpwm") - outputs - #:entry-program '((stumpwm:stumpwm) 0)))) - (add-after 'build-program 'create-desktop-file - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (xsessions (string-append out "/share/xsessions"))) - (mkdir-p xsessions) - (call-with-output-file - (string-append xsessions "/stumpwm.desktop") - (lambda (file) - (format file - "[Desktop Entry]~@ - Name=stumpwm~@ - Comment=The Stump Window Manager~@ - Exec=~a/bin/stumpwm~@ - TryExec=~@*~a/bin/stumpwm~@ - Icon=~@ - Type=Application~%" - out)))))) - (add-after 'install 'install-manual - (lambda* (#:key (make-flags '()) outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (info (string-append out "/share/info"))) - (invoke "./autogen.sh") - (invoke "sh" "./configure" "SHELL=sh") - (apply invoke "make" "stumpwm.info" make-flags) - (install-file "stumpwm.info" info))))))) - (synopsis "Window manager written in Common Lisp") - (description "Stumpwm is a window manager written entirely in Common Lisp. + ;; To build the manual. + autoconf + automake)) + (inputs + (list sbcl-alexandria + sbcl-cl-ppcre + sbcl-clx)) + (outputs '("out" "lib")) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-tests + (lambda _ + (substitute* "stumpwm-tests.asd" + (("\"ALL-TESTS\"") + "\"RUN-PACKAGE-TESTS\" :package")))) + (add-after 'create-asdf-configuration 'build-program + (lambda* (#:key outputs #:allow-other-keys) + (build-program + (string-append (assoc-ref outputs "out") "/bin/stumpwm") + outputs + #:entry-program '((stumpwm:stumpwm) 0)))) + (add-after 'build-program 'create-desktop-file + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (xsessions (string-append out "/share/xsessions"))) + (mkdir-p xsessions) + (call-with-output-file + (string-append xsessions "/stumpwm.desktop") + (lambda (file) + (format file + "[Desktop Entry]~@ + Name=stumpwm~@ + Comment=The Stump Window Manager~@ + Exec=~a/bin/stumpwm~@ + TryExec=~@*~a/bin/stumpwm~@ + Icon=~@ + Type=Application~%" + out)))))) + (add-after 'install 'install-manual + (lambda* (#:key (make-flags '()) outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (info (string-append out "/share/info"))) + (invoke "./autogen.sh") + (invoke "sh" "./configure" "SHELL=sh") + (apply invoke "make" "stumpwm.info" make-flags) + (install-file "stumpwm.info" info))))))) + (synopsis "Window manager written in Common Lisp") + (description + "Stumpwm is a window manager written entirely in Common Lisp. It attempts to be highly customizable while relying entirely on the keyboard for input. These design decisions reflect the growing popularity of productive, customizable lisp based systems.") - (home-page "https://github.com/stumpwm/stumpwm") - (license license:gpl2+) - (properties `((cl-source-variant . ,(delay cl-stumpwm)))))) + (home-page "https://github.com/stumpwm/stumpwm") + (license license:gpl2+) + (properties `((cl-source-variant . ,(delay cl-stumpwm))))))) (define-public sbcl-stumpwm (deprecated-package "sbcl-stumpwm" stumpwm))