We recommend using either module or conda environnement to manage your softwares.

Module Environment


Module environment is useful to load specific software environment.

module --help
module list #list loaded tools
module avail #list available tools
module load modulename #to load a tool
module load modulename/version #to load a specific version of a tool
module remove modulename #to remove a tool from your environment
module whatis modulename #show description of a tool

Each user can load automatically a module at login :

module initadd modulename

Create a module

Users can create their own modules.

Ex for samtools :

cd /SCRATCH-BIRD/users/mylogin
mkdir -p modules/samtools
nano samtools/1.4.lua

1.4.lua file content (add samtools paths) :

whatis("Name: samtools")
whatis("Version: 1.4")

local pkgName = myModuleName()
local pkgVersion = myModuleVersion()
local pkgNameVer = myModuleFullName()

local base = pathJoin("/SCRATCH-BIRD/users/mylogin/mypath/binaries",pkgName,pkgVersion)

prepend_path("PATH", pathJoin(base,"bin"))

Use aliases with module

Users can define alias with module, for example to launch a Java command :

Il est possible de définir des alias dans l'environement module.
Exemple de l'utilisation de GATK (programme java sous forme de jar):

whatis("Name: gatk")
whatis("Version: 3.8")


local pkgName = myModuleName()
local pkgVersion = myModuleVersion()
local pkgNameVer = myModuleFullName()

local base = pathJoin("/sandbox/apps/bioinfo/binaries",pkgName,pkgVersion)

prepend_path("PATH", pathJoin(base,"bin"))

set_alias("gatk", "java -Xmx2g -jar /sandbox/apps/bioinfo/binaries/gatk/3.8/GenomeAnalysisTK.jar")

Then, you can simply use

gatk [-T DepthOfCoverage]

instead of

java -Xmx2g -jar /sandbox/apps/bioinfo/binaries/gatk/GenomeAnalysisTK-3.3.0/GenomeAnalysisTK.jar [-T DepthOfCoverage]

Add a local directory in module PATH

module use -a /home/monlogin/modules
module load samtools
module list

This command add the new directory in MODULEPATH environment variable. Then, module command will search for modules in this local directory, additionally to the system directory.

Installed modules

Three main paths for module locations are set on the BiRD Cluster:

  • "/sandbox/apps/systeme/modulefiles" # modules of programming langages and other tools which are not specific to bioinformatics
  • "/sandbox/apps/bioinfo/modulefiles" # modules of bioinformatics tools
  • "/LAB-DATA/BiRD/apps/ifb-nncr/modulesfiles" # modules of tools installed on the IFB core cluster

IFB modules note

Loading a tool from the a IFB module implies adding a conda environment installation path into your environment. Since most tools on the IFB core cluster are installed with conda, this behavior is mandatory. Please note that if you are using your own conda installation (installed in /LAB-DATA or /SCRATCH-BIRD), the IFB conda installation path will be prepended into your PATH environment variable when loading a module. Thus, it is not advised to use at the same time modules and conda environment installed in your personal space.


Conda Environment

Conda environments allow to easly create, use and share software environments.

Use conda environments

We recommend using your own installation of conda.The fastest way to obtain conda is to install Miniconda, a mini version of Anaconda that includes only conda and its dependencies. If you prefer to have conda plus over 720 open source packages, install Anaconda. Conda must not be installed in your /home folder since there is only little space. Specify a folder in your /CONDAS/users/<login> where to install conda.

The installers for miniconda and anaconda can be found here:

List the available environments

conda env list

Load an environment

source activate rnaseq

List binaries in an environment

conda list

Leave an environment

source deactivate

Create an environment

From a file

conda env create -f environment.yml

From scratch

conda create --name rnaseq python

Install a new tool

conda install multiqc

Search for a tool

conda search bwa -c bioconda

Export an environment

conda env export > environnement.yml

Remove a tool

conda remove multiqc

Add a Channel (package repository)

conda config --add channels r

Remove an environment

conda-env remove -n rnaseq