[PATCH] gnu: Add nanopolish.

  • Done
  • quality assurance status badge
Details
2 participants
  • pimi
  • Ricardo Wurmus
Owner
unassigned
Submitted by
pimi
Severity
normal

Debbugs page

pimi wrote 6 years ago
(address . guix-patches@gnu.org)(address . ricardo.wurmus@mdc-berlin.de)(name . pimi)(address . madalinionel.patrascu@mdc-berlin.de)
20181112205949.20289-1-madalinionel.patrascu@mdc-berlin.de
* gnu/packages/bioinformatics.scm (nanopolish): New variable.
---
gnu/packages/bioinformatics.scm | 73 +++++++++++++++++++++++++++++++++
1 file changed, 73 insertions(+)

Toggle diff (83 lines)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index bf49f4e1d..fa1a91a22 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -14282,3 +14282,76 @@ both read length (longer is better) and read identity (higher is better) when
choosing which reads pass the filter.")
(license (list license:gpl3 ;filtlong
license:asl2.0))))) ;histogram.py
+
+(define-public nanopolish
+ ;; The recommended way to install is to clone the git repository
+ ;; https://github.com/jts/nanopolish#installing-a-particular-release
+ ;; also, the differences between release and current version seems to be significative
+ (let ((commit "50e8b5cc62f9b46f5445f5c5e8c5ab7263ea6d9d")
+ (revision "1"))
+ (package
+ (name "nanopolish")
+ (version (git-version "0.10.2" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jts/nanopolish.git")
+ (commit commit)
+ (recursive? #t)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "09j5gz57yr9i34a27vbl72i4g8syv2zzgmsfyjq02yshmnrvkjs6"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags
+ `("HDF5=noinstall" "EIGEN=noinstall" "HTS=noinstall" "CC=gcc")
+ #:tests? #f ; no check target
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'find-eigen
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CPATH"
+ (string-append (assoc-ref inputs "eigen") "/include/eigen3"))
+ #t))
+ (delete 'configure)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (scripts (string-append out "/share/nanopolish/scripts")))
+
+ (install-file "nanopolish" bin)
+ (for-each (lambda (file) (install-file file scripts))
+ (find-files "scripts" ".*"))
+ #t)))
+ (add-after 'install 'wrap-programs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (for-each (lambda (file)
+ (wrap-program file `("PYTHONPATH" ":" prefix (,path))))
+ (find-files "/share/nanopolish/scripts" "\\.py"))
+ (for-each (lambda (file)
+ (wrap-program file `("PERL5LIB" ":" prefix (,path))))
+ (find-files "/share/nanopolish/scripts" "\\.pl"))
+ #t)))))
+ (inputs
+ `(("eigen" ,eigen)
+ ("hdf5" ,hdf5)
+ ("htslib" ,htslib)
+ ("perl" ,perl)
+ ("python" ,python)
+ ("python-biopython" ,python-biopython)
+ ("python-numpy" ,python-numpy)
+ ("python-pysam" ,python-pysam)
+ ("python-scikit-learn" , python-scikit-learn)
+ ("python-scipy" ,python-scipy)
+ ("zlib" ,zlib)))
+ (home-page "https://github.com/jts/nanopolish")
+ (synopsis "Signal-level analysis of Oxford Nanopore sequencing data")
+ (description
+ "This package analyses the Oxford Nanopore sequencing data at signal-level.
+Nanopolish can calculate an improved consensus sequence for a draft genome
+assembly, detect base modifications, call SNPs (Single nucleotide polymorphisms)
+and indels with respect to a reference genome and more.")
+ ;; for auxiliary scripts is not mentioned any license
+ (license license:expat))))
--
2.17.1
Ricardo Wurmus wrote 6 years ago
(name . pimi)(address . madalinionel.patrascu@mdc-berlin.de)(address . 33357-done@debbugs.gnu.org)
87in0yt4mp.fsf@mdc-berlin.de
Hi,

Toggle quote (2 lines)
> * gnu/packages/bioinformatics.scm (nanopolish): New variable.

Thanks! I applied it to “master” with minor changes with commit
30f0d21b4.

--
Ricardo
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 33357@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 33357
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help