diff mbox

[3/4] gnu: Add barrnap.

Message ID 20161203103901.27770-3-donttrustben@gmail.com
State New
Headers show

Commit Message

Ben Woodcroft Dec. 3, 2016, 10:39 a.m. UTC
* gnu/packages/bioinformatics.scm (barrnap): New variable.
---
 gnu/packages/bioinformatics.scm | 67 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 67 insertions(+)

Comments

Ricardo Wurmus Dec. 3, 2016, 7:20 p.m. UTC | #1
Ben Woodcroft <donttrustben@gmail.com> writes:

> * gnu/packages/bioinformatics.scm (barrnap): New variable.
> ---
>  gnu/packages/bioinformatics.scm | 67 +++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 67 insertions(+)

[…]

LGTM.  Thanks!
Marius Bakke Dec. 3, 2016, 7:36 p.m. UTC | #2
Ben Woodcroft <donttrustben@gmail.com> writes:

> * gnu/packages/bioinformatics.scm (barrnap): New variable.
> ---
>  gnu/packages/bioinformatics.scm | 67 +++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 67 insertions(+)
>
> diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
> index 961f0b2..4541791 100644
> --- a/gnu/packages/bioinformatics.scm
> +++ b/gnu/packages/bioinformatics.scm
> @@ -268,6 +268,73 @@ instance, it implements several methods to assess contig-wise read coverage.")
>  BAM files.")
>      (license license:expat)))
>  
> +(define-public barrnap
> +  (package
> +   (name "barrnap")
> +   (version "0.7")
> +   (source
> +    (origin
> +      (method url-fetch)
> +      (uri (string-append
> +            "https://github.com/tseemann/barrnap/archive/"
> +            version ".tar.gz"))
> +      (file-name (string-append name "-" version ".tar.gz"))
> +      (sha256
> +       (base32
> +        "16y040np76my3y82hgk4yy790smbsk4h8d60d5swlv7ha3i768gg"))
> +      (modules '((guix build utils)))
> +      ;; Remove pre-built binaries.
> +      (snippet '(begin
> +                  (delete-file-recursively "binaries")
> +                  #t))))
> +   (build-system gnu-build-system)
> +   (arguments
> +    `(#:test-target "test"
> +      #:phases
> +      (modify-phases %standard-phases
> +        (add-after 'unpack 'patch-nhmer-path
> +          (lambda* (#:key inputs #:allow-other-keys)
> +            (substitute* "bin/barrnap"
> +              (("^my \\$NHMMER = .*")
> +               (string-append "my $NHMMER = '"
> +                              (assoc-ref inputs "hmmer")
> +                              "/bin/nhmmer';\n")))
> +            #t))
> +        (delete 'configure)
> +        (delete 'build)
> +        (replace 'install
> +          (lambda* (#:key outputs #:allow-other-keys)
> +            (let* ((out  (assoc-ref outputs "out"))
> +                   (bin  (string-append out "/bin"))
> +                                        ;(path (getenv "PATH"))
> +                   (share (string-append out "/share/barrnap/db"))
> +                   (binary "bin/barrnap"))
> +              (substitute* binary
> +                (("^my \\$DBDIR = .*")
> +                 (string-append "my $DBDIR = '" share "';\n")))
> +              (install-file binary bin)
> +              (mkdir-p share)
> +              (copy-recursively "db" share))
> +            #t)))))
> +   (inputs
> +    `(("perl" ,perl)
> +      ("hmmer" ,hmmer)))
> +   (home-page "https://github.com/tseemann/barrnap")
> +   (synopsis "Ribosomal RNA predictor")
> +   (description
> +    "Barrnap predicts the location of ribosomal RNA genes in genomes.  It
> +supports bacteria (5S, 23S, 16S), archaea (5S,5.8S,23S,16S), mitochondria (12S,
> +16S) and eukaryotes (5S, 5.8S, 28S, 18S).  It takes FASTA DNA sequence as input,
> +and write GFF3 as output.  It uses the NHMMER tool that comes with HMMER for
> +HMM searching in RNA:DNA style.")
> +   (license (list license:gpl3
> +                  ;; The Rfam HMMs are under cc0, and the SILVA-derived HMMs are
> +                  ;; academic-only.

I don't think we can package the SILVA files. They are very much
non-free according to the license text:

SILVA Terms of Use/License Information

The SILVA database content offered at www.arb-silva.de can be freely browsed
and the corresponding information deployed by all users, independent from
their status (academic or non-academic).

All downloads are free for academic users. They can be used, modified and
redistributed within the academic environment without any limitation.
However, in case of redistribution please make transparent the SILVA Terms
of Use/License Information by linking/referring to this page (see link in
the header of your browser). Academic users are represented by universities
and non-commercial research institutes such as members of the German
Helmholtz Association, Leibniz Association and Max-Planck Society as well as
US National Labs.

Users from NON-ACADEMIC can also directly access all downloads including the
results of the SILVA web-aligner (SINA) but only for limited/temporary use
(only for test purposes). All downloaded files should be deleted latest
after 48 hours. Unauthorized usage beyond test purposes is strictly
prohibited. If you are interested in unlimited usage of the SILVA
databases/services (e.g. the web-aligner) or parts of them within a
non-academic environment, please contact us for more information at
contact(at)arb-silva.de. A non-academic environment is defined by a direct
or indirect commercial interest in the data and includes all industrial
research entities.


> +                  license:cc0
> +                  (license:non-copyleft
> +                   "file:///LICENSE.SILVA"
> +                   "See LICENSE.SILVA in the distribution.")))))
> +
>  (define-public bcftools
>    (package
>      (name "bcftools")
> -- 
> 2.10.2
Ricardo Wurmus Dec. 4, 2016, 3:51 p.m. UTC | #3
Marius Bakke <mbakke@fastmail.com> writes:

> Ben Woodcroft <donttrustben@gmail.com> writes:
>
>> * gnu/packages/bioinformatics.scm (barrnap): New variable.

[…]

>> +16S) and eukaryotes (5S, 5.8S, 28S, 18S).  It takes FASTA DNA sequence as input,
>> +and write GFF3 as output.  It uses the NHMMER tool that comes with HMMER for
>> +HMM searching in RNA:DNA style.")
>> +   (license (list license:gpl3
>> +                  ;; The Rfam HMMs are under cc0, and the SILVA-derived HMMs are
>> +                  ;; academic-only.
>
> I don't think we can package the SILVA files. They are very much
> non-free according to the license text:

You’re right!  Ben, could you delete them from the package in a snippet?
diff mbox

Patch

diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 961f0b2..4541791 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -268,6 +268,73 @@  instance, it implements several methods to assess contig-wise read coverage.")
 BAM files.")
     (license license:expat)))
 
+(define-public barrnap
+  (package
+   (name "barrnap")
+   (version "0.7")
+   (source
+    (origin
+      (method url-fetch)
+      (uri (string-append
+            "https://github.com/tseemann/barrnap/archive/"
+            version ".tar.gz"))
+      (file-name (string-append name "-" version ".tar.gz"))
+      (sha256
+       (base32
+        "16y040np76my3y82hgk4yy790smbsk4h8d60d5swlv7ha3i768gg"))
+      (modules '((guix build utils)))
+      ;; Remove pre-built binaries.
+      (snippet '(begin
+                  (delete-file-recursively "binaries")
+                  #t))))
+   (build-system gnu-build-system)
+   (arguments
+    `(#:test-target "test"
+      #:phases
+      (modify-phases %standard-phases
+        (add-after 'unpack 'patch-nhmer-path
+          (lambda* (#:key inputs #:allow-other-keys)
+            (substitute* "bin/barrnap"
+              (("^my \\$NHMMER = .*")
+               (string-append "my $NHMMER = '"
+                              (assoc-ref inputs "hmmer")
+                              "/bin/nhmmer';\n")))
+            #t))
+        (delete 'configure)
+        (delete 'build)
+        (replace 'install
+          (lambda* (#:key outputs #:allow-other-keys)
+            (let* ((out  (assoc-ref outputs "out"))
+                   (bin  (string-append out "/bin"))
+                                        ;(path (getenv "PATH"))
+                   (share (string-append out "/share/barrnap/db"))
+                   (binary "bin/barrnap"))
+              (substitute* binary
+                (("^my \\$DBDIR = .*")
+                 (string-append "my $DBDIR = '" share "';\n")))
+              (install-file binary bin)
+              (mkdir-p share)
+              (copy-recursively "db" share))
+            #t)))))
+   (inputs
+    `(("perl" ,perl)
+      ("hmmer" ,hmmer)))
+   (home-page "https://github.com/tseemann/barrnap")
+   (synopsis "Ribosomal RNA predictor")
+   (description
+    "Barrnap predicts the location of ribosomal RNA genes in genomes.  It
+supports bacteria (5S, 23S, 16S), archaea (5S,5.8S,23S,16S), mitochondria (12S,
+16S) and eukaryotes (5S, 5.8S, 28S, 18S).  It takes FASTA DNA sequence as input,
+and write GFF3 as output.  It uses the NHMMER tool that comes with HMMER for
+HMM searching in RNA:DNA style.")
+   (license (list license:gpl3
+                  ;; The Rfam HMMs are under cc0, and the SILVA-derived HMMs are
+                  ;; academic-only.
+                  license:cc0
+                  (license:non-copyleft
+                   "file:///LICENSE.SILVA"
+                   "See LICENSE.SILVA in the distribution.")))))
+
 (define-public bcftools
   (package
     (name "bcftools")