A simple tool for building modulefiles and testing build scripts before building a spack script. It's also useful for when spack fails. More detailed doucmentation for its usage is here.
- jarvis-util: a library which contains various utilities to aid with creating shell scripts within Python.
- LMOD or environment modules
If your machine does not have module support, then install LMOD. LMOD is recommended as it has a few more features, although environment modules is compatible with SCSPKG as well.
We'll repeat the steps used for installing on Ubuntu + bash here. LMOD is installed differently for different distros and different shell types.
sudo apt -y install lmod
nano ~/.bashrc
In your bashrc, append:
if ! shopt -q login_shell; then
if [ -d /etc/profile.d ]; then
for i in /etc/profile.d/*.sh; do
if [ -r $i ]; then
. $i
fi
done
fi
fi
cd /path/to/scspkg
python3 -m pip install -r requirements.txt
python3 -m pip install -e .
SCSPKG_MODULE_DIR=$(scspkg module dir)
echo "module use ${SCSPKG_MODULE_DIR}" >> ~/.bashrc
IMPORTANT NOTE: Sometimes adding "module use" to bashrc doesn't work. The module program may not be quite loaded during bashrc. If you find your custom modules don't work, do the following:
module use `scspkg module dir`
After installing, you'll have to bootstrap scspkg.
scspkg init
module avail #List of available modules
module list #List of currently running modules
module load [package] #Load a module corresponding to a package
module unload [package] #Unload a module
module purge #Unload all modules
scspkg reset