aboutsummaryrefslogtreecommitdiff
path: root/gnu/system
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-08-31 22:56:16 +0200
committerLudovic Courtès <ludo@gnu.org>2013-08-31 23:02:18 +0200
commit4c0f0673b2334077ac11f3d835d045c81d9854e0 (patch)
treee2aa27b266b943abdf20ff3cd2ca1dd6bd3222c5 /gnu/system
parentca85d7bcc6dca82bea176052d0a2615cd9bd3074 (diff)
downloadguix-4c0f0673b2334077ac11f3d835d045c81d9854e0.tar
guix-4c0f0673b2334077ac11f3d835d045c81d9854e0.tar.gz
gnu: `expression->derivation-in-linux-vm' accepts files as inputs.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Accept items in INPUTS that refer to a file instead of a package.
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/vm.scm15
1 files changed, 10 insertions, 5 deletions
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index f3e875bee1..5b61136dc0 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -70,10 +70,12 @@ pairs, as for `derivation'. The files containing the reference graphs are
made available under the /xchg CIFS share."
(define input-alist
(map (match-lambda
- ((input package)
+ ((input (? package? package))
`(,input . ,(package-output store package "out" system)))
- ((input package sub-drv)
- `(,input . ,(package-output store package sub-drv system))))
+ ((input (? package? package) sub-drv)
+ `(,input . ,(package-output store package sub-drv system)))
+ ((input (and (? string?) (? store-path?) file))
+ `(,input . ,file)))
inputs))
(define exp*
@@ -153,9 +155,12 @@ made available under the /xchg CIFS share."
("coreutils" ,(->drv coreutils))
("builder" ,user-builder)
,@(map (match-lambda
- ((name package sub-drv ...)
+ ((name (? package? package)
+ sub-drv ...)
`(,name ,(->drv package)
- ,@sub-drv)))
+ ,@sub-drv))
+ ((name (? string? file))
+ `(,name ,file)))
inputs))
#:env-vars env-vars
#:modules (delete-duplicates