summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-08-16 19:00:49 +0200
committerLudovic Courtès <ludo@gnu.org>2012-08-16 19:00:49 +0200
commit93a0a8b3fdced4afe3ac2fb0783944c5d76cb360 (patch)
treeb178a0bc647a6bd17f90a7544b347d3b740be2fa
parentcf5699604621bf6b16569534805faa3559e778a6 (diff)
downloadguix-93a0a8b3fdced4afe3ac2fb0783944c5d76cb360.tar.gz
packages: Add all non-derivation paths to the store.
* guix/packages.scm (package-derivation): Add all non-derivation paths
  to the store.
-rw-r--r--guix/packages.scm10
1 files changed, 5 insertions, 5 deletions
diff --git a/guix/packages.scm b/guix/packages.scm
index 311e3b6048..3ae71c99db 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -200,13 +200,13 @@ with their propagated inputs, recursively."
                           (list name (package-derivation store package)
                                 sub-drv))
                          (((? string? name)
-                           (and (? string?) (? store-path?) drv))
-                          ;; Both derivation and output paths.  The latter
-                          ;; can be files already in the store.
+                           (and (? string?) (? derivation-path?) drv))
                           (list name drv))
                          (((? string? name)
-                           (and (? string?) (? (negate store-path?))
-                                (? file-exists? file)))
+                           (and (? string?) (? 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
                                 (add-to-store store (basename file)
                                               #t #f "sha256" file))))