Archived
1
0
Fork 0

gnu: nanopolish: Update to 0.14.0.

* gnu/packages/bioinformatics.scm (nanopolish): Update to 0.14.0.
[source]: Update snippet.
[arguments]: Use gexp; use cc-for-target; drop #T from build phases.
[inputs]: Add minimap2.
[native-inputs]: Add cmake-minimal.
This commit is contained in:
Ricardo Wurmus 2023-01-06 14:51:55 +01:00
parent 8ace894681
commit 24e5dbb57a
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -14358,37 +14358,36 @@ choosing which reads pass the filter.")
license:asl2.0))))) ;histogram.py license:asl2.0))))) ;histogram.py
(define-public nanopolish (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 seem to be
;; significant.
(let ((commit "6331dc4f15b9dfabb954ba3fae9d76b6c3ca6377")
(revision "1"))
(package (package
(name "nanopolish") (name "nanopolish")
(version (git-version "0.11.1" revision commit)) (version "0.14.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/jts/nanopolish") (url "https://github.com/jts/nanopolish")
(commit commit) (commit (string-append "v" version))
(recursive? #t))) (recursive? #t)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "15ikl3d37y49pwd7vx36xksgsqajhf24q7qqsnpl15dqqyy5qgbc")) (base32 "1ha9v5ia0qrwgav0956cfc7n64wjm9a9w3rvkg21g37a994yixg5"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin ;; TODO: unbundle slow5lib
(delete-file-recursively "htslib") '(begin (for-each delete-file-recursively
#t)))) '("htslib" "minimap2"))))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags (list
`("HDF5=noinstall" "EIGEN=noinstall" "HTS=noinstall" "CC=gcc") #:make-flags
#~(list "HDF5=noinstall"
"EIGEN=noinstall"
"HTS=noinstall"
"MINIMAP2=noinstall"
(string-append "CC=" #$(cc-for-target)))
#:tests? #f ; no check target #:tests? #f ; no check target
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'find-eigen (add-after 'unpack 'find-eigen
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(setenv "CPATH" (setenv "CPATH"
@ -14397,21 +14396,18 @@ choosing which reads pass the filter.")
":" (or (getenv "CPATH") ""))))) ":" (or (getenv "CPATH") "")))))
(delete 'configure) (delete 'configure)
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (let ((bin (string-append #$output "/bin"))
(bin (string-append out "/bin")) (scripts (string-append #$output "/share/nanopolish/scripts")))
(scripts (string-append out "/share/nanopolish/scripts")))
(install-file "nanopolish" bin) (install-file "nanopolish" bin)
(for-each (lambda (file) (install-file file scripts)) (for-each (lambda (file) (install-file file scripts))
(find-files "scripts" ".*")) (find-files "scripts" ".*")))))
#t)))
(add-after 'install 'wrap-programs (add-after 'install 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((pythonpath (getenv "GUIX_PYTHONPATH")) (let ((pythonpath (getenv "GUIX_PYTHONPATH"))
(perl5lib (getenv "PERL5LIB")) (perl5lib (getenv "PERL5LIB"))
(scripts (string-append (assoc-ref outputs "out") (scripts (string-append #$output "/share/nanopolish/scripts"))
"/share/nanopolish/scripts"))
(guile (search-input-file inputs "bin/guile"))) (guile (search-input-file inputs "bin/guile")))
(for-each (lambda (file) (for-each (lambda (file)
(wrap-program file `("GUIX_PYTHONPATH" ":" prefix (,pythonpath)))) (wrap-program file `("GUIX_PYTHONPATH" ":" prefix (,pythonpath))))
@ -14425,6 +14421,7 @@ choosing which reads pass the filter.")
("eigen" ,eigen) ("eigen" ,eigen)
("hdf5" ,hdf5) ("hdf5" ,hdf5)
("htslib" ,htslib) ("htslib" ,htslib)
("minimap2" ,minimap2)
("perl" ,perl) ("perl" ,perl)
("bioperl" ,bioperl-minimal) ("bioperl" ,bioperl-minimal)
("perl-getopt-long" ,perl-getopt-long) ("perl-getopt-long" ,perl-getopt-long)
@ -14435,6 +14432,7 @@ choosing which reads pass the filter.")
("python-scikit-learn" , python-scikit-learn) ("python-scikit-learn" , python-scikit-learn)
("python-scipy" ,python-scipy) ("python-scipy" ,python-scipy)
("zlib" ,zlib))) ("zlib" ,zlib)))
(native-inputs (list cmake-minimal))
(home-page "https://github.com/jts/nanopolish") (home-page "https://github.com/jts/nanopolish")
(synopsis "Signal-level analysis of Oxford Nanopore sequencing data") (synopsis "Signal-level analysis of Oxford Nanopore sequencing data")
(description (description
@ -14442,7 +14440,7 @@ choosing which reads pass the filter.")
Nanopolish can calculate an improved consensus sequence for a draft genome Nanopolish can calculate an improved consensus sequence for a draft genome
assembly, detect base modifications, call SNPs (Single nucleotide assembly, detect base modifications, call SNPs (Single nucleotide
polymorphisms) and indels with respect to a reference genome and more.") polymorphisms) and indels with respect to a reference genome and more.")
(license license:expat)))) (license license:expat)))
(define-public cnvkit (define-public cnvkit
(package (package