From 1fda3c3ce27e28411bdf9c46bf7c62748933d178 Mon Sep 17 00:00:00 2001 From: pjotrp Date: Thu, 23 Feb 2017 15:27:40 +0000 Subject: sambamba: moved into its own module --- gn/packages/bioinformatics.scm | 93 ---------------------------------- gn/packages/sambamba.scm | 111 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+), 93 deletions(-) create mode 100644 gn/packages/sambamba.scm diff --git a/gn/packages/bioinformatics.scm b/gn/packages/bioinformatics.scm index d6fd7d3..6be95dc 100644 --- a/gn/packages/bioinformatics.scm +++ b/gn/packages/bioinformatics.scm @@ -921,99 +921,6 @@ mixed model and some of its close relatives for genome-wide association studies (GWAS).") (license license:gpl3)))) -(define-public sambamba - (let ((commit "6ae174bcb50d3a8f1b6dd10de9c68bbc4770e56a")) - (package - (name "sambamba") - (version (string-append "0.6.6-pre3-" (string-take commit 7))) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/pjotrp/sambamba.git") - (commit commit))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "1m26i8icllclynqia4yi2mp7zfs2zajllva6bzxn188fhlyjwzqr")))) - (build-system gnu-build-system) - (outputs '("out" - "debug")) - (native-inputs - `(("ldc" ,ldc) - ("lz4" ,lz4) - ("shunit2" ,shunit2) - ("zlib" ,zlib) - ("coreutils" ,coreutils) ; for env - ("perl" ,perl) ; Needed for htslib - ("ruby" ,ruby) ; Needed for htslib - ("python" ,python-2) ; Needed for htslib - ("gcc" ,gcc) - ("which" ,which) - ("htslib-src" - ,(origin - (method url-fetch) - (uri "https://github.com/lomereiter/htslib/archive/2f3c3ea7b301f9b45737a793c0b2dcf0240e5ee5.tar.gz") - ;;(uri "https://github.com/samtools/htslib/archive/1.3.tar.gz") - (file-name "htslib-0.2.0-rc10-271-g2f3c3ea-dirty.tar.gz") - (sha256 - (base32 "0bl6w856afnbgdsw8bybsxpqsyf2ba3f12rqh47hhpxvv866g08w")))) - ;;(base32 "1bqkif7yrqmiqak5yb74kgpb2lsdlg7y344qa1xkdg7k1l4m86i9")) - ;;(patches (list (search-patch "htslib-add-cram_to_bam.patch"))))) - ("biod-src" - ,(origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/pjotrp/BioD.git") - (commit "b7f1db860d212ee5fb6f9adfb36c6e783aaeb6f5"))) - (file-name (string-append "biod-src-" (string-take commit 7) "-checkout")) - (sha256 - (base32 "01xkdjdn9lb2b4b5ykzhnrk2rjikagav8b3fyac3zafcfq600cr4")))) - ("dlang-undeaD-src" - ,(origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/dlang/undeaD.git") - (commit "610234f159132f91046d4fb893889fb8ee14cd2f"))) - (file-name (string-append "dlang-undeaD-src-" (string-take commit 7) "-checkout")) - (sha256 - (base32 "12zxsgvka4a82ghp2gaviph6kz13jzjb5pbc8v6i3rmcnifzpbrl")))))) - (arguments - `(#:phases - (modify-phases %standard-phases - (delete 'configure) - (delete 'check) - (add-after 'unpack 'unpack-htslib-sources - (lambda* (#:key inputs #:allow-other-keys) - ;; The current build compiles htslib statically into the - ;; executable. On top of that, we need to patch the latest - ;; version of htslib to have it working with Sambamba. - (and (with-directory-excursion "htslib" - (zero? (system* "tar" "xvf" (assoc-ref inputs "htslib-src") - "--strip-components=1"))) - (copy-recursively (assoc-ref inputs "dlang-undeaD-src") "undeaD") - (copy-recursively (assoc-ref inputs "biod-src") "BioD")))) - (replace - 'build - (lambda* (#:key inputs make-flags #:allow-other-keys) - (zero? (system* "make" "-f" "Makefile.guix" "guix-debug" - (string-append "LDC_LIB_PATH=" - (assoc-ref inputs "ldc") - "/lib"))))) - (replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) - (install-file "build/sambamba" bin))))))) - (home-page "https://github.com/lomereiter/sambamba") - (synopsis "Fast tool for working with SAM, BAM and CRAM files written in D.") - (description - "Sambamba is a high performance modern robust and fast -tool (and library), written in the D programming language, for working -with SAM, BAM and CRAM files. Current parallelised functionality is -an important subset of samtools functionality, including view, index, -sort, markdup, and depth.") - (license license:gpl2+)))) - (define-public vcflib (let ((commit "3ce827d8ebf89bb3bdc097ee0fe7f46f9f30d5fb")) (package diff --git a/gn/packages/sambamba.scm b/gn/packages/sambamba.scm new file mode 100644 index 0000000..46cf0e7 --- /dev/null +++ b/gn/packages/sambamba.scm @@ -0,0 +1,111 @@ +;; Sambamba + +(define-module (gn packages sambamba) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages base) + #:use-module (gnu packages compression) + #:use-module (gnu packages gcc) + #:use-module (gnu packages perl) + #:use-module (gnu packages python) + #:use-module (gnu packages ruby) + #:use-module (gn packages ldc) + #:use-module (gn packages shell) + #:use-module (srfi srfi-1)) + +(define-public sambamba + (let ((commit "6ae174bcb50d3a8f1b6dd10de9c68bbc4770e56a")) + (package + (name "sambamba") + (version (string-append "0.6.6-pre3-" (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pjotrp/sambamba.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1m26i8icllclynqia4yi2mp7zfs2zajllva6bzxn188fhlyjwzqr")))) + (build-system gnu-build-system) + (outputs '("out" + "debug")) + (native-inputs + `(("ldc" ,ldc) + ("lz4" ,lz4) + ("shunit2" ,shunit2) + ("zlib" ,zlib) + ("coreutils" ,coreutils) ; for env + ("perl" ,perl) ; Needed for htslib + ("ruby" ,ruby) ; Needed for htslib + ("python" ,python-2) ; Needed for htslib + ("gcc" ,gcc) + ("which" ,which) + ("htslib-src" + ,(origin + (method url-fetch) + (uri "https://github.com/lomereiter/htslib/archive/2f3c3ea7b301f9b45737a793c0b2dcf0240e5ee5.tar.gz") + ;;(uri "https://github.com/samtools/htslib/archive/1.3.tar.gz") + (file-name "htslib-0.2.0-rc10-271-g2f3c3ea-dirty.tar.gz") + (sha256 + (base32 "0bl6w856afnbgdsw8bybsxpqsyf2ba3f12rqh47hhpxvv866g08w")))) + ;;(base32 "1bqkif7yrqmiqak5yb74kgpb2lsdlg7y344qa1xkdg7k1l4m86i9")) + ;;(patches (list (search-patch "htslib-add-cram_to_bam.patch"))))) + ("biod-src" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pjotrp/BioD.git") + (commit "b7f1db860d212ee5fb6f9adfb36c6e783aaeb6f5"))) + (file-name (string-append "biod-src-" (string-take commit 7) "-checkout")) + (sha256 + (base32 "01xkdjdn9lb2b4b5ykzhnrk2rjikagav8b3fyac3zafcfq600cr4")))) + ("dlang-undeaD-src" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dlang/undeaD.git") + (commit "610234f159132f91046d4fb893889fb8ee14cd2f"))) + (file-name (string-append "dlang-undeaD-src-" (string-take commit 7) "-checkout")) + (sha256 + (base32 "12zxsgvka4a82ghp2gaviph6kz13jzjb5pbc8v6i3rmcnifzpbrl")))))) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check) + (add-after 'unpack 'unpack-htslib-sources + (lambda* (#:key inputs #:allow-other-keys) + ;; The current build compiles htslib statically into the + ;; executable. On top of that, we need to patch the latest + ;; version of htslib to have it working with Sambamba. + (and (with-directory-excursion "htslib" + (zero? (system* "tar" "xvf" (assoc-ref inputs "htslib-src") + "--strip-components=1"))) + (copy-recursively (assoc-ref inputs "dlang-undeaD-src") "undeaD") + (copy-recursively (assoc-ref inputs "biod-src") "BioD")))) + (replace + 'build + (lambda* (#:key inputs make-flags #:allow-other-keys) + (zero? (system* "make" "-f" "Makefile.guix" "guix-debug" + (string-append "LDC_LIB_PATH=" + (assoc-ref inputs "ldc") + "/lib"))))) + (replace + 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) + (install-file "build/sambamba" bin))))))) + (home-page "https://github.com/lomereiter/sambamba") + (synopsis "Fast tool for working with SAM, BAM and CRAM files written in D.") + (description + "Sambamba is a high performance modern robust and fast +tool (and library), written in the D programming language, for working +with SAM, BAM and CRAM files. Current parallelised functionality is +an important subset of samtools functionality, including view, index, +sort, markdup, and depth.") + (license license:gpl2+)))) -- cgit v1.2.3