~ruther/guix-local

37c58656ebb499d32275829aacfa2a99e22d654a — Ludovic Courtès 12 years ago 8f37bf6
gnu: vm: Support derivation objects as inputs.

* gnu/system/vm.scm (expression->derivation-in-linux-vm)[input-alist]:
  Add case for derivation? objects.
  Same for #:inputs values.
  (qemu-image)[input->name+derivation]: Likewise.
1 files changed, 10 insertions(+), 1 deletions(-)

M gnu/system/vm.scm
M gnu/system/vm.scm => gnu/system/vm.scm +10 -1
@@ 92,6 92,10 @@ made available under the /xchg CIFS share."
           `(,input . ,(package-output store package "out" system)))
          ((input (? package? package) sub-drv)
           `(,input . ,(package-output store package sub-drv system)))
          ((input (? derivation? drv))
           `(,input . ,(derivation->output-path drv)))
          ((input (? derivation? drv) sub-drv)
           `(,input . ,(derivation->output-path drv sub-drv)))
          ((input (and (? string?) (? store-path?) file))
           `(,input . ,file)))
         inputs))


@@ 178,7 182,8 @@ made available under the /xchg CIFS share."
                                             `(,name ,(->drv package)
                                                     ,@sub-drv))
                                            ((name (? string? file))
                                             `(,name ,file)))
                                             `(,name ,file))
                                            (tuple tuple))
                                           inputs))
                                  #:env-vars env-vars
                                  #:modules (delete-duplicates


@@ 216,6 221,10 @@ It can be used to provide additional files, such as /etc files."
      `(,name . ,(derivation->output-path
                  (package-derivation store package system)
                  sub-drv)))
     ((name (? derivation? drv))
      `(,name . ,(derivation->output-path drv)))
     ((name (? derivation? drv) sub-drv)
      `(,name . ,(derivation->output-path drv sub-drv)))
     ((input (and (? string?) (? store-path?) file))
      `(,input . ,file))))