From 25e51b1c45374ca0dd1898fd5acaefe4fc3cd815 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 6 Nov 2017 17:49:47 +0100 Subject: [PATCH] guix: Add archive support for bioconductor-uri. * guix/build-system/r.scm (bioconductor-uri): Also return the archive URL. * guix/import/cran.scm (latest-bioconductor-release, fetch-description): Adjust because bioconductor-uri now returns a list. --- guix/build-system/r.scm | 9 ++++++--- guix/import/cran.scm | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/guix/build-system/r.scm b/guix/build-system/r.scm index 2c8a89f8de..6bdb7061eb 100644 --- a/guix/build-system/r.scm +++ b/guix/build-system/r.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -50,8 +50,11 @@ available via the first URI, the second URI points to the archived version." (define (bioconductor-uri name version) "Return a URI string for the R package archive on Bioconductor for the release corresponding to NAME and VERSION." - (string-append "https://bioconductor.org/packages/release/bioc/src/contrib/" - name "_" version ".tar.gz")) + (list (string-append "https://bioconductor.org/packages/release/bioc/src/contrib/" + name "_" version ".tar.gz") + ;; TODO: use %bioconductor-version from (guix import cran) + (string-append "https://bioconductor.org/packages/3.6/bioc/src/contrib/Archive/" + name "_" version ".tar.gz"))) (define %r-build-system-modules ;; Build-side modules imported by default. diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 5622f759e0..ec2b7e6029 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -182,7 +182,7 @@ from ~s: ~a (~s)~%" ;; package's DESCRIPTION file over HTTP, so we determine the version, ;; download the source tarball, and then extract the DESCRIPTION file. (let* ((version (latest-bioconductor-package-version name)) - (url (bioconductor-uri name version)) + (url (car (bioconductor-uri name version))) (tarball (with-store store (download-to-store store url)))) (call-with-temporary-directory (lambda (dir) @@ -469,7 +469,7 @@ dependencies." (upstream-source (package (package-name package)) (version version) - (urls (list (bioconductor-uri upstream-name version)))))) + (urls (bioconductor-uri upstream-name version))))) (define (cran-package? package) "Return true if PACKAGE is an R package from CRAN."