From 1df54ceab38873dfc0fd2ec27313d7d17c79c350 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 21 Apr 2023 16:27:07 +0200 Subject: packages: 'package-direct-sources' correctly handles non-origin sources. Previously 'package-direct-sources' would trigger a wrong-type-arg error when passed a package whose 'source' is not an origin, such as 'ruby-sorbet-runtime'. * guix/packages.scm (package-direct-sources): Call 'expand' if and only if (package-source package) is an origin. --- guix/packages.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/guix/packages.scm b/guix/packages.scm index bce82ab3a3..e26602d589 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -1234,11 +1234,14 @@ input list." "Return all source origins associated with PACKAGE; including origins in PACKAGE's inputs and patches." (define (expand source) - (cons - source - (filter origin? (origin-patches source)))) + (cons source + (filter origin? (origin-patches source)))) - `(,@(or (and=> (package-source package) expand) '()) + `(,@(match (package-source package) + ((? origin? origin) + (expand origin)) + (_ + '())) ,@(filter-map (match-lambda ((_ (? origin? orig) _ ...) orig) -- cgit 1.4.1