From 282c5087b4be022b832cf73f43942bca924c3006 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 14 Apr 2015 14:23:19 +0200 Subject: [PATCH] gnu: Add NGS SDK. * gnu/packages/bioinformatics.scm (ngs-sdk): New variable. --- gnu/packages/bioinformatics.scm | 56 +++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 551da4eafc..b5c557bb95 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1031,6 +1031,62 @@ variant calling (in conjunction with bcftools), and a simple alignment viewer.") (license license:expat))) +(define-public ngs-sdk + (package + (name "ngs-sdk") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/ncbi/ngs/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "09fakv9w87lfg9g70kwzmnryqdjj1sz2c7kw01i6drjf787gkjhw")))) + (build-system gnu-build-system) + (arguments + `(#:parallel-build? #f ; not supported + #:tests? #f ; no "check" target + #:phases + (alist-replace + 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; Only replace the version suffix, not the version number in the + ;; directory name; fixed in commit 46d4509fa8 (no release yet). + (substitute* "setup/konfigure.perl" + (((string-append "\\$\\(subst " + "(\\$\\(VERSION[^\\)]*\\))," + "(\\$\\([^\\)]+\\))," + "(\\$\\([^\\)]+\\)|\\$\\@)" + "\\)") + _ pattern replacement target) + (string-append "$(patsubst " + "%" pattern "," + "%" replacement "," + target ")"))) + + ;; The 'configure' script doesn't recognize things like + ;; '--enable-fast-install'. + (zero? (system* "./configure" + (string-append "--build-prefix=" (getcwd) "/build") + (string-append "--prefix=" out))))) + (alist-cons-after + 'unpack 'enter-dir + (lambda _ (chdir "ngs-sdk") #t) + %standard-phases)))) + (native-inputs `(("perl" ,perl))) + (home-page "https://github.com/ncbi/ngs") + (synopsis "API for accessing Next Generation Sequencing data") + (description + "NGS is a domain-specific API for accessing reads, alignments and pileups +produced from Next Generation Sequencing. The API itself is independent from +any particular back-end implementation, and supports use of multiple back-ends +simultaneously.") + (license license:public-domain))) + (define-public seqan (package (name "seqan")