aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Kost <alezost@gmail.com>2016-03-25 11:27:18 +0300
committerAlex Kost <alezost@gmail.com>2016-04-04 20:11:22 +0300
commit5f2928456bf70a6869b0a415ca60b6cc1e43214c (patch)
treef7f2a63d7cf32186d95d1990fca3c22746da4132
parent2fc629ddc4580e081127f661c4b463e11b6e3dee (diff)
downloadpatches-5f2928456bf70a6869b0a415ca60b6cc1e43214c.tar
patches-5f2928456bf70a6869b0a415ca60b6cc1e43214c.tar.gz
emacs: Use 'build-and-use-profile' from (guix scripts package).
* guix/scripts/package.scm: Export 'build-and-use-profile'. * emacs/guix-main.scm (process-package-actions): Use it.
-rw-r--r--emacs/guix-main.scm36
-rw-r--r--guix/scripts/package.scm3
2 files changed, 10 insertions, 29 deletions
diff --git a/emacs/guix-main.scm b/emacs/guix-main.scm
index 86cedfd459..bcff9ce985 100644
--- a/emacs/guix-main.scm
+++ b/emacs/guix-main.scm
@@ -917,34 +917,14 @@ OUTPUTS is a list of package outputs (may be an empty list)."
manifest transaction)))
(unless (and (null? install) (null? remove))
(with-store store
- (let* ((derivation (run-with-store store
- (mbegin %store-monad
- (set-guile-for-build (default-guile))
- (profile-derivation new-manifest))))
- (derivations (list derivation))
- (new-profile (derivation->output-path derivation)))
- (set-build-options store
- #:print-build-trace #f
- #:use-substitutes? use-substitutes?)
- (show-manifest-transaction store manifest transaction
- #:dry-run? dry-run?)
- (show-what-to-build store derivations
- #:use-substitutes? use-substitutes?
- #:dry-run? dry-run?)
- (unless dry-run?
- (let ((name (generation-file-name
- profile
- (+ 1 (generation-number profile)))))
- (and (build-derivations store derivations)
- (let* ((entries (manifest-entries new-manifest))
- (count (length entries)))
- (switch-symlinks name new-profile)
- (switch-symlinks profile name)
- (format #t (N_ "~a package in profile~%"
- "~a packages in profile~%"
- count)
- count)
- (display-search-paths entries (list profile)))))))))))
+ (set-build-options store
+ #:print-build-trace #f
+ #:use-substitutes? use-substitutes?)
+ (show-manifest-transaction store manifest transaction
+ #:dry-run? dry-run?)
+ (build-and-use-profile store profile new-manifest
+ #:use-substitutes? use-substitutes?
+ #:dry-run? dry-run?)))))
(define (delete-generations* profile generations)
"Delete GENERATIONS from PROFILE.
diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm
index 1d88b33996..697afc17c3 100644
--- a/guix/scripts/package.scm
+++ b/guix/scripts/package.scm
@@ -47,7 +47,8 @@
#:autoload (gnu packages base) (canonical-package)
#:autoload (gnu packages guile) (guile-2.0)
#:autoload (gnu packages bootstrap) (%bootstrap-guile)
- #:export (delete-generations
+ #:export (build-and-use-profile
+ delete-generations
display-search-paths
guix-package))