Software Management System

Environment Modules is a system for dynamically loading software packages into your environment using a command line tool called module. Software packages are installed in a central location by the APPLICATE support team and then a modulefile is built for the software which modifies your environment when you load the corresponding module.


List available Software Modules

Syntax to list all available modules:

~#module avail 
benchmark/IMB-4.1           hdf5/1.8.17
benchmark/IOR-2.10.3-xenial nco/4.6.0
cdo/1.7.2                   nco/4.6.9
ESA-Tools/4.0               netcdf/4.4.1
ESA-Tools/5.0               netcdf/4.5.0
ESA-Tools/6.0pre            netcdf-fortran/4.4.4
ESA-Tools/BRAT-4.0beta      netcdf-fortran/4.5.0
fyba/master                 panoply/4.5.1
gdal/2.1.1                  perf/kernel-4.1.13
gdal/2.2.1                  pnetcdf/1.7.0
gdal/python2/2.2.2          pnetcdf/1.9pre
gdal/python3/2.2.2          R/R-3.2.1-met
grib_api/1.16.0             R/R-3.3.1-met
hdf4/4.2.12                 R/R-3.4.3-met
hdf5/1.10.1                 ...


Description of a software module

Modules are typically prepending/appending environment variables like $PATH, $LD_LIBRARY_PATH to your environment.


~#module show netcdf/4.5.0

module-whatis     NETCDF 4.5.0 
prepend-path     PATH /modules/xenial/NETCDF/4.5.0//bin 
prepend-path     LD_LIBRARY_PATH /modules/xenial/NETCDF/4.5.0//lib 
prepend-path     --delim   CPPFLAGS -I/modules/xenial/NETCDF/4.5.0//include 
prepend-path     --delim   LDFLAGS -L/modules/xenial/NETCDF/4.5.0//lib 
module         add hdf5/1.10.1 


Load/Unload/Purge modules

Load a specific version of a module

~#module load module_name/version

To unload a module

~#module unload module_name

Purge the whole module environment

~#module purge