guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add hmmer


From: Mark H Weaver
Subject: Re: [PATCH] gnu: Add hmmer
Date: Sun, 21 Jun 2015 13:17:31 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Ben Woodcroft <address@hidden> writes:

> From d49710b5a87bfdbe3c12222fd7f42f4fc67875e5 Mon Sep 17 00:00:00 2001
> From: Ben Woodcroft <address@hidden>
> Date: Sun, 21 Jun 2015 20:15:31 +1000
> Subject: [PATCH] gnu: Add hmmer.
>
> * gnu/packages/bioinformatics.scm (hmmer): New variable.
> ---
>  gnu/packages/bioinformatics.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
> index 8dfaff3..bb5f942 100644
> --- a/gnu/packages/bioinformatics.scm
> +++ b/gnu/packages/bioinformatics.scm
> @@ -1032,6 +1032,30 @@ several alignment strategies enable effective 
> alignment of RNA-seq reads, in
>  particular, reads spanning multiple exons.")
>      (license license:gpl3+)))
>  
> +(define-public hmmer
> +  (package
> +    (name "hmmer")
> +    (version "3.1b2")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append
> +                    "http://selab.janelia.org/software/hmmer";
> +                    (version-prefix version 1) "/"
> +                    version "/hmmer-" version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "0djmgc0pfli0jilfx8hql1axhwhqxqb8rxg2r5rg07aw73sfs5nx"))))
> +    (build-system gnu-build-system)
> +    (native-inputs `(("perl", perl)))
> +    (home-page "http://hmmer.janelia.org";)
> +    (synopsis "Biosequence analysis using profile hidden Markov models")
> +    (description
> +     "HMMER is used for searching sequence databases for homologs of protein
> +sequences, and for making protein sequence alignments.  It implements methods
> +using probabilistic models called profile hidden Markov models (profile
> +HMMs).")
> +    (license license:gpl3+)))

The code in the 'easel' subdirectory is under a different license, "The
Janelia Farm Software License".  So you should do something like this:

--8<---------------cut here---------------start------------->8---
    (license (list license:gpl3+
                   ;; The bundled library 'easel' is distributed
                   ;; under The Janelia Farm Software License.
                   (non-copyleft "file://easel/LICENSE"
                                 "See easel/LICENSE in the distribution.")))))
--8<---------------cut here---------------end--------------->8---

It's not good that hmmer bundles its own copy of easel.  If we ever need
easel for another package, we should find a way to build hmmer against
the external easel library.  Having multiple copies of the same library
on the system potentially means multiple copies in RAM, and more
importantly: multiple copies that need to be patched for fixes,
especially security fixes.

However, we can cross that bridge when we come to it.  From a brief
glance, it seems that separating the two will not be trivial :-/

      Mark



reply via email to

[Prev in Thread] Current Thread [Next in Thread]