summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--henrietta-cache.scm12
1 files changed, 8 insertions, 4 deletions
diff --git a/henrietta-cache.scm b/henrietta-cache.scm
index ba99aa2..832dcc3 100644
--- a/henrietta-cache.scm
+++ b/henrietta-cache.scm
@@ -174,15 +174,19 @@ EOF
((zip) (sprintf "unzip -d ~A -o -qq ~A" (qs dir) (qs archive)))
(else (error (sprintf "Unknown archive type `~S' (shouldn't happen!)"
distribution-file-type)))))))
- ((meta-file)
+ ((meta-file egg-file)
(condition-case
(let* ((meta (car (call-with-input-request uri #f read-file)))
- (files (alist-ref 'files meta)))
+ (files (or (alist-ref 'files meta)
+ ;; Egg description files for C5 use
+ ;; `distribution-files' to specify files to
+ ;; cache.
+ (alist-ref 'distribution-files meta))))
(unless files
- (error "No \"files\" entry found in meta file" uri))
+ (error "No \"files\" entry found in meta or egg file" uri))
(download-files-from-list (uri-reference uri) files cache-dir))
(e (exn http)
- (error (sprintf "Could not download meta-file \"~A\" -- ~A\n"
+ (error (sprintf "Could not download meta or egg file \"~A\" -- ~A\n"
uri (get-condition-property e 'exn 'message))))))
((files-list)
(condition-case