diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2019-09-02 14:45:17 +0200 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2019-09-02 14:45:17 +0200 |
commit | c7358ac4fc6369cdf87f95ec8600a21e809a22eb (patch) | |
tree | 65785d5dc1ef7c3fcc0ebf0c98e9a62f3e534162 /guix/import | |
parent | e107ccea8421cd9b74589b73c15127fc812c3a33 (diff) |
import: cran: Retry failed git imports on Bioconductor.
* guix/import/cran.scm (cran->guix-package): Retry failed git imports on
Bioconductor.
Diffstat (limited to 'guix/import')
-rw-r--r-- | guix/import/cran.scm | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 51c7ea7b2f..b5321b44ef 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -494,12 +494,16 @@ from the alist META, which was derived from the R package's DESCRIPTION file." "Fetch the metadata for PACKAGE-NAME from REPO and return the `package' s-expression corresponding to that package, or #f on failure." (let ((description (fetch-description repo package-name))) - (if (and (not description) - (eq? repo 'bioconductor)) - ;; Retry import from CRAN - (cran->guix-package package-name 'cran) - (and description - (description->package repo description))))))) + (if description + (description->package repo description) + (case repo + ((git) + ;; Retry import from Bioconductor + (cran->guix-package package-name 'bioconductor)) + ((bioconductor) + ;; Retry import from CRAN + (cran->guix-package package-name 'cran)) + (else #f))))))) (define* (cran-recursive-import package-name #:optional (repo 'cran)) (recursive-import package-name repo |