diff options
author | Ludovic Courtès <ludo@gnu.org> | 2017-08-24 00:41:44 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2017-08-24 00:41:44 +0200 |
commit | e4925e00ca420737556e2039b4fa1c40121ee567 (patch) | |
tree | 171345a368620393825ee1bb69b99391877626ed | |
parent | 2718a9cd096d0f5ae4b23cc0814a42aee5cf3c4d (diff) | |
download | guix-e4925e00ca420737556e2039b4fa1c40121ee567.tar guix-e4925e00ca420737556e2039b4fa1c40121ee567.tar.gz |
packages: Use Guile 2.0 for grafting.
Works around <https://bugs.gnu.org/28211>.
Reported by Marius Bakke <mbakke@fastmail.com>.
* guix/packages.scm (guile-2.0): New procedure.
(package-derivation, package-cross-derivation): Use it when computing
the #:guile argument to 'graft-derivation'.
-rw-r--r-- | guix/packages.scm | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/guix/packages.scm b/guix/packages.scm index 3528db442f..f619d9b370 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -414,6 +414,13 @@ derivations." (let ((distro (resolve-interface '(gnu packages commencement)))) (module-ref distro 'guile-final))) +(define (guile-2.0) + "Return Guile 2.0." + ;; FIXME: This is used as a workaround for <https://bugs.gnu.org/28211> when + ;; grafting packages. + (let ((distro (resolve-interface '(gnu packages guile)))) + (module-ref distro 'guile-2.0))) + (define* (default-guile-derivation #:optional (system (%current-system))) "Return the derivation for SYSTEM of the default Guile package used to run the build code of derivation." @@ -1145,7 +1152,7 @@ This is an internal procedure." (() drv) (grafts - (let ((guile (package-derivation store (default-guile) + (let ((guile (package-derivation store (guile-2.0) system #:graft? #f))) ;; TODO: As an optimization, we can simply graft the tip ;; of the derivation graph since 'graft-derivation' @@ -1171,7 +1178,7 @@ system identifying string)." (graft-derivation store drv grafts #:system system #:guile - (package-derivation store (default-guile) + (package-derivation store (guile-2.0) system #:graft? #f)))) drv)))) |