summaryrefslogtreecommitdiff
path: root/gnu/packages/bioinformatics.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/bioinformatics.scm')
-rw-r--r--gnu/packages/bioinformatics.scm73
1 files changed, 41 insertions, 32 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 5724a7137e..6caeec80f7 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -4878,6 +4878,18 @@ data. It also provides the @command{bgzip}, @command{htsfile}, and
(native-inputs
`(("perl" ,perl)))))
+(define htslib-for-stringtie
+ (package
+ (inherit htslib)
+ (source (origin
+ (inherit (package-source htslib))
+ (patches
+ (search-patches "htslib-for-stringtie.patch"))))
+ (arguments
+ `(#:configure-flags '("--with-libdeflate")))
+ (inputs
+ (list bzip2 libdeflate openssl))))
+
(define-public idr
(package
(name "idr")
@@ -7384,22 +7396,25 @@ against local background noises.")
(define-public stringtie
(package
(name "stringtie")
- (version "1.2.1")
+ (version "2.2.0")
(source (origin
(method url-fetch)
(uri (string-append "http://ccb.jhu.edu/software/stringtie/dl/"
"stringtie-" version ".tar.gz"))
(sha256
(base32
- "1cqllsc1maq4kh92isi8yadgzbmnf042hlnalpk3y59aph1z3bfz"))
+ "08w3ish4y9kf9acp7k38iwi8ixa6j51m6qyf0vvfj7yz78a3ai3x"))
+ ;; This package bundles an annoying amount of third party source
+ ;; code.
(modules '((guix build utils)))
(snippet
- '(begin
- (delete-file-recursively "samtools-0.1.18")
- #t))))
+ '(delete-file-recursively "htslib"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;no test suite
+ #:make-flags '("LIBDEFLATE=-ldeflate"
+ "LIBBZ2=-lbz2"
+ "LIBLZMA=-llzma")
#:phases
(modify-phases %standard-phases
;; no configure script
@@ -7407,27 +7422,14 @@ against local background noises.")
(add-before 'build 'use-system-samtools
(lambda _
(substitute* "Makefile"
- (("stringtie: \\$\\{BAM\\}/libbam\\.a")
- "stringtie: "))
- (substitute* '("gclib/GBam.h"
- "gclib/GBam.cpp")
- (("#include \"(bam|sam|kstring).h\"" _ header)
- (string-append "#include <samtools/" header ".h>")))
- #t))
- (add-after 'unpack 'remove-duplicate-typedef
- (lambda _
- ;; This typedef conflicts with the typedef in
- ;; glibc-2.25/include/bits/types.h
- (substitute* "gclib/GThreads.h"
- (("typedef long long __intmax_t;") ""))
- #t))
+ ((" -lm") " -lm -lhts")
+ ((" \\$\\{HTSLIB\\}/libhts\\.a") " "))))
(replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((bin (string-append (assoc-ref outputs "out") "/bin/")))
- (install-file "stringtie" bin)
- #t))))))
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out") "/bin/")))
+ (install-file "stringtie" bin)))))))
(inputs
- (list samtools-0.1 zlib))
+ (list bzip2 htslib-for-stringtie libdeflate zlib))
(home-page "http://ccb.jhu.edu/software/stringtie/")
(synopsis "Transcript assembly and quantification for RNA-Seq data")
(description
@@ -7440,7 +7442,7 @@ other transcript assemblers, but also alignments of longer sequences that have
been assembled from those reads. To identify differentially expressed genes
between experiments, StringTie's output can be processed either by the
Cuffdiff or Ballgown programs.")
- (license license:artistic2.0)))
+ (license license:expat)))
(define-public taxtastic
(package
@@ -8993,7 +8995,7 @@ communication networks from scRNA-seq data.")
(define-public sambamba
(package
(name "sambamba")
- (version "0.8.0")
+ (version "0.8.2")
(source
(origin
(method git-fetch)
@@ -9003,7 +9005,7 @@ communication networks from scRNA-seq data.")
(file-name (git-file-name name version))
(sha256
(base32
- "07dznzl6m8k7sw84jxw2kx6i3ymrapbmcmyh0fxz8wrybhw8fmwc"))))
+ "1zdkd1md5wk4la71p82pbclqqcm55abk23fk087da6186i1bsihl"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there is no test target
@@ -9011,11 +9013,12 @@ communication networks from scRNA-seq data.")
#:phases
(modify-phases %standard-phases
(delete 'configure)
- (add-after 'unpack 'fix-ldc-version
- (lambda _
+ (add-after 'unpack 'prepare-build-tools
+ (lambda* (#:key inputs #:allow-other-keys)
(substitute* "Makefile"
- ;; We use ldc2 instead of ldmd2 to compile sambamba.
- (("\\$\\(shell which ldmd2\\)") (which "ldc2")))))
+ (("\\$\\(shell which ldmd2\\)") (which "ldmd2")))
+ (setenv "CC" "gcc")
+ (setenv "D_LD" (which "ld.gold"))))
(add-after 'unpack 'unbundle-prerequisites
(lambda _
(substitute* "Makefile"
@@ -9028,7 +9031,13 @@ communication networks from scRNA-seq data.")
(copy-file (string-append "bin/sambamba-" ,version)
(string-append bin "/sambamba"))))))))
(native-inputs
- (list python))
+ `(("ld-gold-wrapper"
+ ;; Importing (gnu packages commencement) would introduce a cycle.
+ ,(module-ref (resolve-interface
+ '(gnu packages commencement))
+ 'ld-gold-wrapper))
+ ("binutils-gold" ,binutils-gold)
+ ("python" ,python)))
(inputs
(list ldc lz4 zlib))
(home-page "https://github.com/biod/sambamba")