Configuration#

General - .bashrc#

Please make sure the following lines are in your ~/.bashrc.

#############################################################
# Lmod
#############################################################
source /usr/share/lmod/lmod/init/bash

#############################################################
# EasyBuild Modules
#############################################################
export MODULEPATH=/apps/easybuild/4.5.4/modules/all

#############################################################
# Spack Modules
#############################################################
export SPACK_ROOT=/apps/spack/0.19.0
source /apps/spack/0.19.0/share/spack/setup-env.sh

#############################################################
# User specific aliases and functions
#############################################################
# Please do not put any functions that are not necessary
# If you plan to use jupyterhub almost anything will clobber your jupyterhub
# Instead, create a .local directory with your scripts, and source as needed
#############################################################

export NXF_ANSI_LOG="False"
export NXF_CONDA_CACHEDIR="${HOME}/.conda/envs"
export NXF_SINGULARITY_CACHEDIR="${HOME}/.singularity"

Package Managers - Cache#

It is highly recommended that you keep your /home directory as clear as possible. A very easy way to fill it up is to use package managers. Most package managers default to caching packages in your home directory.

Many package managers are already configured to write to /apps/users/{USER}/package_manager_dir.

For different package managers you will need to create your own symlinks

# example for ~/.conda
# by default a symlink to /apps is already setup for you. 
# this example is only for demonstration purposes
ls -lah ~/.conda

mkdir -p /apps/users/${USER}/.conda
ln -s -f /apps/users/${USER}/.conda ~/

Singularity + Nextflow#

If you plan to use Nextflow with singularity you will also want to use a global cache.

mkdir -p /apps/users/${USER}/.singularity
ln -s -f /apps/users/${USER}/.singularity ~/

Package Managers - Conda#

This is the recommended .condarc for your system. To learn more about channel priorities and why they are set the way they are please see the bioconda docs.

# This is the recommended conda confiugration
# ~/.condarc
channels:
  - conda-forge
  - bioconda
  - defaults
channel_priority: strict
create_default_packages:
  - ipython
  - ipykernel

You can get this configuration with:

conda config --add channels defaults
conda config --add channels bioconda
conda config --add channels conda-forge
conda config --set channel_priority strict
conda config --add create_default_packages ipykernel
conda config --add create_default_packages ipython

You can learn more about installing software with conda on the install-software page.

Package Managers - R#

We highly recommend that you use conda to bootstrap your R environments.