From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: [PATCH]: gnu: Add HISAT. Date: Tue, 10 Feb 2015 11:24:33 +0100 Message-ID: References: <87fvae8z7h.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:52980) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YL7zp-0001wp-HM for guix-devel@gnu.org; Tue, 10 Feb 2015 05:24:46 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YL7zl-0001ys-Ro for guix-devel@gnu.org; Tue, 10 Feb 2015 05:24:45 -0500 In-Reply-To: <87fvae8z7h.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: Guix-devel --=-=-= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s writes: > If it=E2=80=99s possible to avoid the whole list using =E2=80=98find-fi= les=E2=80=99 or > =E2=80=98scandir=E2=80=99, that would be nicer IMO. If it=E2=80=99s no= t, that=E2=80=99s fine. In the attached patch I used `find-files' instead. The expression is a bit long, but I think it's still clear enough to be preferable to the long list. >> + (license license:gpl3))) > > GPLv3-only? You were right: it's GPLv3+. My apologies. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename="0001-gnu-Add-HISAT.patch" >From 5696a8227d98d60d38f0ff19b40a21ccb13e53f1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 9 Feb 2015 12:13:26 +0100 Subject: [PATCH] gnu: Add HISAT. * gnu/packages/bioinformatics.scm (hisat): New variable. --- gnu/packages/bioinformatics.scm | 66 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 65 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index c0d1438..9219bc2 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -29,8 +29,9 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages python)) + #:use-module (gnu packages python) #:use-module (gnu packages tbb) + #:use-module (gnu packages zip)) (define-public bedtools (package @@ -181,6 +182,69 @@ supports next-generation sequencing data in fasta/q and csfasta/q format from Illumina, Roche 454, and the SOLiD platform.") (license license:gpl3))) +(define-public hisat + (package + (name "hisat") + (version "0.1.4") + (source (origin + (method url-fetch) + (uri (string-append + "http://ccb.jhu.edu/software/hisat/downloads/hisat-" + version "-beta-source.zip")) + (sha256 + (base32 + "1k381ydranqxp09yf2y7w1d0chz5d59vb6jchi89hbb0prq19lk5")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ;no check target + #:make-flags '("allall") + #:phases + (alist-replace + 'unpack + (lambda* (#:key source #:allow-other-keys) + (and (zero? (system* "unzip" source)) + (chdir "hisat-0.1.4-beta"))) + (alist-cons-after + 'unpack 'patch-sources + (lambda _ + ;; XXX Cannot use snippet because zip files are not supported + (substitute* "Makefile" + (("^CC = .*$") "CC = gcc") + (("^CPP = .*$") "CPP = g++") + ;; replace BUILD_HOST and BUILD_TIME for deterministic build + (("-DBUILD_HOST=.*") "-DBUILD_HOST=\"\\\"guix\\\"\"") + (("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\"")) + (substitute* '("hisat-build" "hisat-inspect") + (("/usr/bin/env") (which "env")))) + (alist-replace + 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) + (mkdir-p bin) + (for-each + (lambda (file) + (copy-file file (string-append bin file))) + (find-files + "." + "hisat(-(build|align|inspect)(-(s|l)(-debug)*)*)*$")))) + (alist-delete 'configure %standard-phases)))))) + (native-inputs + `(("unzip" ,unzip))) + (inputs + `(("perl" ,perl) + ("python" ,python) + ("zlib" ,zlib))) + (home-page "http://ccb.jhu.edu/software/hisat/index.shtml") + (synopsis "Hierarchical indexing for spliced alignment of transcripts") + (description + "HISAT is a fast and sensitive spliced alignment program for mapping +RNA-seq reads. In addition to one global FM index that represents a whole +genome, HISAT uses a large set of small FM indexes that collectively cover the +whole genome. These small indexes (called local indexes) combined with +several alignment strategies enable effective alignment of RNA-seq reads, in +particular, reads spanning multiple exons.") + (license license:gpl3+))) + (define-public samtools (package (name "samtools") -- 2.1.0 --=-=-=--