;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014 Andreas Enge ;;; Copyright © 2013 Nikita Karetnikov ;;; Copyright © 2013 David Thompson ;;; Copyright © 2014 Sree Harsha Totakura ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2015 Paul van der Walt ;;; Copyright © 2015, 2016, 2017, 2019 Efraim Flashner ;;; Copyright © 2017, 2018, 2019, 2020 Marius Bakke ;;; Copyright © 2018–2021 Tobias Geerinckx-Rice ;;; Copyright © 2018 Leo Famulari ;;; Copyright © 2020 Vincent Legoll ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu packages xiph) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages bison) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages documentation) #:use-module (gnu packages image) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages linux) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages tls) #:use-module (gnu packages xml) #:use-mod;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015-2024 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018, 2020, 2021 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl> ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017, 2022, 2024 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018, 2019, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019, 2020, 2021, 2022, 2023 Simon Tournier <zimon.toutoune@gmail.com> ;;; Copyright © 2020 Peter Lo <peterloleungyau@gmail.com> ;;; Copyright © 2020-2023 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; Copyright © 2021 Hong Li <hli@mdc-berlin.de> ;;; Copyright © 2021 Tim Howes <timhowes@lavabit.com> ;;; Copyright © 2021 Nicolas Vallet <nls.vallet@gmail.com> ;;; Copyright © 2023 Navid Afkhami <Navid.Afkhami@mdc-berlin.de> ;;; Copyright © 2024 Spencer King <spencer.king@geneoscopy.com> ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages bioconductor) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix gexp) #:use-module (guix utils) #:use-module (guix git-download) #:use-module (guix build-system r) #:use-module (gnu packages) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages bioinformatics) #:use-module (gnu packages boost) #:use-module (gnu packages chemistry) #:use-module (gnu packages cran) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages docker) #:use-module (gnu packages gcc) #:use-module (gnu packages ghostscript) #:use-module (gnu packages graph) #:use-module (gnu packages graphviz) #:use-module (gnu packages haskell-xyz) #:use-module (gnu packages image) #:use-module (gnu packages java) #:use-module (gnu packages javascript) #:use-module (gnu packages maths) #:use-module (gnu packages ncurses) #:use-module (gnu packages netpbm) #:use-module (gnu packages python) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages protobuf) #:use-module (gnu packages statistics) #:use-module (gnu packages tex) #:use-module (gnu packages tls) #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module ((srfi srfi-1) #:hide (zip))) ;;; Annotations (define-public r-bsgenome-drerio-ucsc-danrer7 (package (name "r-bsgenome-drerio-ucsc-danrer7") (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BSgenome.Drerio.UCSC.danRer7" version 'annotation)) (sha256 (base32 "17x3hj08jag05y8q4aziy455jy15dpwkdbh97v3byzcda0kpwbpg")))) (properties `((upstream-name . "BSgenome.Drerio.UCSC.danRer7"))) (build-system r-build-system) (propagated-inputs (list r-bsgenome)) (home-page "https://bioconductor.org/packages/BSgenome.Drerio.UCSC.danRer7") (synopsis "Full genome sequences for Danio rerio (UCSC version danRer7)") (description "This package provides full genome sequences for Danio rerio (Zebrafish) as provided by UCSC (@code{danRer7}, Jul. 2010) and stored in Biostrings objects.") (license license:artistic2.0))) (define-public r-bsgenome-hsapiens-ucsc-hg38-masked (package (name "r-bsgenome-hsapiens-ucsc-hg38-masked") (version "1.4.5") (source (origin (method url-fetch) (uri (bioconductor-uri "BSgenome.Hsapiens.UCSC.hg38.masked" version 'annotation)) (sha256 (base32 "0j71hdxqvvc0s8mc6jp6zk502mrf095qazj95yzzb4rm6sjvd20m")))) (properties `((upstream-name . "BSgenome.Hsapiens.UCSC.hg38.masked"))) (build-system r-build-system) (propagated-inputs (list r-bsgenome r-bsgenome-hsapiens-ucsc-hg38 r-genomeinfodb)) (home-page "https://bioconductor.org/packages/BSgenome.Hsapiens.UCSC.hg38.masked") (synopsis "Full masked genomic sequences for Homo sapiens (UCSC version hg38)") (description "This package provides the complete genome sequences for Homo sapiens as provided by UCSC (genome hg38, based on assembly GRCh38.p14 since 2023/01/31). The sequences are the same as in BSgenome.Hsapiens.UCSC.hg38, except that each of them has the 4 following masks on top: @enumerate @item the mask of assembly gaps (AGAPS mask); @item the mask of intra-contig ambiguities (AMB mask); @item the mask of repeats from @code{RepeatMasker} (RM mask); @item the mask of repeats from Tandem Repeats Finder (TRF mask). @end enumerate Only the AGAPS and AMB masks are \"active\" by default. The sequences are stored in @code{MaskedDNAString} objects.") (license license:artistic2.0))) (define-public r-ensdb-hsapiens-v79 (package (name "r-ensdb-hsapiens-v79") (version "2.99.0") (source (origin (method url-fetch) (uri (bioconductor-uri "EnsDb.Hsapiens.v79" version 'annotation)) (sha256 (base32 "0k94iml0417m3k086d0bzd83fndyb2kn7pimsfzcdmafgy6sxwgg")))) (properties `((upstream-name . "EnsDb.Hsapiens.v79"))) (build-system r-build-system) (propagated-inputs (list r-ensembldb)) (home-page "https://bioconductor.org/packages/EnsDb.Hsapiens.v79") (synopsis "Ensembl based annotation package") (description "This package exposes an annotation database generated from Ensembl.") (license license:artistic2.0))) (define-public r-genomewidesnp6crlmm (package (name "r-genomewidesnp6crlmm") (version "1.0.7") (source (origin (method url-fetch) (uri (bioconductor-uri "genomewidesnp6Crlmm" version 'annotation)) (sha256 (base32 "16qcxa32fmbdcv5dck0grsnqyfcqql7wpxa1l6andv9hrvabv2jx")))) (properties `((upstream-name . "genomewidesnp6Crlmm"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/genomewidesnp6Crlmm") (synopsis "Metadata for fast genotyping with the crlmm package") (description "This is a package with metadata for fast genotyping Affymetrix @code{GenomeWideSnp_6} arrays using the @code{crlmm} package.") (license license:artistic2.0))) (define-public r-hgu95a-db (package (name "r-hgu95a-db") (version "3.13.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hgu95a.db" version 'annotation)) (sha256 (base32 "1krmnl5kqfvb4jvrqy72x0s8z7rha96d5nwcbnarpflf12k4hrha")))) (properties `((upstream-name . "hgu95a.db"))) (build-system r-build-system) (propagated-inputs (list r-annotationdbi r-org-hs-eg-db)) (native-inputs (list r-runit)) (home-page "https://bioconductor.org/packages/hgu95a.db") (synopsis "Affymetrix HG_U95A Array annotation data (chip hgu95a)") (description "This package provides Affymetrix HG_U95A Array annotation data (chip hgu95a) assembled using data from public repositories.") (license license:artistic2.0))) (define-public r-hgu95av2 (package (name "r-hgu95av2") (version "2.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hgu95av2" version 'annotation)) (sha256 (base32 "181bady90v89yx2gzwahhcl63aiypcx33pkfnjxkyq45qgb18bqi")))) (properties `((upstream-name . "hgu95av2"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/hgu95av2") (synopsis "Affymetrix Human Genome U95 Set annotation data (hgu95av2)") (description "This package provides Affymetrix Human Genome U95 Set annotation data (hgu95av2) assembled using data from public data repositories.") (license license:artistic2.0))) (define-public r-hgu95av2-db (package (name "r-hgu95av2-db") (version "3.13.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hgu95av2.db" version 'annotation)) (sha256 (base32 "1zk3mb9p8z2xabqr6y9jdiwidjzkgn22jlqyqg1bq0iahmj2ywpz")))) (properties `((upstream-name . "hgu95av2.db"))) (build-system r-build-system) (propagated-inputs (list r-annotationdbi r-org-hs-eg-db)) (native-inputs (list r-runit)) (home-page "https://bioconductor.org/packages/hgu95av2.db") (synopsis "Affymetrix HG_U95Av2 Array annotation data (chip hgu95av2)") (description "This package provides Affymetrix HG_U95Av2 Array annotation data (chip hgu95av2) assembled using data from public repositories.") (license license:artistic2.0))) (define-public r-hgu95av2cdf (package (name "r-hgu95av2cdf") (version "2.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hgu95av2cdf" version 'annotation)) (sha256 (base32 "1zp1y5awnkprkmk01rmn881y50bslfi8s33i8bws39am5xma0jfl")))) (properties `((upstream-name . "hgu95av2cdf"))) (build-system r-build-system) (propagated-inputs (list r-annotationdbi)) (home-page "https://bioconductor.org/packages/hgu95av2cdf") (synopsis "hgu95av2cdf") (description "This package provides a package containing an environment representing the HG_U95Av2.CDF file.") (license license:lgpl2.0+))) (define-public r-hgu133a-db (package (name "r-hgu133a-db") (version "3.13.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hgu133a.db" version 'annotation)) (sha256 (base32 "00jcginfs161ls9hxsvynbrghg3awjrphnc54b8g0gj8g6x22pll")))) (properties `((upstream-name . "hgu133a.db"))) (build-system r-build-system) (propagated-inputs (list r-annotationdbi r-org-hs-eg-db)) (native-inputs (list r-runit)) (home-page "https://bioconductor.org/packages/hgu133a.db") (synopsis "Affymetrix HG-U133A Array annotation data (chip hgu133a)") (description "This package provides Affymetrix HG-U133A Array annotation data (chip hgu133a) assembled using data from public repositories.") (license license:artistic2.0))) (define-public r-hpo-db (package (name "r-hpo-db") (version "0.99.2") (source (origin (method url-fetch) (uri (bioconductor-uri "HPO.db" version 'annotation)) (sha256 (base32 "1brzrnafvyh76h8a663gk5lprhixxpi9xi65vwgxwf7jh6yw0was")))) (properties `((upstream-name . "HPO.db"))) (build-system r-build-system) (arguments (list #:phases #~(modify-phases %standard-phases (add-after 'unpack 'avoid-internet-access (lambda* (#:key inputs #:allow-other-keys) (let* ((cache (string-append #$output "/share/HPO.db/cache")) (file (string-append cache "/118333"))) (mkdir-p cache) (copy-file #$(this-package-native-input "HPO.sqlite") file) (substitute* "R/zzz.R" (("ah <- suppressMessages\\(AnnotationHub\\(\\)\\)" m) (string-append "if (Sys.getenv(\"NIX_BUILD_TOP\") == \"\") { " m " };")) (("dbfile <- ah.*" m) (string-append "if (Sys.getenv(\"NIX_BUILD_TOP\") != \"\") { dbfile <- \"" file "\";} else { " m " }\n"))))))))) (propagated-inputs (list r-annotationdbi r-annotationhub r-biocfilecache r-dbi)) (native-inputs `(("r-knitr" ,r-knitr) ("r-testthat" ,r-testthat) ("HPO.sqlite" ,(origin (method url-fetch) (uri "https://annotationhub.bioconductor.org/fetch/118333") (file-name "HPO.sqlite") (sha256 (base32 "1wwdwf27iil0p41183qgygh2ifphhmlljjkgjm2h8sr25qycf0md")))))) (home-page "https://bioconductor.org/packages/HPO.db") (synopsis "Annotation maps describing the entire Human Phenotype Ontology") (description "Human Phenotype Ontology (HPO) was developed to create a consistent description of gene products with disease perspectives, and is essential for supporting functional genomics in disease context. Accurate disease descriptions can discover new relationships between genes and disease, and new functions for previous uncharacteried genes and alleles.") (license license:artistic2.0))) (define-public r-human370v1ccrlmm (package (name "r-human370v1ccrlmm") (version "1.0.2") (source (origin (method url-fetch) (uri (bioconductor-uri "human370v1cCrlmm" version 'annotation)) (sha256 (base32 "1fhvgc6phhy8fqrl8bwjyskjl95bwlc08jyrkhsivml3ngbsfdf7")))) (properties `((upstream-name . "human370v1cCrlmm"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/human370v1cCrlmm") (synopsis "Metadata for fast genotyping with the 'crlmm' package") (description "This is a package with metadata for genotyping Illumina 370k arrays using the crlmm package.") (license license:artistic2.0))) (define-public r-illuminahumanmethylationepicanno-ilm10b2-hg19 (package (name "r-illuminahumanmethylationepicanno-ilm10b2-hg19") (version "0.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "IlluminaHumanMethylationEPICanno.ilm10b2.hg19" version 'annotation)) (sha256 (base32 "0sfdx0lpiw3l4passx93pjfswd0iv3hxdc7ciazh53baib3xpv2d")))) (properties `((upstream-name . "IlluminaHumanMethylationEPICanno.ilm10b2.hg19"))) (build-system r-build-system) (propagated-inputs (list r-minfi)) (home-page "https://bitbucket.com/kasperdanielhansen/Illumina_EPIC") (synopsis "Annotation for Illumina's EPIC methylation arrays") (description "This is an annotation package for Illumina's EPIC methylation arrays.") (license license:artistic2.0))) (define-public r-jaspar2020 (package (name "r-jaspar2020") (version "0.99.10") (source (origin (method url-fetch) (uri (bioconductor-uri "JASPAR2020" version 'annotation)) (sha256 (base32 "0nrp63z7q2ivv5h87f7inpp2qll2dfgj4227l4rbnzii38a2vfdr")))) (properties `((upstream-name . "JASPAR2020"))) (build-system r-build-system) (native-inputs (list r-knitr)) (home-page "https://jaspar.elixir.no/") (synopsis "Data package for JASPAR database (version 2020)") (description "Data package for JASPAR2020. To explore these databases, utilize the TFBSTools package (version 1.23.1 or higher).") (license license:gpl2))) (define-public r-mafdb-1kgenomes-phase1-hs37d5 (package (name "r-mafdb-1kgenomes-phase1-hs37d5") (version "3.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MafDb.1Kgenomes.phase1.hs37d5" version 'annotation)) (sha256 (base32 "0vsjik59qa36w402bcrd5z27wc9vyp4gl0ffcwskd9iwjqim0phi")))) (properties `((upstream-name . "MafDb.1Kgenomes.phase1.hs37d5"))) (build-system r-build-system) (propagated-inputs (list r-bsgenome