[PATCH] gnu: Add fast-screen.

OpenSubmitted by Mădălin Ionel Patrașcu.
Details
4 participants
  • Efraim Flashner
  • Mădălin Ionel Patrașcu
  • Maxim Cournoyer
  • Ricardo Wurmus
Owner
unassigned
Severity
normal
M
M
Mădălin Ionel Patrașcu wrote on 5 Dec 2019 22:21
(address . guix-patches@gnu.org)(name . Mădălin Ionel Patrașcu)(address . madalinionel.patrascu@mdc-berlin.de)
20191205212114.4971-1-madalinionel.patrascu@mdc-berlin.de
* gnu/packages/bioinformatics.scm (fast-screen): New variable.
---
gnu/packages/bioinformatics.scm | 53 +++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)

Toggle diff (63 lines)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 74a44874ee..53e4c7296f 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -15341,3 +15341,56 @@ methylation metrics from them.  MethylDackel requires an indexed fasta file
 containing the reference genome as well.")
     ;; See https://github.com/dpryan79/MethylDackel/issues/85
     (license license:expat)))
+
+(define-public fastq-screen
+  (package
+    (name "fastq-screen")
+    (version "0.14.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://www.bioinformatics.babraham.ac.uk/projects/"
+			   "fastq_screen/fastq_screen_v" version ".tar.gz"))
+       (sha256
+        (base32
+         "0m7n9b1pr8rk1pd3va0mr69pd7gddcsvrvlk2s7907i02wkc1say"))))
+    (build-system trivial-build-system)
+    (arguments
+     ;; it is just an extraction processs
+     `(#:modules ((guix build utils))
+       #:builder
+       (begin
+	 (use-modules (guix build utils))
+	 (let* ((tar (assoc-ref %build-inputs "tar"))
+	        (gzip (assoc-ref %build-inputs "gzip"))
+	        (out (assoc-ref %outputs "out"))
+	        (doc (string-append out "/share/doc"))
+	        (bin (string-append out "/bin")))
+	   (setenv "PATH" (string-append tar "/bin:" gzip "/bin"))
+	   (invoke "tar" "xvf" (assoc-ref %build-inputs "source"))
+	   (chdir (string-append "fastq_screen_v" ,version))
+           (install-file "fastq_screen" bin)
+	   (install-file "fastq_screen.conf.example" doc)
+	   (install-file "fastq_screen_documentation.md" doc)
+	   (install-file "RELEASE_NOTES.txt" doc)
+	   #t))))
+    (inputs
+     `(("perl" ,perl)))
+    (native-inputs
+     `(("gzip" ,gzip)
+       ("tar" ,tar)))
+    (home-page "https://www.bioinformatics.babraham.ac.uk/projects/fastq_screen/")
+    (synopsis "FastQ Screen allows to search a large sequence dataset")
+    (description
+     "FastQ Screen is an application which allows you to search a large sequence
+dataset against a panel of different databases to build up a picture of where
+the sequences in your data originate.  The program was built as a quality
+control check for sequencing pipelines but may also have uses in metagenomics
+studies where mixed samples are expected.  The application generates both text
+and graphical output to inform you what proportion of your library was able to
+map, either uniquely or to more than one location, against each of your
+specified reference genomes.  The user should therefore be able to identify a
+clean sequencing experiment in which the overwhelming majority of reads are
+probably derived from a single genomic origin.")
+    (license license:gpl3+)))
+
-- 
2.17.1
E
E
Efraim Flashner wrote on 11 Dec 2019 03:16
(name . Mădălin Ionel Patrașcu)(address . madalinionel.patrascu@mdc-berlin.de)(address . 38505@debbugs.gnu.org)
20191211021624.GC8302@E5400
It's not clear to me what perl is used for in this package.

--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl3wUXMACgkQQarn3Mo9
g1E4sg//biqb8eUx9ry7/PgiMR20JKb23NjNHlXWwj4NBFRDwKKUA7udZ0Qy76XW
acDySdFix70BklzfORnTpTfTjv66RlAAoUrp0I2B6dAEzoCktl1wkjRWgFO6PR4s
Yb+X+30a8avMWazIv3CgHzo4pGdqj62qtDM20bgBD5D6J6yE5Gr4vw5vLT5Z5FGR
4bjb/Jt/tyKaf6AmPmsygeC89HSzIrGN2GRxeq61wn6P2FDVlOeNdF09jMcyt/zW
TQgTDgL+HjRb4Ahkl8isdS4uH2o5fOEZA7ZvKPtoghN43Fbo/PoSEF5EJfkNSFZ/
Ocyh2aSQyzngIdE334Lki1d0ZcM+sKX8A03glPYCE+vNNrrCBdCGPIl8xZfs5+rr
dAtFY37d6tp9qo0u8mGJrDbCCaOckFpgKjATFZSK3tA/G/TB89gscEMtAJw/au86
ATLy72ff9x8hHKK8WOKXil5eu1gtrC2YJZ700JYzryEpA+WG/YorNqyGpY/tRKWl
pRPJJ/luVkWtNBfMuIIWw0XqHekaLHdTXUn3CDk6UCTY14rDjBjksf5fmZ3/LJMQ
RmUKwxtYOK80TpTXFXCSBqpwl23AB+Af/6JAKjcN9Ttylip2dVm1/uQdzbY4MKsf
vRTLaQyhcols07nPWm2Lr2IECBOY4Gdgnr2W/+5PnjrG4XKMDfs=
=l7wG
-----END PGP SIGNATURE-----


R
R
Ricardo Wurmus wrote on 16 Dec 2019 23:41
(name . Mădălin Ionel Patrașcu)(address . madalinionel.patrascu@mdc-berlin.de)(address . 38505@debbugs.gnu.org)
87immfc2qc.fsf@elephly.net
Hi Mădălin,

Toggle quote (2 lines)
> * gnu/packages/bioinformatics.scm (fast-screen): New variable.

I don’t think this package actually produces a usable output.

Frustratingly, this is a Perl script which calls out to tools that
happen to be on the user’s PATH, such as Bismark (which is written in
the same style, so it may be enlightening to read its package
definition), bwa, or bowtie.

Simply copying the script to the store won’t yield a usable tool I’m
afraid.

For Bismark I talked to the authors in the past in the hopes of
simplifying configuration at build time, but they were not interested in
changing the tool to accomodate any other case than the one Bismark was
designed for: to be unpacked in an already suitable environment.

This means that we can’t count on upstream to change this and patch the
source file by ourselves. One way is to patch every invocation of an
external command; another is to wrap the script itself (with
“wrap-script”) in PATH and PERL5PATH to provide a suitable environment
at runtime. (Wrapping PERL5PATH may be necessary anyway to ensure that
Perl can find the required modules.)

Good luck!

--
Ricardo
M
M
Maxim Cournoyer wrote on 18 Mar 05:12 +0100
control message for bug #38505
(address . control@debbugs.gnu.org)
87v8wb6grn.fsf@gmail.com
tags 38505 + moreinfo
quit
M
M
Maxim Cournoyer wrote on 18 Mar 05:13 +0100
Re: bug#38505: [PATCH] gnu: Add fast-screen.
(name . Ricardo Wurmus)(address . rekado@elephly.net)
87o8236gpa.fsf_-_@gmail.com
Hello,

Ricardo Wurmus <rekado@elephly.net> writes:

Toggle quote (28 lines)
> Hi Mădălin,
>
>> * gnu/packages/bioinformatics.scm (fast-screen): New variable.
>
> I don’t think this package actually produces a usable output.
>
> Frustratingly, this is a Perl script which calls out to tools that
> happen to be on the user’s PATH, such as Bismark (which is written in
> the same style, so it may be enlightening to read its package
> definition), bwa, or bowtie.
>
> Simply copying the script to the store won’t yield a usable tool I’m
> afraid.
>
> For Bismark I talked to the authors in the past in the hopes of
> simplifying configuration at build time, but they were not interested in
> changing the tool to accomodate any other case than the one Bismark was
> designed for: to be unpacked in an already suitable environment.
>
> This means that we can’t count on upstream to change this and patch the
> source file by ourselves. One way is to patch every invocation of an
> external command; another is to wrap the script itself (with
> “wrap-script”) in PATH and PERL5PATH to provide a suitable environment
> at runtime. (Wrapping PERL5PATH may be necessary anyway to ensure that
> Perl can find the required modules.)
>
> Good luck!

Some 2 years later, are you still up to the challenge hinted at by
Ricardo? :-)

Thanks,

Maxim
?