summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-02-12 19:12:18 +0100
committerLudovic Courtès <ludo@gnu.org>2016-02-12 21:54:25 +0100
commite5f04c2dde258c14e714e748d17b1137fe0bf4f3 (patch)
treed99771801291e3e001e8667365da515a145fa62d
parent98a7b528d61cfca3f8bfc827cf94f4716ab75abd (diff)
profiles: Add #:system argument to profile-derivation.
Suggested by David Thompson <davet@gnu.org>. * guix/profiles.scm (profile-derivation): Add #:system parameter and honor it.
-rw-r--r--guix/profiles.scm10
1 files changed, 7 insertions, 3 deletions
diff --git a/guix/profiles.scm b/guix/profiles.scm
index ce86ff8e0a..1c53c8047a 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
@@ -694,11 +694,15 @@ creates the GTK+ 'icon-theme.cache' file for each theme."
(define* (profile-derivation manifest
#:key
- (hooks %default-profile-hooks))
+ (hooks %default-profile-hooks)
+ system)
"Return a derivation that builds a profile (aka. 'user environment') with
the given MANIFEST. The profile includes additional derivations returned by
the monadic procedures listed in HOOKS--such as an Info 'dir' file, etc."
- (mlet %store-monad ((extras (if (null? (manifest-entries manifest))
+ (mlet %store-monad ((system (if system
+ (return system)
+ (current-system)))
+ (extras (if (null? (manifest-entries manifest))
(return '())
(sequence %store-monad
(map (lambda (hook)