packages: Add all non-derivation paths to the store.

* guix/packages.scm (package-derivation): Add all non-derivation paths
  to the store.
This commit is contained in:
Ludovic Courtès 2012-08-16 19:00:49 +02:00
parent cf56996046
commit 93a0a8b3fd

@ -200,13 +200,13 @@ with their propagated inputs, recursively."
(list name (package-derivation store package) (list name (package-derivation store package)
sub-drv)) sub-drv))
(((? string? name) (((? string? name)
(and (? string?) (? store-path?) drv)) (and (? string?) (? derivation-path?) drv))
;; Both derivation and output paths. The latter
;; can be files already in the store.
(list name drv)) (list name drv))
(((? string? name) (((? string? name)
(and (? string?) (? (negate store-path?)) (and (? string?) (? file-exists? file)))
(? file-exists? file))) ;; Add FILE to the store. When FILE is in the
;; sub-directory of a store path, it needs to be
;; added anyway, so it can be used as a source.
(list name (list name
(add-to-store store (basename file) (add-to-store store (basename file)
#t #f "sha256" file)))) #t #f "sha256" file))))