summaryrefslogtreecommitdiff
path: root/guix/scripts/environment.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-03-18 18:11:02 +0100
committerLudovic Courtès <ludo@gnu.org>2015-03-18 18:11:02 +0100
commit381c540b937a5e6e8b7007c9c0271ee816bf5417 (patch)
tree27191f25f05bbfd48dbf47bbd29f72cb7521482f /guix/scripts/environment.scm
parent49689377a3bab8da08436455ca14a0432fa0e95f (diff)
parentf401b1e9934a6594d6d7586922aa987e0b24839b (diff)
Merge branch 'master' into core-updates
Diffstat (limited to 'guix/scripts/environment.scm')
-rw-r--r--guix/scripts/environment.scm37
1 files changed, 19 insertions, 18 deletions
diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm
index c96ca351c4..80ae924410 100644
--- a/guix/scripts/environment.scm
+++ b/guix/scripts/environment.scm
@@ -220,21 +220,22 @@ packages."
(define (handle-argument arg result)
(alist-cons 'package arg result))
- (with-store store
- (let* ((opts (parse-command-line args %options (list %default-options)
- #:argument-handler handle-argument))
- (pure? (assoc-ref opts 'pure))
- (command (assoc-ref opts 'exec))
- (inputs (packages->transitive-inputs
- (pick-all (options/resolve-packages opts) 'package)))
- (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)
- (show-search-paths inputs drvs pure?))
- (else
- (create-environment inputs drvs pure?)
- (system command))))))
+ (with-error-handling
+ (with-store store
+ (let* ((opts (parse-command-line args %options (list %default-options)
+ #:argument-handler handle-argument))
+ (pure? (assoc-ref opts 'pure))
+ (command (assoc-ref opts 'exec))
+ (inputs (packages->transitive-inputs
+ (pick-all (options/resolve-packages opts) 'package)))
+ (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)
+ (show-search-paths inputs drvs pure?))
+ (else
+ (create-environment inputs drvs pure?)
+ (system command)))))))