Enabling modules

From Miguel Caro's wiki
Jump to navigation Jump to search

All these instructions assume that you use bash as your shell. If you use something else (e.g., zsh is Aalto Ubuntu's default) then edit the appropriate configuration file instead of ~/.bashrc.

To avoid having to install specialized software on your Aalto machine, we make some programs available over the Aalto network via a module.

To use them, you may need to update the packages in your Ubuntu system. You can use pkcon install ... for that. In a terminal, do:

# Update your system; this is a list of suggested packages:
pkcon update
pkcon install python3-numpy python3-scipy gfortran dh-autoreconf \
              tcl-dev libblas-dev liblapack-dev python3-pip gnuplot \
              openmpi-bin libopenmpi-dev gengetopt libghc-bzlib-dev \
              libx11-dev mesa-common-dev libglu1-mesa-dev python-opengl \
              python-numpy python-epydoc doxygen libfltk1.3-dev \
              libgtk-3-dev python-cairo python-gi-cairo python-cairo-dev \
              libglade2-dev python3-sklearn python3-sklearn-lib \
              python3-cffi meson
# The Numpy version that is distributed with Ubuntu's official repo is too old; update it
pip3 install --upgrade numpy
pip3 install --upgrade scipy

pip3 will add some binaries to ~/.local/bin. Make sure to add it to your path by adding this line to your ~/.bashrc file:

export PATH="~/.local/bin":$PATH

Then, you need to make your shell aware of the modules system. Put these two lines in your ~/.bashrc file:

source /m/teamwork/turbogap/apps/environment-modules/environment_modules_5.0.1/init/profile.sh
export MODULEPATH=/m/teamwork/turbogap/modulefiles

To make the changes available immediately, you need to do source ~/.bashrc. But next time you open a fresh terminal you don't need to source this file anymore.

To show the list of available modules, you can type module avail.

An example of how to use the modules to use ASE:

module load ase/3.22.0

The command above will give you access to the ase command and also to the ASE Python libraries.