From b579b1c1d19f68435d3c919d8a9fb7bc2c238b32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 20 Jul 2020 23:36:33 +0200 Subject: [PATCH] gnu-maintenance: Handle lists returned by 'origin-uri'. This fixes "guix refresh man-pages", for instance. * guix/gnu-maintenance.scm (latest-savannah-release) (latest-kernel.org-release): Handle the case where 'origin-uri' returns a list. --- guix/gnu-maintenance.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/guix/gnu-maintenance.scm b/guix/gnu-maintenance.scm index 91203f5ca1..0b5bc8592c 100644 --- a/guix/gnu-maintenance.scm +++ b/guix/gnu-maintenance.scm @@ -642,7 +642,10 @@ releases are on gnu.org." (define (latest-savannah-release package) "Return the latest release of PACKAGE." - (let* ((uri (string->uri (origin-uri (package-source package)))) + (let* ((uri (string->uri + (match (origin-uri (package-source package)) + ((? string? uri) uri) + ((uri mirrors ...) uri)))) (package (package-upstream-name package)) (directory (dirname (uri-path uri))) (rewrite (url-prefix-rewrite %savannah-base @@ -672,7 +675,10 @@ releases are on gnu.org." (define (file->signature file) (string-append (file-sans-extension file) ".sign")) - (let* ((uri (string->uri (origin-uri (package-source package)))) + (let* ((uri (string->uri + (match (origin-uri (package-source package)) + ((? string? uri) uri) + ((uri mirrors ...) uri)))) (package (package-upstream-name package)) (directory (dirname (uri-path uri))) (rewrite (url-prefix-rewrite %kernel.org-base