summaryrefslogtreecommitdiff
path: root/guix/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'guix/scripts')
-rw-r--r--guix/scripts/archive.scm7
-rw-r--r--guix/scripts/build.scm14
-rw-r--r--guix/scripts/environment.scm5
-rw-r--r--guix/scripts/system.scm28
4 files changed, 34 insertions, 20 deletions
diff --git a/guix/scripts/archive.scm b/guix/scripts/archive.scm
index 781ffc5f58..e265f82b52 100644
--- a/guix/scripts/archive.scm
+++ b/guix/scripts/archive.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -170,7 +170,10 @@ derivation of a package."
(package-name p))))
(package-derivation store p system)))
((? procedure? proc)
- (run-with-store store (proc) #:system system))))
+ (run-with-store store
+ (mbegin %store-monad
+ (set-guile-for-build (default-guile))
+ (proc)) #:system system))))
(define (options->derivations+files store opts)
"Given OPTS, the result of 'args-fold', return a list of derivations to
diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm
index 26e9f42774..07ced30484 100644
--- a/guix/scripts/build.scm
+++ b/guix/scripts/build.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
@@ -347,12 +347,18 @@ packages."
((? package? p)
`(argument . ,p))
((? procedure? proc)
- (let ((drv (run-with-store store (proc) #:system system)))
+ (let ((drv (run-with-store store
+ (mbegin %store-monad
+ (set-guile-for-build (default-guile))
+ (proc))
+ #:system system)))
`(argument . ,drv)))
((? gexp? gexp)
(let ((drv (run-with-store store
- (gexp->derivation "gexp" gexp
- #:system system))))
+ (mbegin %store-monad
+ (set-guile-for-build (default-guile))
+ (gexp->derivation "gexp" gexp
+ #:system system)))))
`(argument . ,drv)))))
(opt opt))
opts))
diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm
index c388b0c52c..af196036d5 100644
--- a/guix/scripts/environment.scm
+++ b/guix/scripts/environment.scm
@@ -232,7 +232,10 @@ packages."
(command (assoc-ref opts 'exec))
(inputs (packages->transitive-inputs
(pick-all (options/resolve-packages opts) 'package)))
- (drvs (run-with-store store (build-inputs inputs opts))))
+ (drvs (run-with-store store
+ (mbegin %store-monad
+ (set-guile-for-build (default-guile))
+ (build-inputs inputs opts)))))
(cond ((assoc-ref opts 'dry-run?)
#t)
((assoc-ref opts 'search-paths)
diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm
index 27404772b7..b0974dcfcd 100644
--- a/guix/scripts/system.scm
+++ b/guix/scripts/system.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -553,18 +553,20 @@ Build the operating system declared in FILE according to ACTION.\n"))
(set-build-options-from-command-line store opts)
(run-with-store store
- (perform-action action os
- #:dry-run? dry?
- #:use-substitutes? (assoc-ref opts 'substitutes?)
- #:image-size (assoc-ref opts 'image-size)
- #:full-boot? (assoc-ref opts 'full-boot?)
- #:mappings (filter-map (match-lambda
- (('file-system-mapping . m)
- m)
- (_ #f))
- opts)
- #:grub? grub?
- #:target target #:device device)
+ (mbegin %store-monad
+ (set-guile-for-build (default-guile))
+ (perform-action action os
+ #:dry-run? dry?
+ #:use-substitutes? (assoc-ref opts 'substitutes?)
+ #:image-size (assoc-ref opts 'image-size)
+ #:full-boot? (assoc-ref opts 'full-boot?)
+ #:mappings (filter-map (match-lambda
+ (('file-system-mapping . m)
+ m)
+ (_ #f))
+ opts)
+ #:grub? grub?
+ #:target target #:device device))
#:system system))))
;;; system.scm ends here