Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
Efraim Flashner 83f4406dcb
gn: new julia packages
11 ore fa
gn gn: new julia packages 11 ore fa
.gitignore Ignore editor temporary files 3 anni fa
.guix-channel Update .guix-channel 6 mesi fa
LICENSE LICENSE 6 anni fa
README.org gemma-gn2: updated to latest 6 mesi fa
VERSION Add guix pull version 1 giorno fa
arrayfire-lapack-detection.patch gn: Fix building arrayfire. 2 anni fa
arrayfire-newer-boost-compute.patch gn: Fix building arrayfire. 2 anni fa
delly-use-system-libraries.patch Add delly. 5 anni fa
gnulib-gets.patch gn: Add octave@3.4.3. 2 anni fa
htslib-add-cram_to_bam.patch Cleaner patch file. 5 anni fa
keras-auc-optimizer.patch gn: Fix ratspub python error. 1 anno fa
ldc-disable-tests2.patch LDC 3 anni fa
ldc-druntime-finiTLSRanges.patch Patching Druntime for sambamba 4 anni fa
mongodb-add-version-file.patch Add mongodb. 5 anni fa
octave-nested-class.patch gn: Add octave@3.4.3. 2 anni fa
plink-ng-Makefile-zlib.patch plink2 installs with patched Makefile 5 anni fa
python-twint-mentions.patch gn: python-twint: Patch twint to fix some bugs 6 mesi fa
python-twint-token.patch gn: python-twint: Patch Token class in order to get refreshTokens 5 mesi fa
python-twint-userlist.patch gn: python-twint: Patch twint to fix some bugs 6 mesi fa
python2-htmlgen-Applied-Deb-patch.patch python2-htmlgen patches 5 anni fa
python2-htmlgen-Fix-test-for-random.patch Fix name of patch 5 anni fa

README.org

guix-bioinformatics

Bioinformatics packages for GNU Guix that are used in http://genenetwork.org/ and some other places. See Guix notes for installing and hacking GNU Guix. Other channels of bioinformatics interest can be found at

  1. https://github.com/BIMSBbioinfo

  2. https://github.com/UMCUGenetics/guix-additions

  3. https://github.com/ekg/guix-genomics

Also see Guix notes for a list of channels.

To easily use the packages from this repo, simply add it to your `channels` list in ~/.config/guix/channels.scm as described here:

    (cons*
      (channel
        (name 'gn-bioinformatics)
        (url "https://git.genenetwork.org/guix-bioinformatics/guix-bioinformatics.git")
        (branch "master"))
      %default-channels)

and run `guix pull` like normal to update your software. This is the recommended way to use the software from this repository and the code snippets in this README assume you have done so.

If you want to make changes to the packages in this repo then simply set the GUIX_PACKAGE_PATH to point to the root of this directory before running Guix. E.g.

    git clone https://git.genenetwork.org/guix-bioinformatics/guix-bioinformatics.git
    git clone https://gitlab.inria.fr/guix-hpc/guix-past.git
    export GUIX_PACKAGE_PATH=$PWD/guix-bioinformatics/:$PWD/guix-past/modules
    guix package -A cwl

or using a checked out Guix repo with

env GUIX_PACKAGE_PATH=$genenetwork/guix-bioinformatics/ ./pre-inst-env guix package -A cwl

Some (or most) of these package definitions should make it upstream into the GNU Guix repository when tested and stable.

Slurm and munge

Install slurm with

    guix pull
    guix package -i slurm-llnl

    ~/.guix-profile/sbin/slurmd -C -D
      ClusterName=(null) NodeName=selinunte CPUs=4 Boards=1 SocketsPerBoard=1 CoresPerSocket=2 ThreadsPerCore=2 RealMemory=7890 TmpDisk=29909

Common Workflow Language (CWL)

Note that CWL moved into Guix master!

Install the common workflow language tool cwltool from this repo with


    guix pull
    export PATH=$HOME/.config/guix/current/bin/guix:$PATH
    ~/guix-bioinformatics$ env GUIX_PACKAGE_PATH=.:../guix-past/modules/ ~/.config/guix/current/bin/guix package -i cwl-runner -p ~/opt/CWL

The following package will be installed:
   cwl-runner 1.0

The following derivations will be built:
   /gnu/store/ld59374zr45rbqanh7ccfi2wa4d5x4yl-cwl-runner-1.0.drv
   /gnu/store/86j15mxj5zp3k3sjimhqhb6zsj19azsf-python-schema-salad-7.0.20200811075006.drv
   /gnu/store/0q2ls0is3253r4gx6hs7kmvlcz412lh1-schema-salad-7.0.20200811075006.tar.gz.drv
   /gnu/store/myj1365ph687ynahjhg6zqslrmd6zpjq-cwltool-3.0.20201117141248.drv

source ~/opt/CWL/etc/profile
cwltool --version
  /gnu/store/50mncjcgc8vmq5dfrh0pb82avbzy8c4r-cwltool-3.0.20201117141248/bin/.cwltool-real 3.0

To run CWL definitions you can install tools in a Guix environment (avoiding Docker). Say you need mafft in a workflow

    ~/guix-bioinformatics$ env GUIX_PACKAGE_PATH=.:../guix-past/modules/ ~/.config/guix/current/bin/guix environment \
       guix --ad-hoc cwl-runner mafft

in the new shell you should be able to find both CWL and MAFFT:

ls $GUIX_ENVIRONMENT/bin/cwl*
/gnu/store/bhfc5rk29s38w9kgcl4zmcdlh369y9f9-profile/bin/cwl-runner
/gnu/store/bhfc5rk29s38w9kgcl4zmcdlh369y9f9-profile/bin/cwltool
ls $GUIX_ENVIRONMENT/bin/mafft
/gnu/store/bhfc5rk29s38w9kgcl4zmcdlh369y9f9-profile/bin/mafft

The paths can be loaded into the shell with

source $GUIX_ENVIRONMENT/etc/profile

Module system

For those who think they need modules: install the module environment with

    guix pull
    guix package -i environment-modules

    modulecmd --version
      VERSION=3.2.10
      DATE=2012-12-21

Note that GNU Guix supercedes module functionality!

Development tips

Override individual packages

The cheerful way of overriding a version of a package:

    (use-modules (guix) (gnu packages emacs))

    (package
      (inherit emacs)
      (name "emacs-snapshot")
      (source "/path/to/some-file-or-directory.tar.gz"))

and then run:

guix package --install-from-file=that-file.scm

LICENSE

These package descriptions (so-called Guix expressions) are distributed by the same license as GNU Guix, i.e. GPL3+