summaryrefslogtreecommitdiff
path: root/gnu/system
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-09-18 17:01:40 +0200
committerLudovic Courtès <ludo@gnu.org>2013-09-18 18:49:53 +0200
commit59688fc4b5cfac3e05610195a47795f5cc15f338 (patch)
treea1f498fc498857e65e5002817760c8721c9caf45 /gnu/system
parent81b66f8567ea2e3ecb0983318d5dedd3b1332e48 (diff)
downloadgnu-guix-59688fc4b5cfac3e05610195a47795f5cc15f338.tar
gnu-guix-59688fc4b5cfac3e05610195a47795f5cc15f338.tar.gz
derivations: 'derivation' and related procedures return a single value.
* guix/derivations.scm (derivation->output-path, derivation->output-paths): New procedures. (derivation-path->output-path): Use 'derivation->output-path'. (derivation-path->output-paths): Use 'derivation->output-paths'. (derivation): Accept 'derivation?' objects as inputs. Return a single value. (build-derivations): New procedure. (compiled-modules): Use 'derivation->output-paths'. (build-expression->derivation)[source-path]: Add case for when the input matches 'derivation?'. [prologue]: Accept 'derivation?' objects in INPUTS. [mod-dir, go-dir]: Use 'derivation->output-path'. * guix/download.scm (url-fetch): Adjust to the single-value return. * guix/packages.scm (package-output): Use 'derivation->output-path'. * guix/scripts/build.scm (guix-build): When the argument is 'derivation-path?', pass it through 'read-derivation'. Use 'derivation-file-name' to print out the .drv file names, and to register them. Use 'derivation->output-path' instead of 'derivation-path->output-path'. * guix/scripts/package.scm (roll-back): Adjust to the single-value return. (guix-package): Use 'derivation->output-path'. * guix/ui.scm (show-what-to-build): Adjust to deal with 'derivation?' objects instead of .drv file names. * gnu/system/grub.scm (grub-configuration-file): Use 'derivation->output-path' instead of 'derivation-path->output-path'. * gnu/system/vm.scm (qemu-image, system-qemu-image): Likewise. * tests/builders.scm, tests/derivations.scm, tests/packages.scm, tests/store.scm, tests/union.scm: Adjust to the new calling convention. * doc/guix.texi (Defining Packages, The Store, Derivations): Adjust accordingly.
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/grub.scm6
-rw-r--r--gnu/system/vm.scm12
2 files changed, 9 insertions, 9 deletions
diff --git a/gnu/system/grub.scm b/gnu/system/grub.scm
index 695a044bfa..b2438b9c5b 100644
--- a/gnu/system/grub.scm
+++ b/gnu/system/grub.scm
@@ -56,7 +56,7 @@ search.file ~a~%"
(any (match-lambda
(($ <menu-entry> _ linux)
(let* ((drv (package-derivation store linux system))
- (out (derivation-path->output-path drv)))
+ (out (derivation->output-path drv)))
(string-append out "/bzImage"))))
entries)))
@@ -71,9 +71,9 @@ search.file ~a~%"
initrd ~a/initrd
}~%"
label
- (derivation-path->output-path linux-drv)
+ (derivation->output-path linux-drv)
(string-join arguments)
- (derivation-path->output-path initrd-drv))))))
+ (derivation->output-path initrd-drv))))))
(add-text-to-store store "grub.cfg"
(string-append prologue
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index 192ed1d5a3..68d205d82a 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -206,10 +206,10 @@ It can be used to provide additional files, such as /etc files."
(define input->name+derivation
(match-lambda
((name (? package? package))
- `(,name . ,(derivation-path->output-path
+ `(,name . ,(derivation->output-path
(package-derivation store package system))))
((name (? package? package) sub-drv)
- `(,name . ,(derivation-path->output-path
+ `(,name . ,(derivation->output-path
(package-derivation store package system)
sub-drv)))
((input (and (? string?) (? store-path?) file))
@@ -361,14 +361,14 @@ It can be used to provide additional files, such as /etc files."
(parameterize ((%guile-for-build (package-derivation store guile-final)))
(let* ((bash-drv (package-derivation store bash))
- (bash-file (string-append (derivation-path->output-path bash-drv)
+ (bash-file (string-append (derivation->output-path bash-drv)
"/bin/bash"))
(accounts (list (vector "root" "" 0 0 "System administrator"
"/" bash-file)))
(passwd (passwd-file store accounts))
(shadow (passwd-file store accounts #:shadow? #t))
(pam.d-drv (pam-services->directory store %pam-services))
- (pam.d (derivation-path->output-path pam.d-drv))
+ (pam.d (derivation->output-path pam.d-drv))
(populate
(add-text-to-store store "populate-qemu-image"
(object->string
@@ -381,11 +381,11 @@ It can be used to provide additional files, such as /etc files."
(symlink ,pam.d "etc/pam.d")
(mkdir-p "var/run")))
(list passwd)))
- (out (derivation-path->output-path
+ (out (derivation->output-path
(package-derivation store mingetty)))
(getty (string-append out "/sbin/mingetty"))
(iu-drv (package-derivation store inetutils))
- (syslogd (string-append (derivation-path->output-path iu-drv)
+ (syslogd (string-append (derivation->output-path iu-drv)
"/libexec/syslogd"))
(boot (add-text-to-store store "boot"
(object->string