aboutsummaryrefslogtreecommitdiff
path: root/gnu/system.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-08-11 22:18:33 +0200
committerLudovic Courtès <ludo@gnu.org>2014-08-11 23:01:46 +0200
commit29fce8b6ebaaeff593d65e157ff6fd90de3c416b (patch)
tree1ed1e945b6985cb7c1a44861ca0d850b01acbba2 /gnu/system.scm
parentc5d837684359e3629c4ac96297a25d1165edcb39 (diff)
downloadguix-29fce8b6ebaaeff593d65e157ff6fd90de3c416b.tar
guix-29fce8b6ebaaeff593d65e157ff6fd90de3c416b.tar.gz
system: Use (guix profiles) to build the system profile.
* gnu/system.scm (union): Remove. (operating-system-profile): Use 'profile-derivation' and related procedures instead of 'union'.
Diffstat (limited to 'gnu/system.scm')
-rw-r--r--gnu/system.scm31
1 files changed, 4 insertions, 27 deletions
diff --git a/gnu/system.scm b/gnu/system.scm
index 68f9438693..2894df8235 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -23,6 +23,7 @@
#:use-module (guix records)
#:use-module (guix packages)
#:use-module (guix derivations)
+ #:use-module (guix profiles)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages which)
@@ -125,29 +126,6 @@
;;; Derivation.
;;;
-(define* (union inputs
- #:key (guile (%guile-for-build))
- (name "union"))
- "Return a derivation that builds the union of INPUTS. INPUTS is a list of
-input tuples."
- (define builder
- #~(begin
- (use-modules (guix build union))
-
- (define inputs '#$inputs)
-
- (setvbuf (current-output-port) _IOLBF)
- (setvbuf (current-error-port) _IOLBF)
-
- (format #t "building union `~a' with ~a packages...~%"
- #$output (length inputs))
- (union-build #$output inputs)))
-
- (gexp->derivation name builder
- #:modules '((guix build union))
- #:guile-for-build guile
- #:local-build? #t))
-
(define* (file-union name files)
"Return a derivation that builds a directory containing all of FILES. Each
item in FILES must be a list where the first element is the file name to use
@@ -294,10 +272,9 @@ alias ll='ls -l'
("sudoers" ,#~#$sudoers)))))
(define (operating-system-profile os)
- "Return a derivation that builds the default profile of OS."
- ;; TODO: Replace with a real profile with a manifest.
- (union (operating-system-packages os)
- #:name "default-profile"))
+ "Return a derivation that builds the system profile of OS."
+ (profile-derivation (manifest (map package->manifest-entry
+ (operating-system-packages os)))))
(define %root-account
;; Default root account.