Skip to content

module-manager

module-manager deploys versioned Python, Rust, shell, and collective CLI environments behind GNU environment modulefiles for Linux/HPC systems.

It is designed for administrators who want reproducible command-line tool installations under a production prefix such as /prod/tools, with matching modulefiles under a module tree such as /prod/modulefiles.

What It Creates

Each tool version gets its own installation root:

/prod/tools/<name>/<version>/

The executable directory is exposed through the modulefile:

/prod/tools/<name>/<version>/bin

The generated modulefile is written to:

/prod/modulefiles/<name>/<version>

Collective environments use the same layout, but several tools share one versioned bin directory and one modulefile.

Common Workflow

module-manager deploy-python ruff 0.8.0 \
  --package 'ruff==0.8.0' \
  --prefix /prod/tools \
  --module-root /prod/modulefiles \
  --execute-install

module use /prod/modulefiles
module load ruff/0.8.0
ruff --version

Next Steps