From 9238ba58748d99970674e098c9b1b0ed8ca66c14 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 15 Jul 2022 00:06:26 +0200 Subject: gnu: r-affycompatible: Build reproducibly. * gnu/packages/bioconductor.scm (r-affycompatible)[arguments]: Sort XML elements before generating R code from them. --- gnu/packages/bioconductor.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 38c309caa4..31484799b2 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2940,6 +2940,25 @@ measures for Affymetrix Oligonucleotide Arrays.") (properties `((upstream-name . "AffyCompatible"))) (build-system r-build-system) + (arguments + (list + #:phases + `(modify-phases %standard-phases + (add-after 'unpack 'make-reproducible + (lambda _ + ;; Order DTD elements before generating R code from them. + (substitute* "R/methods-AffyCompatible.R" + (("dtd <- .*" m) + (string-append m " +elements <- dtd$elements +ordered <- elements[order(names(elements))]\n")) + (("elt in dtd\\$elements") + "elt in ordered")) + ;; Use a predictable directory name for code generation. + (mkdir-p "/tmp/NetAffxResourcePrototype") + (substitute* "R/DataClasses.R" + (("directory=tempdir\\(\\)") + "directory=\"/tmp/NetAffxResourcePrototype\""))))))) (propagated-inputs (list r-biostrings r-rcurl r-xml)) (home-page "https://bioconductor.org/packages/AffyCompatible/") -- cgit v1.2.3