summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorRicardo Wurmus <ricardo.wurmus@mdc-berlin.de>2017-03-06 12:17:49 +0100
committerRicardo Wurmus <rekado@elephly.net>2017-03-10 10:13:59 +0100
commit5ded35d89d33a58294956c4a6c86cfb2fc7c7924 (patch)
tree9b288dc642d8f3bfdab45d1e4d1bfcf85c061c90 /gnu
parentfc1428d29522fbaf9d05b79fb3f9a059225f768e (diff)
downloadguix-5ded35d89d33a58294956c4a6c86cfb2fc7c7924.tar.gz
gnu: Add sambamba.
* gnu/packages/bioinformatics.scm (htslib-for-sambamba, sambamba): New
variables.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/bioinformatics.scm97
1 files changed, 97 insertions, 0 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 7bf39c6b03..b6f753ef0a 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -63,6 +63,7 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages java)
+  #:use-module (gnu packages ldc)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages logging)
   #:use-module (gnu packages machine-learning)
@@ -8574,3 +8575,99 @@ identifications while not exceeding a specified false discovery rate.  It also
 contains a number of utilities to explore the MS/MS results and assess missed
 and irregular enzymatic cleavages, mass measurement accuracy, etc.")
     (license license:artistic2.0)))
+
+(define htslib-for-sambamba
+  (let ((commit "2f3c3ea7b301f9b45737a793c0b2dcf0240e5ee5"))
+    (package
+      (inherit htslib)
+      (name "htslib-for-sambamba")
+      (version (string-append "1.3.1-1." (string-take commit 9)))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/lomereiter/htslib.git")
+               (commit commit)))
+         (file-name (string-append "htslib-" version "-checkout"))
+         (sha256
+          (base32
+           "0g38g8s3npr0gjm9fahlbhiskyfws9l5i0x1ml3rakzj7az5l9c9"))))
+      (arguments
+       (substitute-keyword-arguments (package-arguments htslib)
+         ((#:phases phases)
+          `(modify-phases  ,phases
+             (add-before 'configure 'bootstrap
+               (lambda _
+                 (zero? (system* "autoreconf" "-vif"))))))))
+      (native-inputs
+       `(("autoconf" ,autoconf)
+         ("automake" ,automake)
+         ,@(package-native-inputs htslib))))))
+
+(define-public sambamba
+  (package
+    (name "sambamba")
+    (version "0.6.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/lomereiter/sambamba/"
+                           "archive/v" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "17076gijd65a3f07zns2gvbgahiz5lriwsa6dq353ss3jl85d8vy"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; there is no test target
+       #:make-flags
+       '("D_COMPILER=ldc2"
+         ;; Override "--compiler" flag only.
+         "D_FLAGS=--compiler=ldc2 -IBioD -g -d"
+         "sambamba-ldmd2-64")
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-after 'unpack 'place-biod
+           (lambda* (#:key inputs #:allow-other-keys)
+             (copy-recursively (assoc-ref inputs "biod") "BioD")
+             #t))
+         (add-after 'unpack 'unbundle-prerequisites
+           (lambda _
+             (substitute* "Makefile"
+               ((" htslib-static lz4-static") ""))
+             #t))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out   (assoc-ref outputs "out"))
+                    (bin   (string-append out "/bin")))
+               (mkdir-p bin)
+               (install-file "build/sambamba" bin)
+               #t))))))
+    (native-inputs
+     `(("ldc" ,ldc)
+       ("rdmd" ,rdmd)
+       ("biod"
+        ,(let ((commit "1248586b54af4bd4dfb28ebfebfc6bf012e7a587"))
+           (origin
+             (method git-fetch)
+             (uri (git-reference
+                   (url "https://github.com/biod/BioD.git")
+                   (commit commit)))
+             (file-name (string-append "biod-"
+                                       (string-take commit 9)
+                                       "-checkout"))
+             (sha256
+              (base32
+               "1m8hi1n7x0ri4l6s9i0x6jg4z4v94xrfdzp7mbizdipfag0m17g3")))))))
+    (inputs
+     `(("lz4" ,lz4)
+       ("htslib" ,htslib-for-sambamba)))
+    (home-page "http://lomereiter.github.io/sambamba")
+    (synopsis "Tools for working with SAM/BAM data")
+    (description "Sambamba is a high performance modern robust and
+fast tool (and library), written in the D programming language, for
+working with SAM and BAM files.  Current parallelised functionality is
+an important subset of samtools functionality, including view, index,
+sort, markdup, and depth.")
+    (license license:gpl2+)))