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 Nikita <nikita@n0.is>
;;; 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 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
@ -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