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] <modules>: Remove (ice-9 match) and (ice-9 ftw) modules.
Add (guix build guile-build-system).
<phases>: 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
This commit is contained in:
Maxim Cournoyer 2024-01-19 22:45:26 -05:00
parent c66a1a0f0f
commit b509dedf83
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -16,7 +16,7 @@
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Nikita <nikita@n0.is> ;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018, 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2018, 2021, 2022, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2019, 2020, 2021, 2022, 2023 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2018, 2019, 2020, 2021, 2022, 2023 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
@ -2051,69 +2051,64 @@ above command-line parameters.")
(replace "guile" guile-2.2))))) (replace "guile" guile-2.2)))))
(define-public guile-hall (define-public guile-hall
;; There are many unreleased bug fixes; use the latest commit for now.
(let ((commit "7558ba906d4281a5b825e3c1c87f2810312414b6")
(revision "1"))
(package (package
(name "guile-hall") (name "guile-hall")
(version "0.4.1") (version (git-version "0.4.1" revision commit))
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://gitlab.com/a-sassmannshausen/guile-hall") (url "https://gitlab.com/a-sassmannshausen/guile-hall")
(commit version))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0yrrik1v1xbik5h5q7w2cxrx6gvkmcdm32dl36i7xqdq8pr8sh2d")))) (base32 "0sqm6nyzc37p0xgjj21m9dar2iqik9gfwlcacp2v6y10lh2f1yps"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:modules (list
((ice-9 match) #:modules `(((guix build guile-build-system)
(ice-9 ftw) #:select
(target-guile-effective-version))
,@%gnu-build-system-modules) ,@%gnu-build-system-modules)
#:phases #:phases
(modify-phases (with-imported-modules `((guix build guile-build-system)
%standard-phases ,@%gnu-build-system-modules)
#~(modify-phases %standard-phases
(add-after 'install 'hall-wrap-binaries (add-after 'install 'hall-wrap-binaries
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let* ((compiled-dir (let* ((version (target-guile-effective-version))
(lambda (out version) (site-ccache (string-append "/lib/guile/"
(string-append version "/site-ccache"))
out "/lib/guile/" version "/site-ccache"))) (site (string-append "/share/guile/site/" version))
(uncompiled-dir
(lambda (out version)
(string-append
out "/share/guile/site"
(if (string-null? version) "" "/") version)))
(dep-path (dep-path
(lambda (env modules path) (lambda (env path)
(list env ":" 'prefix (list env ":" 'prefix
(cons modules (cons (string-append #$output path)
(map (lambda (input) (map (lambda (input)
(string-append (string-append
(assoc-ref inputs input) (assoc-ref inputs input)
path)) path))
,''("guile-config")))))) (list "guile-config"
(out (assoc-ref outputs "out")) "guile-lib"))))))
(bin (string-append out "/bin/")) (bin (string-append (ungexp output) "/bin/")))
(site (uncompiled-dir out ""))) (wrap-program (string-append bin "hall")
(match (scandir site) (dep-path "GUILE_LOAD_PATH" site)
(("." ".." version) (dep-path "GUILE_LOAD_COMPILED_PATH" site-ccache)))))))))
(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 (native-inputs
(list autoconf automake pkg-config texinfo)) (list autoconf
(inputs (list guile-3.0)) automake
gettext-minimal
guile-3.0
pkg-config
texinfo))
(inputs
(list bash-minimal
guile-3.0
guile-config
guile-lib))
(propagated-inputs (propagated-inputs
(list guile-config)) (list guile-config))
(synopsis "Guile project tooling") (synopsis "Guile project tooling")
@ -2123,18 +2118,7 @@ allow you to quickly create and publish Guile projects. It allows you to
transparently support the GNU build system, manage a project hierarchy & transparently support the GNU build system, manage a project hierarchy &
provides tight coupling to Guix.") provides tight coupling to Guix.")
(home-page "https://gitlab.com/a-sassmannshausen/guile-hall") (home-page "https://gitlab.com/a-sassmannshausen/guile-hall")
(license license:gpl3+))) (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))))))
(define-public guile-ics (define-public guile-ics
(package (package