diff options
-rw-r--r-- | guix-data-service/model/derivation.scm | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/guix-data-service/model/derivation.scm b/guix-data-service/model/derivation.scm index df44814..6b94384 100644 --- a/guix-data-service/model/derivation.scm +++ b/guix-data-service/model/derivation.scm @@ -277,12 +277,20 @@ ORDER BY derivations.system DESC, (insert-into-derivation-inputs (append-map (match-lambda - (($ <derivation-input> path sub-derivations) - (map (lambda (sub-derivation) - (select-derivation-output-id conn - sub-derivation - path)) - sub-derivations))) + (($ <derivation-input> derivation-or-path sub-derivations) + (let ((path + (match derivation-or-path + ((? derivation? d) + ;; The first field changed to a derivation (from the file + ;; name) in 5cf4b26d52bcea382d98fb4becce89be9ee37b55 + (derivation-file-name d)) + ((? string? s) + s)))) + (map (lambda (sub-derivation) + (select-derivation-output-id conn + sub-derivation + path)) + sub-derivations)))) derivation-inputs))))) (define (select-from-derivation-source-files store-paths) |