diff options
author | Navid Afkhami <navid.afkhami@mdc-berlin.de> | 2024-11-13 17:40:32 +0000 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2024-11-13 19:08:39 +0100 |
commit | bf96496f177c961260523ada850d10a057f9032a (patch) | |
tree | e8b3cef73fcc334eef0b0bd15e0f21d14b0c9960 | |
parent | 07cd046c209f192032b425d2ee44f6025bff63a1 (diff) | |
download | guix-bf96496f177c961260523ada850d10a057f9032a.tar.gz |
gnu: Add python-pybio.
* gnu/packages/bioinformatics.scm (python-pybio): New variable. Change-Id: I8f5c9cb6c7bb03cbc95386e67d46b1bdd78e01f2 Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
-rw-r--r-- | gnu/packages/bioinformatics.scm | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 599d22c51e..f84306b6b9 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3223,6 +3223,61 @@ Python.") ;; licensed lgpl2.1+ (license (list license:expat license:lgpl2.1+)))) +(define-public python-pybio + (let ((commit "c91fddc483da535d5097364405d76ad9b1bde07f") + (revision "1")) + (package + (name "python-pybio") + (version (git-version "0.3.12" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/grexor/pybio") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0s3n1bqp25zf5pzfsj0x1kqr6i2a6iffpb8hkjwhyvjqrxf5d9rk")))) + (build-system pyproject-build-system) + (arguments + (list + #:tests? #false ;There are no automated tests + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'set-home + ;; A HOME directory is required when importing the module during + ;; the sanity check. + (lambda _ (setenv "HOME" "/tmp"))) + (add-after 'unpack 'adjust-requirements + (lambda _ + ;; bs4 is an alternative name for beautifulsoup4, only used to + ;; avoid name squatting on pypi. + (substitute* "setup.py" + (("bs4") "beautifulsoup4")))) + (add-after 'unpack 'avoid-internet-while-building + (lambda _ + (setenv "GUIX_BUILD" "yes") + (substitute* "pybio/__init__.py" + (("^pybio.core.genomes.init\\(\\)" m) + (string-append m + "\ + if not os.getenv('GUIX_BUILD') else None")))))))) + (propagated-inputs + (list python-beautifulsoup4 python-numpy + python-psutil python-pysam python-requests)) + (native-inputs (list python-pytest)) + (home-page "https://github.com/grexor/pybio") + (synopsis "Basic genomics toolset") + (description + "This tool provides a Python framework to streamline genomics +operations. It offers a direct interface to Ensembl genome assemblies and +annotations, while also accommodating custom genomes via FASTA/GTF inputs. +The primary objective of pybio is to simplify genome management. It achieves +this by providing automatic download of Ensembl genome assemblies and +annotation, provides Python genomic feature search and sequence retrieval from +the managed genomes, STAR indexing and mapping and more.") + (license license:gpl3+)))) + (define-public python-ega-download-client (package (name "python-ega-download-client") |