aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/libunistring.scm
blob: fda839be543dcde4e3ba85b3835bc2e54e689057 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;;
;;; 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 libunistring)
  #:use-module (guix licenses)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (gnu packages)
  #:use-module (gnu packages base))

(define-public libunistring
  (package
   (name "libunistring")
   (version "0.9.10")
   (source (origin
            (method url-fetch)
            (uri (string-append
                  "mirror://gnu/libunistring/libunistring-"
                  version ".tar.xz"))
            (sha256
             (base32
              "1mq57h06622m6qc5cv347fc3qk5mj840axw3c0vd7qmnwk1v53zb"))))
   (propagated-inputs (libiconv-if-needed))
   (outputs '("out" "static"))
   (build-system gnu-build-system)
   (arguments
    ;; Work around parallel build issue whereby C files may be compiled before
    ;; config.h is built: see <http://hydra.gnu.org/build/59381/nixlog/2/raw> and
    ;; <http://lists.openembedded.org/pipermail/openembedded-core/2012-April/059850.html>.
    '(#:parallel-build? #f
      #:phases (modify-phases %standard-phases
                 (add-after 'install 'move-static-library
                   (lambda* (#:key outputs #:allow-other-keys)
                     (let ((out (assoc-ref outputs "out"))
                           (static (assoc-ref outputs "static")))
                       (with-directory-excursion (string-append out "/lib")
                         (install-file "libunistring.a"
                                       (string-append static "/lib"))
                         (delete-file "libunistring.a")
                         #t)))))))
   (synopsis "C library for manipulating Unicode strings")
   (description
    "GNU libunistring is a library providing functions to manipulate
Unicode strings and for manipulating C strings according to the Unicode
standard.")
   (home-page "https://www.gnu.org/software/libunistring/")
   (license (list lgpl3+ gpl2))))
/span>gnu: Adjust package collection to Wrap using GUIX_PYTHONPATH....This change was automated using: $ git ls-files | grep .scm | \ xargs sed 's/(getenv "PYTHONPATH")/(getenv "GUIX_PYTHONPATH")/' -i $ git ls-files | grep .scm | \ xargs sed 's/`("PYTHONPATH"/`("GUIX_PYTHONPATH"/' -i * gnu/packages/admin.scm (nmap): (dstat): Wrap using GUIX_PYTHONPATH. * gnu/packages/audio.scm (jack-2): (carla): Likewise. * gnu/packages/benchmark.scm (fio): Likewise. * gnu/packages/bioinformatics.scm (couger): Likewise. (gess, find-circ, filtlong, nanopolish): Likewise. * gnu/packages/cdrom.scm (cdemu-client): Likewise. * gnu/packages/chemistry.scm (avogadro): Likewise. * gnu/packages/connman.scm (econnman): Likewise. * gnu/packages/cups.scm (hplip): Likewise. * gnu/packages/debug.scm (scanmem): Likewise. * gnu/packages/display-managers.scm (lightdm): Likewise. * gnu/packages/ebook.scm (cozy): Likewise. * gnu/packages/education.scm (anki): Likewise. * gnu/packages/engineering.scm (kicad, volk, freecad): Likewise. * gnu/packages/game-development.scm (renpy): Likewise. * gnu/packages/games.scm (roguebox-adventures) (seahorse-adventures, kajongg): Likewise. * gnu/packages/gimp.scm (gimp, glimpse): Likewise. * gnu/packages/glib.scm (itstool): Likewise. * gnu/packages/gnome.scm (gnome-music, gtg, rhythmbox): Likewise. (eolie, d-feet, gedit, caribou, gnome-shell, authenticator) (gnome-todo, orca, passwordsafe, terminator, setzer) (libratbag, komikku): Likewise. * gnu/packages/gps.scm (gpsd): Likewise. * gnu/packages/gtk.scm (gtk-doc): Likewise. * gnu/packages/ibus.scm (ibus, ibus-libpinyin, ibus-anthy) (ibus-libhangul): Likewise. * gnu/packages/inkscape.scm (inkscape-1.0): Likewise. * gnu/packages/linux.scm (bcc): Likewise. * gnu/packages/mail.scm (notifymuch): Likewise. * gnu/packages/maths.scm (units): Likewise. * gnu/packages/music.scm (solfege): Likewise. * gnu/packages/networking.scm (blueman): Likewise. * gnu/packages/patchutils.scm (patchwork): Likewise. * gnu/packages/photo.scm (rapid-photo-downloader, entangle): Likewise. * gnu/packages/plotutils.scm (asymptote): Likewise. * gnu/packages/presentation.scm (presentty): Likewise. * gnu/packages/screen.scm (byobu): Likewise. * gnu/packages/storage.scm (ceph): Likewise. * gnu/packages/syndication.scm (liferea): Likewise. * gnu/packages/task-management.scm (blanket): Likewise. * gnu/packages/text-editors.scm (manuskript): Likewise. * gnu/packages/version-control.scm (gitless, cgit, git-when-merged) (git-imerge): Likewise. * gnu/packages/video.scm (pitivi): Likewise. * gnu/packages/virtualization.scm (criu): Likewise. * gnu/packages/xfce.scm (catfish): Likewise. Maxim Cournoyer 2020-12-22gnu: ceph: Update to 14.2.16....* gnu/packages/storage.scm (ceph): Update to 14.2.16. Tobias Geerinckx-Rice 2020-11-25gnu: ceph: Update to 14.2.15....* gnu/packages/storage.scm (ceph): Update to 14.2.15. Tobias Geerinckx-Rice 2020-11-21gnu: ceph: Update to 14.2.14....* gnu/packages/storage.scm (ceph): Update to 14.2.14. Tobias Geerinckx-Rice 2020-11-09gnu: ceph: Update to 14.2.13....* gnu/packages/storage.scm (ceph): Update to 14.2.13. Tobias Geerinckx-Rice 2020-08-13gnu: ceph: Update to 14.2.11....* gnu/packages/storage.scm (ceph): Update to 14.2.11. Tobias Geerinckx-Rice 2020-06-30gnu: ceph: Update to 14.2.10 [fixes CVE-2020-10753]....* gnu/packages/storage.scm (ceph): Update to 14.2.10. [source]: Keep required bundled seastar. [inputs]: Add librdkafka. Tobias Geerinckx-Rice 2020-05-09gnu: ceph: Update to 14.2.9....* gnu/packages/storage.scm (ceph): Update to 14.2.9. Marius Bakke 2020-03-04Merge branch 'master' into core-updatesMarius Bakke 2020-03-04gnu: ceph: Update to 14.2.8....* gnu/packages/patches/ceph-boost-compat.patch, gnu/packages/patches/ceph-volume-respect-PATH.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/storage.scm (ceph): Update to 14.2.8. [source](patches): Remove obsolete. Marius Bakke @@ variational inference.") (file-name (git-file-name name version)) (sha256 (base32 - "12a5kjgiikapv93wahfw0frszx1lblnppyz3vs5gy8fgmgngra07")))) + "0xmw2yv1y3y7vh5jcbrmlkn43nmfs0pf6z78k1yxqs3qy248m9b0")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases - (replace 'check + ;; See https://github.com/linnarsson-lab/loompy/issues/169 + (add-after 'unpack 'fix-h5py-error + (lambda _ + (substitute* "tests/test_file_attribute_manager.py" + (("h5py.File\\(f.name\\)") + "h5py.File(f.name, 'a')")))) + ;; Numba needs a writable dir to cache functions. + (add-before 'check 'set-numba-cache-dir (lambda _ - (invoke "pytest" "tests")))))) + (setenv "NUMBA_CACHE_DIR" "/tmp"))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest" "tests"))))))) (propagated-inputs - (list python-h5py python-numpy python-pandas python-scipy)) + (list python-click + python-h5py + python-numba + python-numpy + python-numpy-groupies + python-pandas + python-scipy)) (native-inputs (list python-pytest)) (home-page "https://github.com/linnarsson-lab/loompy") -- cgit v1.2.3 From 7d331dd20302ca1d7df4fc67bfcedde9d897cc97 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 31 Mar 2022 12:58:46 +0530 Subject: gnu: htslib: Add bzip2 and xz to inputs. htslib links to libbz2 from bzip2 and liblzma from xz. Therefore, bzip2 and xz should be listed in inputs even though they are already present implicitly in native-inputs. Else, cross-compilation will fail. * gnu/packages/bioinformatics.scm (htslib)[inputs]: Add bzip2 and xz. Signed-off-by: Efraim Flashner --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 693158798a..9c7ef41cc1 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2016, 2020, 2022 Marius Bakke ;;; Copyright © 2016, 2018 Raoul Bonnal ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice -;;; Copyright © 2017, 2021 Arun Isaac +;;; Copyright © 2017, 2021, 2022 Arun Isaac ;;; Copyright © 2018 Joshua Sierles, Nextjournal ;;; Copyright © 2018 Gábor Boskovits ;;; Copyright © 2018, 2019, 2020, 2021 Mădălin Ionel Patrașcu @@ -4788,7 +4788,7 @@ performance.") "--enable-libcurl" "--enable-s3"))) (inputs - (list curl openssl)) + (list bzip2 curl openssl xz)) ;; This is referred to in the pkg-config file as a required library. (propagated-inputs (list zlib)) -- cgit v1.2.3 From 1ca9d9e1942b674cd2a4ce55ebfebc4485870366 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 31 Mar 2022 12:58:49 +0530 Subject: gnu: Add wfmash. * gnu/packages/bioinformatics.scm (wfmash): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/bioinformatics.scm | 45 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 9c7ef41cc1..7a7f2f722e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -16124,3 +16124,48 @@ workflows from concise descriptions in ccwl. It is implemented as an @acronym{EDSL, Embedded Domain Specific Language} in the Scheme programming language.") (license license:gpl3+))) + +(define-public wfmash + (package + (name "wfmash") + (version "0.8.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/ekg/wfmash/releases/download/v" + version "/wfmash-v" version ".tar.gz")) + (sha256 + (base32 + "031cm1arpfckvihb28vlk69mirpnmlag81zcscfba1bac58wvr7c")) + (snippet + #~(begin + (use-modules (guix build utils)) + ;; Unbundle atomic-queue. + (delete-file-recursively "src/common/atomic_queue") + (substitute* "src/align/include/computeAlignments.hpp" + (("\"common/atomic_queue/atomic_queue.h\"") + "")) + ;; Remove compiler optimizations. + (substitute* (find-files "." "CMakeLists\\.txt") + (("-mcx16 ") "") + (("-march=native ") "")) + ;; Allow building on architectures other than x86_64. + (substitute* "src/common/dset64.hpp" + (("!__x86_64__") "0")))))) + (build-system cmake-build-system) + (arguments + (list #:tests? #f)) ; no tests + (inputs + (list atomic-queue + gsl + htslib + jemalloc + zlib)) + (synopsis "Base-accurate DNA sequence aligner") + (description "@code{wfmash} is a DNA sequence read mapper based on mash +distances and the wavefront alignment algorithm. It is a fork of MashMap that +implements base-level alignment via the wflign tiled wavefront global +alignment algorithm. It completes MashMap with a high-performance alignment +module capable of computing base-level alignments for very large sequences.") + (home-page "https://github.com/ekg/wfmash") + (license license:expat))) -- cgit v1.2.3 From 8f3dc994bbcb3028318e3d597f829a12396110c2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 31 Mar 2022 16:13:57 +0300 Subject: gnu: wfmash: Enable test suite. * gnu/packages/bioinformatics.scm (wfmash)[arguments]: Don't disable tests. Add custom 'check phase based on upstream's own CI tests. [native-inputs]: Add samtools. --- gnu/packages/bioinformatics.scm | 109 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 108 insertions(+), 1 deletion(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7a7f2f722e..fd659b59f8 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -16154,13 +16154,120 @@ language.") (("!__x86_64__") "0")))))) (build-system cmake-build-system) (arguments - (list #:tests? #f)) ; no tests + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + ;; Adapted from .github/workflows/test_on_push.yml + (lambda* (#:key tests? inputs #:allow-other-keys) + (when tests? + (let ((samtools (search-input-file inputs "/bin/samtools"))) + ;; This is the easiest way to access the data + ;; needed for the test suite. + (symlink (string-append "../wfmash-v" #$version "/data") + "data") + (and + ;; This test takes 60 minutes on riscv64-linux. + #$@(if (not (target-riscv64?)) + #~((begin + ;; Test with a subset of the LPA dataset (PAF output) + (setenv "ASAN_OPTIONS" "detect_leaks=1:symbolize=1") + (setenv "LSAN_OPTIONS" "verbosity=0:log_threads=1") + (with-output-to-file "LPA.subset.paf" + (lambda _ + (invoke "bin/wfmash" + "data/LPA.subset.fa.gz" + "data/LPA.subset.fa.gz" + "-X" "-n" "10" "-T" "wflign_info." + "-u" "./"))) + (invoke "head" "LPA.subset.paf"))) + #~()) + ;; This test takes about 5 hours on riscv64-linux. + #$@(if (not (target-riscv64?)) + #~((begin + ;; Test with a subset of the LPA dataset (SAM output) + (setenv "ASAN_OPTIONS" "detect_leaks=1:symbolize=1") + (setenv "LSAN_OPTIONS" "verbosity=0:log_threads=1") + (with-output-to-file "LPA.subset.sam" + (lambda _ + (invoke "bin/wfmash" + "data/LPA.subset.fa.gz" + "data/LPA.subset.fa.gz" + "-X" "-N" "-a" "-T" "wflign_info."))) + (with-output-to-file "LPA.subset.sam-view" + (lambda _ + (invoke samtools "view" "LPA.subset.sam" "-bS"))) + (with-output-to-file "LPA.subset.bam" + (lambda _ + (invoke samtools "sort" "LPA.subset.sam-view"))) + (invoke samtools "index" "LPA.subset.bam") + ;; samtools view LPA.subset.bam | head | cut -f 1-9 + ;(invoke samtools "view" "LPA.subset.bam") + ;; There should be an easier way to do this with pipes. + (with-output-to-file "LPA.subset.bam-incr1" + (lambda _ + (invoke samtools "view" "LPA.subset.bam"))) + (with-output-to-file "LPA.subset.bam-incr2" + (lambda _ + (invoke "head" "LPA.subset.bam-incr1"))) + (invoke "cut" "-f" "1-9" "LPA.subset.bam-incr2"))) + #~()) + ;; This test takes 60 minutes on riscv64-linux. + #$@(if (not (target-riscv64?)) + #~((begin + ;; Test with a subset of the LPA dataset, + ;; setting a lower identity threshold (PAF output) + (setenv "ASAN_OPTIONS" "detect_leaks=1:symbolize=1") + (setenv "LSAN_OPTIONS" "verbosity=0:log_threads=1") + (with-output-to-file "LPA.subset.p90.paf" + (lambda _ + (invoke "bin/wfmash" + "data/LPA.subset.fa.gz" + "data/LPA.subset.fa.gz" + "-X" "-p" "90" "-n" "10" + "-T" "wflign_info."))) + (invoke "head" "LPA.subset.p90.paf"))) + #~()) + (begin + ;; Test aligning short reads (500 bps) to a reference (SAM output) + (setenv "ASAN_OPTIONS" "detect_leaks=1:symbolize=1") + (setenv "LSAN_OPTIONS" "verbosity=0:log_threads=1") + (with-output-to-file "reads.500bps.sam" + (lambda _ + (invoke "bin/wfmash" + "data/reference.fa.gz" + "data/reads.500bps.fa.gz" + "-s" "0.5k" "-N" "-a"))) + (with-output-to-file "reads.500bps.sam-view" + (lambda _ + (invoke samtools "view" "reads.500bps.sam" "-bS"))) + (with-output-to-file "reads.500bps.bam" + (lambda _ + (invoke samtools "sort" "reads.500bps.sam-view"))) + (invoke samtools "index" "reads.500bps.bam") + (with-output-to-file "reads.500bps.bam-view" + (lambda _ + (invoke samtools "view" "reads.500bps.bam"))) + (invoke "head" "reads.500bps.bam-view")) + (begin + ;; Test with few very short reads (255bps) (PAF output) + (setenv "ASAN_OPTIONS" "detect_leaks=1:symbolize=1") + (setenv "LSAN_OPTIONS" "verbosity=0:log_threads=1") + (with-output-to-file "reads.255bps.paf" + (lambda _ + (invoke "bin/wfmash" + "data/reads.255bps.fa.gz" + "data/reads.255bps.fa.gz" + "-X" "-w" "16"))) + (invoke "head" "reads.255bps.paf")))))))))) (inputs (list atomic-queue gsl htslib jemalloc zlib)) + (native-inputs + (list samtools)) (synopsis "Base-accurate DNA sequence aligner") (description "@code{wfmash} is a DNA sequence read mapper based on mash distances and the wavefront alignment algorithm. It is a fork of MashMap that -- cgit v1.2.3 From 05e68f31ba88586ba6b958b1a76f613f64c0c9cc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 31 Mar 2022 16:01:27 +0200 Subject: gnu: python-velocyto: Set cache directory for Numba. * gnu/packages/bioinformatics.scm (python-velocyto)[arguments]: Add phase 'set-numba-cache-dir. --- gnu/packages/bioinformatics.scm | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index fd659b59f8..fd7d70c6b4 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -13519,6 +13519,13 @@ repeated areas between contigs.") (snippet '(for-each delete-file (find-files "." "\\.c"))))) (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + ;; Numba needs a writable dir to cache functions. + (add-before 'check 'set-numba-cache-dir + (lambda _ + (setenv "NUMBA_CACHE_DIR" "/tmp")))))) (native-inputs (list python-joblib)) (propagated-inputs -- cgit v1.2.3 From 855c8d9d41ef2f5d8c9a2fc952a27eda32105585 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 4 Apr 2022 22:41:54 +0300 Subject: gnu: smithwaterman: Fix cross-compiling. * gnu/packages/bioinformatics.scm (smithwaterman)[arguments]: Add make-flag to use cxx-for-target. Adjust custom 'patch-source and 'build-dynamic phases to use cross toolchain binaries when cross compiling. Remove trailing #t from phases. --- gnu/packages/bioinformatics.scm | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index fd7d70c6b4..b52fa1a61a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -14182,7 +14182,8 @@ some of the details of opening and jumping in tabix-indexed files.") (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests to run. - #:make-flags '("libsw.a" "all") + #:make-flags (list (string-append "CXX=" ,(cxx-for-target)) + "libsw.a" "all") #:phases (modify-phases %standard-phases (delete 'configure) ; There is no configure phase. @@ -14190,10 +14191,14 @@ some of the details of opening and jumping in tabix-indexed files.") (lambda _ (substitute* "Makefile" (("-c ") "-c -fPIC ")) - #t)) + ,@(if (%current-target-system) + `((substitute* "Makefile" + (("ld") (string-append ,(%current-target-system) "-ld")) + (("ar") (string-append ,(%current-target-system) "-ar")))) + '()))) (add-after 'build 'build-dynamic (lambda _ - (invoke "g++" + (invoke ,(cxx-for-target) "-shared" "-o" "libsmithwaterman.so" "smithwaterman.o" "SmithWatermanGotoh.o" "disorder.o" "BandedSmithWaterman.o" @@ -14224,8 +14229,7 @@ some of the details of opening and jumping in tabix-indexed files.") Description: smith-waterman-gotoh alignment algorithm~@ Libs: -L${libdir} -lsmithwaterman~@ Cflags: -I${includedir}~%" - out ,version)))) - #t))))) + out ,version))))))))) (home-page "https://github.com/ekg/smithwaterman") (synopsis "Implementation of the Smith-Waterman algorithm") (description "Implementation of the Smith-Waterman algorithm.") -- cgit v1.2.3 From c1fc65ecb63b725ab770f20a3221be83f64dc68c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 4 Apr 2022 22:45:37 +0300 Subject: gnu: smithwaterman: Use new style for phases. * gnu/packages/bioinformatics.scm (smithwaterman)[arguments]: Use list of G-Expressions. --- gnu/packages/bioinformatics.scm | 98 +++++++++++++++++++++-------------------- 1 file changed, 50 insertions(+), 48 deletions(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b52fa1a61a..82d9a3eca6 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -14181,55 +14181,57 @@ some of the details of opening and jumping in tabix-indexed files.") (base32 "0i9d8zrxpiracw3mxzd9siybpy62p06rqz9mc2w93arajgbk45bs")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; There are no tests to run. - #:make-flags (list (string-append "CXX=" ,(cxx-for-target)) - "libsw.a" "all") + (list + #:tests? #f ; There are no tests to run. + #:make-flags + #~(list (string-append "CXX=" #$(cxx-for-target)) + "libsw.a" "all") #:phases - (modify-phases %standard-phases - (delete 'configure) ; There is no configure phase. - (add-after 'unpack 'patch-source - (lambda _ - (substitute* "Makefile" - (("-c ") "-c -fPIC ")) - ,@(if (%current-target-system) - `((substitute* "Makefile" - (("ld") (string-append ,(%current-target-system) "-ld")) - (("ar") (string-append ,(%current-target-system) "-ar")))) - '()))) - (add-after 'build 'build-dynamic - (lambda _ - (invoke ,(cxx-for-target) - "-shared" "-o" "libsmithwaterman.so" - "smithwaterman.o" "SmithWatermanGotoh.o" - "disorder.o" "BandedSmithWaterman.o" - "LeftAlign.o" "Repeats.o" "IndelAllele.o"))) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (lib (string-append out "/lib"))) - (install-file "smithwaterman" bin) - (for-each - (lambda (file) - (install-file file (string-append out "/include/smithwaterman"))) - (find-files "." "\\.h$")) - (install-file "libsmithwaterman.so" lib) - (install-file "libsw.a" lib) - (mkdir-p (string-append lib "/pkgconfig")) - (with-output-to-file (string-append lib "/pkgconfig/smithwaterman.pc") - (lambda _ - (format #t "prefix=~a~@ - exec_prefix=${prefix}~@ - libdir=${exec_prefix}/lib~@ - includedir=${prefix}/include/smithwaterman~@ - ~@ - ~@ - Name: smithwaterman~@ - Version: ~a~@ - Description: smith-waterman-gotoh alignment algorithm~@ - Libs: -L${libdir} -lsmithwaterman~@ - Cflags: -I${includedir}~%" - out ,version))))))))) + #~(modify-phases %standard-phases + (delete 'configure) ; There is no configure phase. + (add-after 'unpack 'patch-source + (lambda _ + (substitute* "Makefile" + (("-c ") "-c -fPIC ")) + #$@(if (%current-target-system) + #~((substitute* "Makefile" + (("ld") (string-append #$(%current-target-system) "-ld")) + (("ar") (string-append #$(%current-target-system) "-ar")))) + '()))) + (add-after 'build 'build-dynamic + (lambda _ + (invoke #$(cxx-for-target) + "-shared" "-o" "libsmithwaterman.so" + "smithwaterman.o" "SmithWatermanGotoh.o" + "disorder.o" "BandedSmithWaterman.o" + "LeftAlign.o" "Repeats.o" "IndelAllele.o"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (lib (string-append out "/lib"))) + (install-file "smithwaterman" bin) + (for-each + (lambda (file) + (install-file file (string-append out "/include/smithwaterman"))) + (find-files "." "\\.h$")) + (install-file "libsmithwaterman.so" lib) + (install-file "libsw.a" lib) + (mkdir-p (string-append lib "/pkgconfig")) + (with-output-to-file (string-append lib "/pkgconfig/smithwaterman.pc") + (lambda _ + (format #t "prefix=~a~@ + exec_prefix=${prefix}~@ + libdir=${exec_prefix}/lib~@ + includedir=${prefix}/include/smithwaterman~@ + ~@ + ~@ + Name: smithwaterman~@ + Version: ~a~@ + Description: smith-waterman-gotoh alignment algorithm~@ + Libs: -L${libdir} -lsmithwaterman~@ + Cflags: -I${includedir}~%" + out #$version))))))))) (home-page "https://github.com/ekg/smithwaterman") (synopsis "Implementation of the Smith-Waterman algorithm") (description "Implementation of the Smith-Waterman algorithm.") -- cgit v1.2.3 From 345f79b2cf02ecd187a1e3c922f685f3fc58bf2e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 4 Apr 2022 22:58:25 +0300 Subject: gnu: freebayes: Fix test suite. * gnu/packages/bioinformatics.scm (freebayes)[native-inputs]: Add python. --- gnu/packages/bioinformatics.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 82d9a3eca6..eed7e54f7f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -14512,6 +14512,7 @@ manipulations on VCF files.") ("parallel" ,parallel) ("perl" ,perl) ("pkg-config" ,pkg-config) + ("python" ,python) ("samtools" ,samtools) ("simde" ,simde) ;; This submodule is needed to run the tests. -- cgit v1.2.3 From 5d1c9fcdcf81bb95516f2d44e293c760300c9589 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 5 Apr 2022 17:26:00 +0200 Subject: gnu: pigx-scrnaseq: Update to 1.1.8. * gnu/packages/bioinformatics.scm (pigx-scrnaseq): Update to 1.1.8. [patches]: Remove. [native-inputs]: Remove. * gnu/packages/patches/pigx-scrnaseq-no-citeproc.patch: Remove file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/bioinformatics.scm | 12 ++------ .../patches/pigx-scrnaseq-no-citeproc.patch | 33 ---------------------- 3 files changed, 3 insertions(+), 43 deletions(-) delete mode 100644 gnu/packages/patches/pigx-scrnaseq-no-citeproc.patch (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/local.mk b/gnu/local.mk index f5e2702031..420aa91d86 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1627,7 +1627,6 @@ dist_patch_DATA = \ %D%/packages/patches/pidgin-add-search-path.patch \ %D%/packages/patches/pigx-bsseq-no-citeproc.patch \ %D%/packages/patches/pigx-chipseq-no-citeproc.patch \ - %D%/packages/patches/pigx-scrnaseq-no-citeproc.patch \ %D%/packages/patches/pinball-system-ltdl.patch \ %D%/packages/patches/pingus-boost-headers.patch \ %D%/packages/patches/pingus-sdl-libs-config.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index eed7e54f7f..3ad8800fdb 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -11132,7 +11132,7 @@ methylation and segmentation.") (define-public pigx-scrnaseq (package (name "pigx-scrnaseq") - (version "1.1.7") + (version "1.1.8") (source (origin (method url-fetch) (uri (string-append "https://github.com/BIMSBbioinfo/pigx_scrnaseq/" @@ -11140,20 +11140,14 @@ methylation and segmentation.") "/pigx_scrnaseq-" version ".tar.gz")) (sha256 (base32 - "1h5mcxzwj3cidlkvy9ly5wmi48vwfsjf8dxjfirknqxr9a92hwlx")) - (patches (search-patches "pigx-scrnaseq-no-citeproc.patch")))) + "1lc42hl8mz95kilh0z39s3wnv092mhm6vl2i394n0yfvdzk4f885")))) (build-system gnu-build-system) (arguments - `(#:phases + '(#:phases (modify-phases %standard-phases - (add-before 'bootstrap 'autoreconf - (lambda _ - (invoke "autoreconf" "-vif"))) (add-before 'configure 'set-PYTHONPATH (lambda _ (setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH"))))))) - (native-inputs - (list automake autoconf)) (inputs `(("coreutils" ,coreutils) ("perl" ,perl) diff --git a/gnu/packages/patches/pigx-scrnaseq-no-citeproc.patch b/gnu/packages/patches/pigx-scrnaseq-no-citeproc.patch deleted file mode 100644 index 4cce33fb01..0000000000 --- a/gnu/packages/patches/pigx-scrnaseq-no-citeproc.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -Naur pigx_scrnaseq-1.1.7/configure.ac pigx_scrnaseq-1.1.7.patched/configure.ac ---- pigx_scrnaseq-1.1.7/configure.ac 2020-03-17 14:37:46.000000000 +0100 -+++ pigx_scrnaseq-1.1.7.patched/configure.ac 2021-10-06 13:55:49.779271317 +0200 -@@ -43,7 +43,6 @@ - find_or_override_prog([GNUBASH], [bash]) - find_or_override_prog([SNAKEMAKE], [snakemake]) - find_or_override_prog([PANDOC], [pandoc]) --find_or_override_prog([PANDOC_CITEPROC], [pandoc-citeproc]) - find_or_override_prog([FASTQC], [fastqc]) - find_or_override_prog([STAR], [STAR]) - find_or_override_prog([SAMTOOLS], [samtools]) -diff -Naur pigx_scrnaseq-1.1.7/Makefile.in pigx_scrnaseq-1.1.7.patched/Makefile.in ---- pigx_scrnaseq-1.1.7/Makefile.in 2020-11-30 16:55:48.000000000 +0100 -+++ pigx_scrnaseq-1.1.7.patched/Makefile.in 2021-10-06 13:55:52.224340194 +0200 -@@ -395,7 +395,6 @@ - PACKAGE_URL = @PACKAGE_URL@ - PACKAGE_VERSION = @PACKAGE_VERSION@ - PANDOC = @PANDOC@ --PANDOC_CITEPROC = @PANDOC_CITEPROC@ - PATH_SEPARATOR = @PATH_SEPARATOR@ - PERL = @PERL@ - PYTHON = @PYTHON@ -diff -Naur pigx_scrnaseq-1.1.7/pigx-scrnaseq.in pigx_scrnaseq-1.1.7.patched/pigx-scrnaseq.in ---- pigx_scrnaseq-1.1.7/pigx-scrnaseq.in 2020-11-30 16:08:55.000000000 +0100 -+++ pigx_scrnaseq-1.1.7.patched/pigx-scrnaseq.in 2021-10-06 13:55:47.889218079 +0200 -@@ -274,7 +274,6 @@ - if path.exists(bin): shutil.rmtree(bin) - os.makedirs(bin, exist_ok=True) - os.symlink('@PANDOC@', path.join(bin, "pandoc")) -- os.symlink('@PANDOC_CITEPROC@', path.join(bin, "pandoc-citeproc")) - os.symlink('@RSCRIPT@', path.join(bin, "Rscript")) - os.environ['PATH'] = path.abspath(bin) + ":" + os.environ['PATH'] - os.environ['PIGX_PATH'] = path.abspath(bin) + ":" + os.environ['PATH'] -- cgit v1.2.3 From e721122069528b38e9dc901c4ca69acba0df5aea Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 5 Apr 2022 17:26:53 +0200 Subject: gnu: pigx-scrnaseq: Use new inputs style. * gnu/packages/bioinformatics.scm (pigx-scrnaseq)[inputs]: Use plain list. --- gnu/packages/bioinformatics.scm | 85 +++++++++++++++++++++-------------------- 1 file changed, 43 insertions(+), 42 deletions(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3ad8800fdb..5ca1104436 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -11149,50 +11149,51 @@ methylation and segmentation.") (lambda _ (setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH"))))))) (inputs - `(("coreutils" ,coreutils) - ("perl" ,perl) - ("fastqc" ,fastqc) - ("flexbar" ,flexbar) - ("java" ,icedtea-8) - ("jellyfish" ,jellyfish) - ("python-wrapper" ,python-wrapper) - ("python-pyyaml" ,python-pyyaml) - ("python-pandas" ,python-pandas) - ("python-magic" ,python-magic) - ("python-numpy" ,python-numpy) - ("python-loompy" ,python-loompy) - ("pandoc" ,pandoc) - ("samtools" ,samtools) - ("snakemake" ,snakemake) - ("star" ,star-for-pigx) - ("r-minimal" ,r-minimal) - ("r-argparser" ,r-argparser) - ("r-cowplot" ,r-cowplot) - ("r-data-table" ,r-data-table) - ("r-delayedarray" ,r-delayedarray) - ("r-delayedmatrixstats" ,r-delayedmatrixstats) - ("r-dplyr" ,r-dplyr) - ("r-dropbead" ,r-dropbead) - ("r-dt" ,r-dt) - ("r-genomicalignments" ,r-genomicalignments) - ("r-genomicfiles" ,r-genomicfiles) - ("r-genomicranges" ,r-genomicranges) - ("r-ggplot2" ,r-ggplot2) - ("r-hdf5array" ,r-hdf5array) - ("r-pheatmap" ,r-pheatmap) - ("r-rmarkdown" ,r-rmarkdown) - ("r-rsamtools" ,r-rsamtools) - ("r-rtracklayer" ,r-rtracklayer) - ("r-rtsne" ,r-rtsne) - ("r-scater" ,r-scater) - ("r-scran" ,r-scran) - ("r-seurat" ,r-seurat) - ("r-singlecellexperiment" ,r-singlecellexperiment) - ("r-stringr" ,r-stringr) - ("r-yaml" ,r-yaml))) + (list coreutils + perl + fastqc + flexbar + icedtea-8 + jellyfish + python-wrapper + python-pyyaml + python-pandas + python-magic + python-numpy + python-loompy + pandoc + samtools + snakemake + star-for-pigx + r-minimal + r-argparser + r-cowplot + r-data-table + r-delayedarray + r-delayedmatrixstats + r-dplyr + r-dropbead + r-dt + r-genomicalignments + r-genomicfiles + r-genomicranges + r-ggplot2 + r-hdf5array + r-pheatmap + r-rmarkdown + r-rsamtools + r-rtracklayer + r-rtsne + r-scater + r-scran + r-seurat + r-singlecellexperiment + r-stringr + r-yaml)) (home-page "https://bioinformatics.mdc-berlin.de/pigx/") (synopsis "Analysis pipeline for single-cell RNA sequencing experiments") - (description "PiGX scRNAseq is an analysis pipeline for preprocessing and + (description + "PiGX scRNAseq is an analysis pipeline for preprocessing and quality control for single cell RNA sequencing experiments. The inputs are read files from the sequencing experiment, and a configuration file which describes the experiment. It produces processed files for downstream analysis -- cgit v1.2.3 From df2dc0c41644477c8cc3ccc958b822f8440114ef Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 5 Apr 2022 18:35:14 +0200 Subject: gnu: pigx-scrnaseq: Set NUMBA_CACHE_DIR. This is needed since the update of python-loompy. * gnu/packages/bioinformatics.scm (pigx-scrnaseq)[arguments]: Rename 'set-PYTHONPATH to 'set-additional-environment-variables and set NUMBA_CACHE_DIR. --- gnu/packages/bioinformatics.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 5ca1104436..e9778831d2 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -11145,8 +11145,11 @@ methylation and segmentation.") (arguments '(#:phases (modify-phases %standard-phases - (add-before 'configure 'set-PYTHONPATH + (add-before 'configure 'set-additional-environment-variables (lambda _ + ;; Needed because of loompy + (setenv "NUMBA_CACHE_DIR" "/tmp") + ;; Needed to capture environment (setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH"))))))) (inputs (list coreutils -- cgit v1.2.3 From e3e3381fdbc56f351063d9b4a49e99645b20d7d3 Mon Sep 17 00:00:00 2001 From: Hong Li Date: Tue, 29 Mar 2022 07:04:02 +0000 Subject: gnu: Add r-rnaseqdtu. * gnu/packages/bioinformatics.scm (r-rnaseqdtu): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioinformatics.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index e9778831d2..106b25a50b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -9009,6 +9009,43 @@ for analyzing gene-level association tests in meta-analyses for binary trait.") (license license:gpl3))) +(define-public r-rnaseqdtu + (let ((commit "5bee1e769d2e1dc6a3f1cecb78078050eeb5b9ac") + (revision "1")) + (package + (name "r-rnaseqdtu") + (version (git-version "2.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mikelove/rnaseqDTU/") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0jfi1ydsk8m5nadwnih48v87nnxdc7s3f0pny4axmnj40dd42as0")))) + (properties `((upstream-name . "rnaseqDTU"))) + (build-system r-build-system) + (propagated-inputs + (list r-deseq2 + r-devtools + r-dexseq + r-drimseq + r-edger + r-rafalib + r-stager)) + (native-inputs (list r-knitr)) + (home-page "https://github.com/mikelove/rnaseqDTU/") + (synopsis "RNA-seq workflow for differential transcript usage") + (description + "This package provides an RNA-seq workflow for differential transcript +usage (DTU) following Salmon quantification. This workflow performs a DTU +analysis on simulated data. It also shows how to use stageR to perform +two-stage testing of DTU, a statistical framework to screen at the gene level +and then confirm which transcripts within the significant genes show evidence +of DTU.") + (license license:artistic2.0)))) + (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) -- cgit v1.2.3 From 96a132809f0196d6a08f6c5c6900846d9859beb2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 10 Apr 2022 20:46:01 +0300 Subject: gnu: smithwaterman: Fix cross-compiling. The 'ar' matched the 'ar' in 'aarch64-linux-gnu' to unfun consequences. * gnu/packages/bioinformatics.scm (smithwaterman)[arguments]: More closely match the 'ar' and 'ld' commands when substituting them. --- gnu/packages/bioinformatics.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gnu/packages/bioinformatics.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 106b25a50b..0755b035e6 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -14230,8 +14230,10 @@ some of the details of opening and jumping in tabix-indexed files.") (("-c ") "-c -fPIC ")) #$@(if (%current-target-system) #~((substitute* "Makefile" - (