gexp: <computed-file> does not honor (%guile-for-build).

* guix/gexp.scm (computed-file-compiler): Default to (default-guile).
That way, lowering of <computed-file> is not affected by the
'%guile-for-build' parameter.
(file-union): Add #:guile parameter and honor it.
* gnu/packages/ruby.scm (ruby-tzinfo-data): Pass #:guile to 'file-union'.
This commit is contained in:
Ludovic Courtès 2022-02-11 15:58:56 +01:00
parent c1539e1385
commit af57d1bf6c
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
2 changed files with 17 additions and 12 deletions

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2014, 2015, 2016, 2017, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014-2017, 2021-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2019 Ricardo Wurmus <rekado@elephly.net>
@ -5717,7 +5717,14 @@ (define-public ruby-tzinfo-data
(uri "https://data.iana.org/time-zones/releases/tzcode2021a.tar.gz.asc")
(sha256
(base32
"1qhlj4lr810s47s1lwcvv1sgvg2sflf98w4sbg1lc8wzv5qxxv7g")))))))))
"1qhlj4lr810s47s1lwcvv1sgvg2sflf98w4sbg1lc8wzv5qxxv7g")))))
;; XXX: Explicitly depend on 'guile-final', which was previously
;; implied via the '%guile-for-build' fluid but not explicit.
;; TODO: Remove this argument on the next rebuild cycle.
#:guile (module-ref (resolve-interface
'(gnu packages commencement))
'guile-final)))))
(synopsis "Data from the IANA Time Zone database")
(description
"This library provides @code{TZInfo::Data}, which contains data from the

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
@ -597,13 +597,10 @@ (define-gexp-compiler (computed-file-compiler (file <computed-file>)
;; gexp.
(match file
(($ <computed-file> name gexp guile options)
(if guile
(mlet %store-monad ((guile (lower-object guile system
#:target target)))
(apply gexp->derivation name gexp #:guile-for-build guile
#:system system #:target target options))
(apply gexp->derivation name gexp
#:system system #:target target options)))))
(mlet %store-monad ((guile (lower-object (or guile (default-guile))
system #:target target)))
(apply gexp->derivation name gexp #:guile-for-build guile
#:system system #:target target options)))))
(define-record-type <program-file>
(%program-file name gexp guile path)
@ -2087,7 +2084,7 @@ (define build
(computed-file name build))
(define (file-union name files)
(define* (file-union name files #:key guile)
"Return a <computed-file> that builds a directory containing all of FILES.
Each item in FILES must be a two-element list where the first element is the
file name to use in the new directory, and the second element is a gexp
@ -2121,7 +2118,8 @@ (define (file-union name files)
(mkdir-p (dirname (ungexp target)))
(symlink (ungexp source)
(ungexp target))))))
files)))))))
files)))))
#:guile guile))
(define* (directory-union name things
#:key (copy? #f) (quiet? #f)