gexp: computed-file: Do not honor %guile-for-build.

This reverts commit 68775338a5.
Fixes <https://issues.guix.gnu.org/61841>.

(%guile-for-build) is a derivation for a specific system,
whereas (default-guile) is a system-independent package.  It's crucial
to preserve this distinction.

See discussion at <https://issues.guix.gnu.org/61255#29>.

* guix/gexp.scm (computed-file-compiler): Honor (default-guile),
not (%guile-for-build).
This commit is contained in:
Ludovic Courtès 2023-02-27 14:39:22 +01:00
parent fee1d08f0d
commit a516a0ba93
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5

View File

@ -584,8 +584,7 @@ This is the declarative counterpart of 'text-file'."
(options computed-file-options)) ;list of arguments
(define* (computed-file name gexp
#:key guile
(local-build? #t) (options '()))
#:key guile (local-build? #t) (options '()))
"Return an object representing the store item NAME, a file or directory
computed by GEXP. When LOCAL-BUILD? is #t (the default), it ensures the
corresponding derivation is built locally. OPTIONS may be used to pass
@ -601,8 +600,7 @@ This is the declarative counterpart of 'gexp->derivation'."
;; gexp.
(match file
(($ <computed-file> name gexp guile options)
(mlet %store-monad ((guile (lower-object (or guile (%guile-for-build)
(default-guile))
(mlet %store-monad ((guile (lower-object (or guile (default-guile))
system #:target #f)))
(apply gexp->derivation name gexp #:guile-for-build guile
#:system system #:target target options)))))