unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add samtools
@ 2014-12-11 14:48 Ricardo Wurmus
  2014-12-11 17:57 ` Ludovic Courtès
  0 siblings, 1 reply; 11+ messages in thread
From: Ricardo Wurmus @ 2014-12-11 14:48 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/bioinformatics.scm: New file
* gnu-system.am (GNU_SYSTEM_MODULES): Add it
---
 gnu-system.am                   |  1 +
 gnu/packages/bioinformatics.scm | 83 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 84 insertions(+)
 create mode 100644 gnu/packages/bioinformatics.scm

diff --git a/gnu-system.am b/gnu-system.am
index e923340..d4d0b51 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -45,6 +45,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/base.scm				\
   gnu/packages/bash.scm				\
   gnu/packages/bdw-gc.scm			\
+  gnu/packages/bioinformatics.scm		\
   gnu/packages/bittorrent.scm			\
   gnu/packages/bison.scm			\
   gnu/packages/boost.scm			\
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
new file mode 100644
index 0000000..4d27b12
--- /dev/null
+++ b/gnu/packages/bioinformatics.scm
@@ -0,0 +1,83 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Ricardo Wurmus <rekado@elephly.net>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages bioinformatics)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python))
+
+(define-public samtools
+  (package
+    (name "samtools")
+    (version "1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append "mirror://sourceforge/samtools/"
+                       version "/samtools-" version ".tar.bz2"))
+       (sha256
+        (base32
+         "1y5p2hs4gif891b4ik20275a8xf3qrr1zh9wpysp4g8m0g1jckf2"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out")))
+       #:phases
+       (alist-cons-after
+        'unpack
+        'patch-makefile-curses
+        (lambda _
+          (substitute* "Makefile"
+            (("-lcurses") "-lncurses")))
+        (alist-cons-after
+         'unpack
+         'patch-tests
+         (lambda* (#:key inputs #:allow-other-keys)
+           (let ((bash (assoc-ref inputs "bash")))
+             (substitute* "test/test.pl"
+               ;; The test script calls out to /bin/bash
+               (("/bin/bash")
+                (string-append bash "/bin/bash"))
+               ;; There are two failing tests upstream relating to the "stats"
+               ;; subcommand in test_usage_subcommand ("did not have Usage"
+               ;; and "usage did not mention samtools stats"), so we disable
+               ;; them.
+               (("(test_usage_subcommand\\(.*\\);)" cmd)
+                (string-append "unless ($subcommand eq 'stats') {" cmd "};")))))
+         (alist-delete
+          'configure
+          %standard-phases)))))
+    (native-inputs `(("pkg-config" ,pkg-config)))
+    (inputs `(("ncurses" ,ncurses)
+              ("perl" ,perl)
+              ("python" ,python)
+              ("zlib" ,zlib)))
+    (home-page "http://samtools.sourceforge.net")
+    (synopsis "Efficient utilities on manipulating alignments in the SAM format")
+    (description
+     "Samtools implements various utilities for post-processing alignments in
+the SAM, BAM, and CRAM formats, including indexing, variant calling (in
+conjunction with bcftools), and a simple alignment viewer.")
+    (license license:expat)))
-- 
1.9.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2014-12-15 22:13 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-11 14:48 [PATCH] gnu: Add samtools Ricardo Wurmus
2014-12-11 17:57 ` Ludovic Courtès
2014-12-12  9:48   ` Ricardo Wurmus
2014-12-12 22:55     ` Ludovic Courtès
2014-12-13  6:30     ` Mark H Weaver
2014-12-13  8:19       ` Ricardo Wurmus
2014-12-13 15:53         ` Ludovic Courtès
2014-12-13 16:30           ` Mark H Weaver
2014-12-13 17:04             ` Mark H Weaver
2014-12-15 11:36               ` Ricardo Wurmus
2014-12-15 22:12                 ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).