summaryrefslogtreecommitdiff
path: root/gnu/packages/bioinformatics.scm
diff options
context:
space:
mode:
authorMarius Bakke <[email protected]>2022-08-11 23:36:10 +0200
committerMarius Bakke <[email protected]>2022-08-11 23:36:10 +0200
commit77eb3008e350c069e0ae8df6a91bf0ebdcfc2ac0 (patch)
treeb899e65aa79099be3f4b27dfcd565bb143681211 /gnu/packages/bioinformatics.scm
parentf7e8be231806a904e6817e8ab3404b32f2511db2 (diff)
parentb50eaa67642ebc25e9c896f2e700c08610e0a5da (diff)
Merge branch 'staging' into core-updates
Diffstat (limited to 'gnu/packages/bioinformatics.scm')
-rw-r--r--gnu/packages/bioinformatics.scm295
1 files changed, 284 insertions, 11 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index a74002334b..054776da5b 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -11,7 +11,7 @@
;;; Copyright © 2017, 2021, 2022 Arun Isaac <[email protected]>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <[email protected]>
;;; Copyright © 2018 Gábor Boskovits <[email protected]>
-;;; Copyright © 2018, 2019, 2020, 2021 Mădălin Ionel Patrașcu <[email protected]>
+;;; Copyright © 2018, 2019, 2020, 2021, 2022 Mădălin Ionel Patrașcu <[email protected]>
;;; Copyright © 2019, 2020, 2021 Maxim Cournoyer <[email protected]>
;;; Copyright © 2019 Brian Leung <[email protected]>
;;; Copyright © 2019 Brett Gilio <[email protected]>
@@ -6264,7 +6264,7 @@ subsequent visualization, annotation and storage of results.")
(define-public plink-ng
(package (inherit plink)
(name "plink-ng")
- (version "2.00a3-20220315")
+ (version "2.00a3.3")
(source
(origin
(method git-fetch)
@@ -6273,12 +6273,14 @@ subsequent visualization, annotation and storage of results.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "19inr47jwddkjb9kfb14yxc7xb16c73lkhgxj9sncb0fsiskb4x8"))))
+ (base32 "0m8wkyvbgvcr5kzc284w8fbhpxwglh2c1xq0yc3yv00a53gs7rv0"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
,#~(list "BLASFLAGS=-llapack -lopenblas"
- "CFLAGS=-Wall -O2 -DDYNAMIC_ZLIB=1"
+ (string-append "CFLAGS=-Wall -O2 -DDYNAMIC_ZLIB=1"
+ " -I" (search-input-directory
+ %build-inputs "include/simde"))
"ZLIB=-lz"
"BIN=plink prettify"
(string-append "CC=" #$(cc-for-target))
@@ -6305,7 +6307,7 @@ subsequent visualization, annotation and storage of results.")
(inputs
(list lapack openblas zlib))
(native-inputs
- (list diffutils plink python)) ; for tests
+ (list diffutils plink python simde)) ; for tests
(home-page "https://www.cog-genomics.org/plink/")
(license license:gpl3+)))
@@ -7523,6 +7525,41 @@ of transcriptional heterogeneity among single cells.")
;; See https://github.com/hms-dbmi/scde/issues/38
(license license:gpl2)))
+(define-public r-millefy
+ (package
+ (name "r-millefy")
+ (version "0.1.9-beta")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/yuifu/millefy")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0z2y0x99f761pxvg6n37cmnyrnj699jhjk43pvk05sa86iykgizl"))))
+ (properties `((upstream-name . "millefy")))
+ (build-system r-build-system)
+ (propagated-inputs
+ (list r-data-table
+ r-destiny
+ r-dplyr
+ r-genomicranges
+ r-iranges
+ r-magrittr
+ r-rsamtools
+ r-rtracklayer
+ r-tidyr))
+ (home-page "https://github.com/yuifu/millefy")
+ (synopsis "Make millefy plot with single-cell RNA-seq data")
+ (description "@code{Millefy} is a tool for visualizing read coverage of
+@dfn{scRNA-seq}(single-cell RNA sequencing) datasets in genomic contexts. By
+dynamically and automatically reorder single cells based on locus-specific
+pseudo time, @code{Millefy} highlights cell-to-cell heterogeneity in read coverage
+of scRNA-seq data.")
+ (license license:expat)))
+
(define-public r-misha
(package
(name "r-misha")
@@ -9031,6 +9068,91 @@ remove biased methylation positions for RRBS sequence files.")
programs for inferring phylogenies (evolutionary trees).")
(license license:bsd-2)))
+(define-public phyml
+ (package
+ (name "phyml")
+ (version "3.3.20220408")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/stephaneguindon/phyml")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "03hdqmnsgnzkcrp9r9ajdfkj33jgq4b86kra8ssjlrph65y344sa"))
+ (snippet
+ '(delete-file "doc/phyml-manual.pdf"))))
+ (build-system gnu-build-system)
+ (supported-systems '("x86_64-linux"))
+ (arguments
+ (let ((default-flags (list "--disable-native")))
+ `(#:phases
+ (let ((build (lambda (what)
+ (lambda args
+ (apply (assoc-ref %standard-phases 'configure)
+ (append args
+ (list #:configure-flags
+ (cons (format #false "--enable-~a" what)
+ '() #;,default-flags))))
+ (apply (assoc-ref %standard-phases 'build) args)
+ (apply (assoc-ref %standard-phases 'install) args)))))
+ (modify-phases %standard-phases
+ ;; We cannot use --disable-native; see
+ ;; https://github.com/stephaneguindon/phyml/issues/173 Instead we
+ ;; patch the code to at least get rid of -march=native.
+ (add-after 'unpack 'remove-march-native
+ (lambda _
+ (substitute* "configure.ac"
+ (("DEFAULT_VECTOR_FLAG=\"-march=native\"")
+ "DEFAULT_VECTOR_FLAG=\"-march=athlon64-sse3\"\n"))))
+ (add-after 'build 'build-manual
+ (lambda _
+ (with-directory-excursion "doc"
+ (invoke "make" "phyml-manual.pdf"))))
+ (add-after 'build-manual 'install-manual
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion "doc"
+ (install-file "phyml-manual.pdf"
+ (string-append (assoc-ref outputs "out")
+ "/share/doc/phyml")))))
+ (add-after 'install 'build-phyml-mpi
+ (build "phyml-mpi"))
+ (add-after 'build-phyml-mpi 'build-rf
+ (build "rf"))
+ (add-after 'build-rf 'build-phyrex
+ (build "phyrex")))))))
+ (native-inputs
+ (list automake
+ autoconf
+ openmpi
+ (texlive-updmap.cfg (list texlive-amsfonts
+ texlive-caption
+ texlive-cite
+ texlive-fonts-ec
+ texlive-grfext
+ texlive-hyperref
+ texlive-latex-fancyvrb
+ texlive-latex-graphics
+ texlive-latex-psfrag
+ texlive-xcolor))))
+ (home-page "https://github.com/stephaneguindon/phyml")
+ (synopsis "Programs for working on SAM/BAM files")
+ (description
+ "@code{PhyML} is a software package that uses modern statistical
+approaches to analyse alignments of nucleotide or amino acid sequences in a
+phylogenetic framework. The main tool in this package builds phylogenies
+under the maximum likelihood criterion. It implements a large number of
+substitution models coupled with efficient options to search the space of
+phylogenetic tree topologies. code{PhyREX} fits the
+spatial-Lambda-Fleming-Viot model to geo-referenced genetic data. This model
+is similar to the structured coalescent but assumes that individuals are
+distributed along a spatial continuum rather than discrete demes.
+@code{PhyREX} can be used to estimate population densities and rates of
+dispersal. Its output can be processed by treeannotator (from the
+@code{BEAST} package) as well as @code{SPREAD}.")
+ (license license:gpl3)))
+
(define-public imp
(package
(name "imp")
@@ -9895,7 +10017,7 @@ The following file formats are supported:
(inputs
`(("boost" ,boost)
("bzip2" ,bzip2)
- ("cereal" ,cereal)
+ ("cereal" ,cereal-1.3.0)
("curl" ,curl)
("eigen" ,eigen)
("jemalloc" ,jemalloc)
@@ -11262,7 +11384,7 @@ Thus the per-base error rate is similar to the raw input reads.")
(install-file "Bandage" (string-append out "/bin"))
#t))))))
(inputs
- (list qtbase-5 qtsvg))
+ (list qtbase-5 qtsvg-5))
(native-inputs
(list imagemagick))
(home-page "https://rrwick.github.io/Bandage/")
@@ -11413,6 +11535,123 @@ including:
dynamic cellular processes at single-cell resolution.")
(license license:expat))))
+;; Needed for r-liana
+(define-public r-omnipathr/devel
+ (let ((commit "679bb79e319af246a16968d27d64d8d6937a331a")
+ (revision "1"))
+ (package
+ (name "r-omnipathr")
+ (version (git-version "3.5.5" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/saezlab/omnipathr")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "10h6lyapyx4ik8r4kx5z2dly46jlf2v57caq4g6i0hzifyz2vgjq"))))
+ (properties `((upstream-name . "OmnipathR")))
+ (build-system r-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'set-HOME
+ (lambda _ (setenv "HOME" "/tmp"))))))
+ (propagated-inputs
+ (list r-checkmate
+ r-crayon
+ r-curl
+ r-digest
+ r-dplyr
+ r-httr
+ r-igraph
+ r-jsonlite
+ r-later
+ r-logger
+ r-magrittr
+ r-progress
+ r-purrr
+ r-rappdirs
+ r-readr
+ r-readxl
+ r-rlang
+ r-rvest
+ r-stringr
+ r-tibble
+ r-tidyr
+ r-tidyselect
+ r-withr
+ r-xml2
+ r-yaml))
+ (native-inputs (list r-knitr))
+ (home-page "https://github.com/saezlab/omnipathr")
+ (synopsis "OmniPath web service client and more")
+ (description
+ "This package provides a client for the OmniPath web service and many
+other resources. It also includes functions to transform and pretty print
+some of the downloaded data, functions to access a number of other resources
+such as BioPlex, ConsensusPathDB, EVEX, Gene Ontology, Guide to
+Pharmacology (IUPHAR/BPS), Harmonizome, HTRIdb, Human Phenotype Ontology,
+InWeb InBioMap, KEGG Pathway, Pathway Commons, Ramilowski et al. 2015,
+RegNetwork, ReMap, TF census, TRRUST and Vinayagam et al. 2011. Furthermore,
+OmnipathR features a close integration with the NicheNet method for ligand
+activity prediction from transcriptomics data, and its R implementation
+@code{nichenetr}.")
+ (license license:expat))))
+
+(define-public r-liana
+ (let ((commit "efb1249af46f576d1d620956053cfa93b2cee961")
+ (revision "1"))
+ (package
+ (name "r-liana")
+ (version (git-version "0.1.5" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/saezlab/liana/")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0z645k26kqrfj5f1s412vwclw1q47h1zfxxrh9ijr30pxhpv6cv0"))))
+ (properties `((upstream-name . "liana")))
+ (build-system r-build-system)
+ (arguments
+ (list
+ #:phases
+ `(modify-phases %standard-phases
+ ;; This is needed to find ~/.config/OmnipathR/omnipathr.yml
+ (add-after 'unpack 'set-HOME
+ (lambda _ (setenv "HOME" "/tmp"))))))
+ (propagated-inputs
+ (list r-complexheatmap
+ r-dplyr
+ r-ggplot2
+ r-magrittr
+ r-omnipathr/devel
+ r-purrr
+ r-rcolorbrewer
+ r-readr
+ r-reticulate
+ r-rlang
+ r-scater
+ r-scran
+ r-scuttle
+ r-seuratobject
+ r-singlecellexperiment
+ r-stringr
+ r-tibble
+ r-tidyr
+ r-tidyselect))
+ (native-inputs (list r-knitr))
+ (home-page "https://github.com/saezlab/liana/")
+ (synopsis "LIANA: a LIgand-receptor ANalysis frAmework")
+ (description
+ "LIANA provides a number of methods and resource for ligand-receptor
+interaction inference from scRNA-seq data.")
+ (license license:gpl3))))
+
(define-public r-circus
(package
(name "r-circus")
@@ -11842,19 +12081,23 @@ million cells.")
(define-public python-bbknn
(package
(name "python-bbknn")
- (version "1.3.6")
+ (version "1.5.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "bbknn" version))
(sha256
(base32
- "1jbsh01f57zj4bhvjr3jh4532zznqd6nccmgrl3qi9gnhkf7c4y0"))))
+ "0q11xdmjr2kf6f179a6kjizj3lllfrq743gslgw67qyzimvrrnhn"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; no tests are included
#:phases
(modify-phases %standard-phases
+ ;; Numba needs a writable dir to cache functions.
+ (add-before 'check 'set-numba-cache-dir
+ (lambda _
+ (setenv "NUMBA_CACHE_DIR" "/tmp")))
(add-after 'unpack 'do-not-fail-to-find-sklearn
(lambda _
;; XXX: I have no idea why it cannot seem to find sklearn.
@@ -11864,6 +12107,7 @@ million cells.")
(list python-annoy
python-cython
python-numpy
+ python-pandas
python-scikit-learn
python-scipy
python-umap-learn))
@@ -12060,14 +12304,14 @@ allowing the insertion of arbitrary types into the tree.")
(define-public python-intervaltree
(package
(name "python-intervaltree")
- (version "3.0.2")
+ (version "3.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "intervaltree" version))
(sha256
(base32
- "0wz234g6irlm4hivs2qzmnywk0ss06ckagwh15nflkyb3p462kyb"))))
+ "0bcm6c6r4ck9nfj9xwz4rm2swc5lrjvmw3lyl6rgj639jf41nawh"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -12433,6 +12677,35 @@ cooler). Both @code{hic} and @code{cool} files describe Hi-C contact
matrices.")
(license license:expat)))
+(define-public python-scanorama
+ (package
+ (name "python-scanorama")
+ (version "1.7.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "scanorama" version))
+ (sha256
+ (base32
+ "0il7bf4c7vli2dm2jx7dskh3ymgv8nmk0y90jzgfrnqjzh250x5w"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-annoy
+ python-fbpca
+ python-geosketch
+ python-intervaltree
+ python-matplotlib
+ python-numpy
+ python-scikit-learn
+ python-scipy))
+ (home-page "https://github.com/brianhie/scanorama")
+ (synopsis "Panoramic stitching of heterogeneous single cell transcriptomic data")
+ (description
+ "Scanorama enables batch-correction and integration of heterogeneous
+scRNA-seq datasets, which is described in the paper \"Efficient integration of
+heterogeneous single-cell transcriptomes using Scanorama\" by Brian Hie, Bryan
+Bryson, and Bonnie Berger.")
+ (license license:expat)))
+
(define-public r-pore
(package
(name "r-pore")