From b509dedf8303748a5c0065e8bf822293fa1d4329 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 19 Jan 2024 22:45:26 -0500 Subject: gnu: guile-hall: Update to 0.4.1-1.7558ba9. * gnu/packages/guile-xyz.scm (guile-hall): Update to 0.4.1-1.7558ba9. [arguments] : Remove (ice-9 match) and (ice-9 ftw) modules. Add (guix build guile-build-system). : Use gexps. Streamline hall-wrap-binaries phase. [native-inputs]: Add guile-3.0 and gettext-minimal. [propagated-inputs]: Delete field, moving guile-config to... [inputs]: ... here. Add bash-minimal and guile-lib. Change-Id: Idef796dc3ba9ca3fa4df8114efe91af7c5cf7be0 --- gnu/packages/guile-xyz.scm | 146 ++++++++++++++++++++------------------------- 1 file changed, 65 insertions(+), 81 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 77be632cc3..b36b4aa233 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -16,7 +16,7 @@ ;;; Copyright © 2017 Theodoros Foradis ;;; Copyright © 2017 Nikita ;;; Copyright © 2017, 2018, 2021 Tobias Geerinckx-Rice -;;; Copyright © 2018, 2021, 2022, 2023 Maxim Cournoyer +;;; Copyright © 2018, 2021, 2022, 2023, 2024 Maxim Cournoyer ;;; Copyright © 2018, 2019, 2020, 2021, 2022, 2023 Arun Isaac ;;; Copyright © 2018 Pierre-Antoine Rouby ;;; Copyright © 2018 Eric Bavier @@ -2051,90 +2051,74 @@ (define-public guile2.2-config (replace "guile" guile-2.2))))) (define-public guile-hall - (package - (name "guile-hall") - (version "0.4.1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://gitlab.com/a-sassmannshausen/guile-hall") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0yrrik1v1xbik5h5q7w2cxrx6gvkmcdm32dl36i7xqdq8pr8sh2d")))) - (build-system gnu-build-system) - (arguments - `(#:modules - ((ice-9 match) - (ice-9 ftw) - ,@%gnu-build-system-modules) + ;; There are many unreleased bug fixes; use the latest commit for now. + (let ((commit "7558ba906d4281a5b825e3c1c87f2810312414b6") + (revision "1")) + (package + (name "guile-hall") + (version (git-version "0.4.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/a-sassmannshausen/guile-hall") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0sqm6nyzc37p0xgjj21m9dar2iqik9gfwlcacp2v6y10lh2f1yps")))) + (build-system gnu-build-system) + (arguments + (list + #:modules `(((guix build guile-build-system) + #:select + (target-guile-effective-version)) + ,@%gnu-build-system-modules) #:phases - (modify-phases - %standard-phases - (add-after 'install 'hall-wrap-binaries - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((compiled-dir - (lambda (out version) - (string-append - out "/lib/guile/" version "/site-ccache"))) - (uncompiled-dir - (lambda (out version) - (string-append - out "/share/guile/site" - (if (string-null? version) "" "/") version))) - (dep-path - (lambda (env modules path) - (list env ":" 'prefix - (cons modules - (map (lambda (input) - (string-append - (assoc-ref inputs input) - path)) - ,''("guile-config")))))) - (out (assoc-ref outputs "out")) - (bin (string-append out "/bin/")) - (site (uncompiled-dir out ""))) - (match (scandir site) - (("." ".." version) - (for-each - (lambda (file) - (wrap-program - (string-append bin file) - (dep-path - "GUILE_LOAD_PATH" - (uncompiled-dir out version) - (uncompiled-dir "" version)) - (dep-path - "GUILE_LOAD_COMPILED_PATH" - (compiled-dir out version) - (compiled-dir "" version)))) - ,''("hall")) - #t)))))))) - (native-inputs - (list autoconf automake pkg-config texinfo)) - (inputs (list guile-3.0)) - (propagated-inputs - (list guile-config)) - (synopsis "Guile project tooling") - (description - "Hall is a command-line application and a set of Guile libraries that + (with-imported-modules `((guix build guile-build-system) + ,@%gnu-build-system-modules) + #~(modify-phases %standard-phases + (add-after 'install 'hall-wrap-binaries + (lambda* (#:key inputs #:allow-other-keys) + (let* ((version (target-guile-effective-version)) + (site-ccache (string-append "/lib/guile/" + version "/site-ccache")) + (site (string-append "/share/guile/site/" version)) + (dep-path + (lambda (env path) + (list env ":" 'prefix + (cons (string-append #$output path) + (map (lambda (input) + (string-append + (assoc-ref inputs input) + path)) + (list "guile-config" + "guile-lib")))))) + (bin (string-append (ungexp output) "/bin/"))) + (wrap-program (string-append bin "hall") + (dep-path "GUILE_LOAD_PATH" site) + (dep-path "GUILE_LOAD_COMPILED_PATH" site-ccache))))))))) + (native-inputs + (list autoconf + automake + gettext-minimal + guile-3.0 + pkg-config + texinfo)) + (inputs + (list bash-minimal + guile-3.0 + guile-config + guile-lib)) + (propagated-inputs + (list guile-config)) + (synopsis "Guile project tooling") + (description + "Hall is a command-line application and a set of Guile libraries that allow you to quickly create and publish Guile projects. It allows you to transparently support the GNU build system, manage a project hierarchy & provides tight coupling to Guix.") - (home-page "https://gitlab.com/a-sassmannshausen/guile-hall") - (license license:gpl3+))) - -(define-public guile2.2-hall - (package - (inherit guile-hall) - (name "guile2.2-hall") - (inputs (modify-inputs (package-inputs guile-hall) - (replace "guile" guile-2.2))) - (propagated-inputs - `(("guile-config" ,guile2.2-config) - ,@(alist-delete "guile-config" - (package-propagated-inputs guile-hall)))))) + (home-page "https://gitlab.com/a-sassmannshausen/guile-hall") + (license license:gpl3+)))) (define-public guile-ics (package -- cgit v1.2.3