From 4052310e91456530f0b5362f5895255e36d53055 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 11 Nov 2021 13:49:12 +0000 Subject: gnu: Add biosoup. * gnu/packages/bioinformatics.scm (biosoup): New variable. --- gnu/packages/bioinformatics.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a731b9af06..8139ce43de 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1323,6 +1323,37 @@ relying on a complex dependency tree.") (define-public python2-fastalite (package-with-python2 python-fastalite)) +(define-public biosoup + (package + (name "biosoup") + (version "0.10.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rvaser/biosoup") + ;; Corresponds to version 0.10.0 + (commit "38181f09854ff42cbd9632200a2ec9fb37a4b7b6"))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02hvyka703zagx0nvv2yx3dkc748zc8g6qbrpya7r8kfkcl7y8hw")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "./bin/biosoup_test"))))))) + (native-inputs + `(("googletest" ,googletest))) + (home-page "https://github.com/rvaser/biosoup") + (synopsis "C++ support library for bioinformatics tools") + (description "Biosoup is a C++ collection of header-only data structures +used for storage and logging in bioinformatics tools.") + (license license:expat))) + (define-public ciri-long (package (name "ciri-long") -- cgit v1.2.3 From b8c9f061e100949f081157eb4c9a7a2299ce9187 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 11 Nov 2021 13:53:59 +0000 Subject: gnu: Add bioparser. * gnu/packages/bioinformatics.scm (bioparser): New variable. --- gnu/packages/bioinformatics.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 8139ce43de..ae3cf01c87 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1354,6 +1354,42 @@ relying on a complex dependency tree.") used for storage and logging in bioinformatics tools.") (license license:expat))) +(define-public bioparser + (package + (name "bioparser") + (version "3.0.13") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rvaser/bioparser") + ;; Corresponds to tag 3.0.13 + (commit "13341e6e0855c6b358ffcea6dad216e1009e1287"))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0c5p2dl8jb12ci9f427jzrmmm9cgvc1k4fxsn2ggkfsin6r1r82i")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "./bin/bioparser_test"))))))) + (inputs + `(("biosoup" ,biosoup))) + (propagated-inputs + `(("zlib" ,zlib))) + (native-inputs + `(("googletest" ,googletest))) + (home-page "https://github.com/rvaser/bioparser") + (synopsis "C++ library for parsing several formats in bioinformatics") + (description "Bioparser is a C++ header only parsing library for several +bioinformatics formats (FASTA/Q, MHAP/PAF/SAM), with support for zlib +compressed files.") + (license license:expat))) + (define-public ciri-long (package (name "ciri-long") -- cgit v1.2.3 From 6be47c5bc56b4a2d3183a58d1c9fb2e0846c7f0f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 11 Nov 2021 14:44:28 +0000 Subject: gnu: Add circtools. * gnu/packages/bioinformatics.scm (circtools): New variable. --- gnu/packages/bioinformatics.scm | 57 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ae3cf01c87..13bd7b5997 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -48,6 +48,7 @@ #:use-module (guix hg-download) #:use-module (guix build-system ant) #:use-module (guix build-system gnu) + #:use-module (guix build-system cargo) #:use-module (guix build-system cmake) #:use-module (guix build-system go) #:use-module (guix build-system haskell) @@ -77,6 +78,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages cpio) #:use-module (gnu packages cran) + #:use-module (gnu packages crates-io) #:use-module (gnu packages curl) #:use-module (gnu packages documentation) #:use-module (gnu packages databases) @@ -1390,6 +1392,61 @@ bioinformatics formats (FASTA/Q, MHAP/PAF/SAM), with support for zlib compressed files.") (license license:expat))) +(define-public circtools + (package + (name "circtools") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Kevinzjy/circtools") + ;; Corresponds to tag v1.0.0 + (commit "79380de59013601021ca3b1352d6f64d2fb89646") + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0wg1s927g32k25j967kfr8l30nmr4c0p4zvy5igvy7cs6chd60lh")))) + (build-system cargo-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-writable + (lambda _ + (for-each make-file-writable (find-files ".")))) + (add-after 'unpack 'prepare-spoa-dependencies + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "vendor/spoa/CMakeLists.txt" + (("find_package\\(bioparser 3.0.13 QUIET\\)") + "find_package(bioparser 3.0.13 CONFIG)") + (("find_package\\(biosoup 0.10.0 QUIET\\)") + "find_package(biosoup 0.10.0 CONFIG)") + (("GTest_FOUND") "TRUE"))))) + #:cargo-inputs + (("rust-anyhow" ,rust-anyhow-1) + ("rust-bio" ,rust-bio-0.33) + ("rust-chrono" ,rust-chrono-0.4) + ("rust-docopt" ,rust-docopt-1) + ("rust-flate2" ,rust-flate2-1) + ("rust-indicatif" ,rust-indicatif-0.15) + ("rust-libc" ,rust-libc-0.2) + ("rust-serde" ,rust-serde-1) + ("rust-seq-io" ,rust-seq-io-0.3)))) + (inputs + `(("bioparser" ,bioparser) + ("biosoup" ,biosoup))) + (native-inputs + `(("cmake" ,cmake) + ("pkg-config" ,pkg-config) + ("googletest" ,googletest))) + (home-page "https://github.com/Kevinzjy/circtools") + (synopsis "Accelerating functions in CIRI toolkit") + (description "This package provides accelerated functions for the CIRI +toolkit. It also provides the @code{ccs} executable to scan for circular +consensus sequences.") + (license license:expat))) + (define-public ciri-long (package (name "ciri-long") -- cgit v1.2.3 From c4e5fabb6ef1a07967960f9b585847503cca0613 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 11 Nov 2021 14:44:37 +0000 Subject: gnu: ciri-long: Fix reference to ccs. * gnu/packages/bioinformatics.scm (ciri-long)[arguments]: Add build phase "fix-reference-to-ccs". [inputs]: Add circtools. --- gnu/packages/bioinformatics.scm | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 13bd7b5997..3455029ed1 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1475,9 +1475,20 @@ consensus sequences.") (add-before 'build 'build-libssw (lambda _ (with-directory-excursion "libs/striped_smith_waterman" - (invoke "make" "libssw.so"))))))) - (inputs - `(("python-biopython" ,python-biopython) + (invoke "make" "libssw.so")))) + (add-before 'build 'fix-reference-to-ccs + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "CIRI_long/pipeline.py" + (("'ccs -i") + (string-append "'" + (assoc-ref inputs "circtools") "/bin/ccs" + " -i"))) + ;; yuck! + (substitute* "CIRI_long/main.py" + (("os.chmod\\(lib_path.*") ""))))))) + (inputs + `(("circtools" ,circtools) + ("python-biopython" ,python-biopython) ("python-bwapy" ,python-bwapy) ("python-cython" ,python-cython) ("python-levenshtein" ,python-levenshtein) -- cgit v1.2.3 From a0fc9e38fa7dfa11a19f608e2d1da37495938035 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 11 Nov 2021 15:04:47 +0000 Subject: gnu: ciri-long: Move Cython to native inputs. * gnu/packages/bioinformatics.scm (ciri-long)[inputs]: Move python-cython from here... [native-inputs]: ...to here. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3455029ed1..c5a1215442 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1490,7 +1490,6 @@ consensus sequences.") `(("circtools" ,circtools) ("python-biopython" ,python-biopython) ("python-bwapy" ,python-bwapy) - ("python-cython" ,python-cython) ("python-levenshtein" ,python-levenshtein) ("python-mappy" ,python-mappy) ("python-numpy" ,python-numpy) @@ -1500,7 +1499,8 @@ consensus sequences.") ("python-scikit-learn" ,python-scikit-learn) ("python-scipy" ,python-scipy))) (native-inputs - `(("python-nose" ,python-nose) + `(("python-cython" ,python-cython) + ("python-nose" ,python-nose) ("python-setuptools" ,python-setuptools))) (home-page "https://ciri-cookbook.readthedocs.io/") (synopsis "Circular RNA identification for Nanopore sequencing") -- cgit v1.2.3 From 616bcc9c0b71de1cae271fa37ef8829872c92773 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 15 Nov 2021 15:12:50 +0000 Subject: gnu: python-scanpy: Run tests conditionally. * gnu/packages/bioinformatics.scm (python-scanpy)[arguments]: Respect TESTS? argument. --- gnu/packages/bioinformatics.scm | 81 +++++++++++++++++++++-------------------- 1 file changed, 41 insertions(+), 40 deletions(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index c5a1215442..2ffe7f7f9f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -11996,47 +11996,48 @@ implementation differs in these ways: wheel (string-append "--prefix=" out))) (find-files "dist" "\\.whl$"))))) (replace 'check - (lambda* (#:key inputs #:allow-other-keys) - ;; These tests require Internet access. - (delete-file-recursively "scanpy/tests/notebooks") - (delete-file "scanpy/tests/test_clustering.py") - (delete-file "scanpy/tests/test_datasets.py") - (delete-file "scanpy/tests/test_score_genes.py") - (delete-file "scanpy/tests/test_highly_variable_genes.py") - - ;; TODO: I can't get the plotting tests to work, even with Xvfb. - (delete-file "scanpy/tests/test_embedding_plots.py") - (delete-file "scanpy/tests/test_preprocessing.py") - (delete-file "scanpy/tests/test_read_10x.py") - - ;; TODO: these fail with TypingError and "Use of unsupported - ;; NumPy function 'numpy.split'". - (delete-file "scanpy/tests/test_metrics.py") - - ;; The following tests requires 'scanorama', which isn't - ;; packaged yet. - (delete-file "scanpy/tests/external/test_scanorama_integrate.py") + (lambda* (#:key tests? inputs #:allow-other-keys) + (when tests? + ;; These tests require Internet access. + (delete-file-recursively "scanpy/tests/notebooks") + (delete-file "scanpy/tests/test_clustering.py") + (delete-file "scanpy/tests/test_datasets.py") + (delete-file "scanpy/tests/test_score_genes.py") + (delete-file "scanpy/tests/test_highly_variable_genes.py") + + ;; TODO: I can't get the plotting tests to work, even with Xvfb. + (delete-file "scanpy/tests/test_embedding_plots.py") + (delete-file "scanpy/tests/test_preprocessing.py") + (delete-file "scanpy/tests/test_read_10x.py") + + ;; TODO: these fail with TypingError and "Use of unsupported + ;; NumPy function 'numpy.split'". + (delete-file "scanpy/tests/test_metrics.py") + + ;; The following tests requires 'scanorama', which isn't + ;; packaged yet. + (delete-file "scanpy/tests/external/test_scanorama_integrate.py") - (setenv "PYTHONPATH" - (string-append (getcwd) ":" - (assoc-ref inputs "python-anndata:source") ":" - (getenv "PYTHONPATH"))) - (invoke "pytest" "-vv" - "-k" - ;; Plot tests that fail. - (string-append "not test_dotplot_matrixplot_stacked_violin" - " and not test_violin_without_raw" - " and not test_correlation" - " and not test_scatterplots" - " and not test_scatter_embedding_add_outline_vmin_vmax_norm" - " and not test_paga" - " and not test_paga_compare" - - ;; These try to connect to the network - " and not test_plot_rank_genes_groups_gene_symbols" - " and not test_pca_chunked" - " and not test_pca_sparse" - " and not test_pca_reproducible"))))))) + (setenv "PYTHONPATH" + (string-append (getcwd) ":" + (assoc-ref inputs "python-anndata:source") ":" + (getenv "PYTHONPATH"))) + (invoke "pytest" "-vv" + "-k" + ;; Plot tests that fail. + (string-append "not test_dotplot_matrixplot_stacked_violin" + " and not test_violin_without_raw" + " and not test_correlation" + " and not test_scatterplots" + " and not test_scatter_embedding_add_outline_vmin_vmax_norm" + " and not test_paga" + " and not test_paga_compare" + + ;; These try to connect to the network + " and not test_plot_rank_genes_groups_gene_symbols" + " and not test_pca_chunked" + " and not test_pca_sparse" + " and not test_pca_reproducible")))))))) (propagated-inputs `(("python-anndata" ,python-anndata) ("python-h5py" ,python-h5py) -- cgit v1.2.3 From 0a9a00b34c3bdbc07dce720b8568fd61a3f92cac Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 23 Oct 2021 15:30:04 +0200 Subject: gnu: pplacer: Fix build. * gnu/packages/bioinformatics.scm (pplacer): Add missing input. Signed-off-by: Efraim Flashner --- gnu/packages/bioinformatics.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 2ffe7f7f9f..6c9c1af33d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -143,6 +143,7 @@ #:use-module (gnu packages serialization) #:use-module (gnu packages shells) #:use-module (gnu packages sphinx) + #:use-module (gnu packages sqlite) #:use-module (gnu packages statistics) #:use-module (gnu packages swig) #:use-module (gnu packages tbb) @@ -13676,7 +13677,8 @@ let before_space s = ("ocaml-sqlite3" ,(package-with-ocaml4.07 ocaml-sqlite3)) ("ocaml-xmlm" ,(package-with-ocaml4.07 ocaml-xmlm)) ("ocaml-mcl" ,(package-with-ocaml4.07 ocaml-mcl)) - ("ocaml-gsl" ,ocaml4.07-gsl-1))) + ("ocaml-gsl" ,ocaml4.07-gsl-1) + ("sqlite:static" ,sqlite "static"))) (native-inputs `(("cddlib-src" ,(package-source cddlib)) ("ocamlbuild" ,(package-with-ocaml4.07 ocamlbuild)) -- cgit v1.2.3