Deploy Python, Rust, and shell CLI tools behind GNU environment modulefiles
Project description
module-manager
module-manager deploys versioned Python, Rust, and shell CLI tools behind GNU
environment modulefiles for Linux/HPC systems.
It writes tools and modulefiles into predictable versioned locations:
/prod/tools/<name>/<version>/bin
/prod/modulefiles/<name>/<version>
Quick Start
Deploy a Python CLI with uv tool install:
module-manager deploy-python ruff 0.8.0 \
--package 'ruff==0.8.0' \
--prefix /prod/tools \
--module-root /prod/modulefiles \
--execute-install
Deploy a Rust binary:
module-manager deploy-rust ripgrep 14.1.1 \
--binary ./target/release/rg \
--prefix /prod/tools \
--module-root /prod/modulefiles
Deploy a shell script:
module-manager deploy-script my-tool 1.0.0 \
--script ./scripts/my-tool \
--prefix /prod/tools \
--module-root /prod/modulefiles
Use the generated module:
module use /prod/modulefiles
module load ruff
ruff --version
Deployments make the deployed version the module default. Add --no-default
when you want to write the versioned modulefile without changing the default.
Remove a deployed version:
module-manager uninstall ruff 0.8.0 \
--prefix /prod/tools \
--module-root /prod/modulefiles
Documentation
Full documentation lives in docs/ and can be served with MkDocs:
uv run mkdocs serve
Start with docs/index.md for installation, configuration, Python tools, Rust
tools, shell scripts, uninstall, and local development notes.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file env_module_manager-0.2.0.tar.gz.
File metadata
- Download URL: env_module_manager-0.2.0.tar.gz
- Upload date:
- Size: 80.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.14.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50b5a7d358bdf036bbf849c8487ef6bb8950c786d26851d923a5d3639e6106ec
|
|
| MD5 |
fbc22e70d4303b952698c5c822d74510
|
|
| BLAKE2b-256 |
cb1d9a9dcb74de97c5212bdfcd0351b44f3df0115bb23147589d8f3e058274c9
|
File details
Details for the file env_module_manager-0.2.0-py3-none-any.whl.
File metadata
- Download URL: env_module_manager-0.2.0-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.14.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5750a529c962efb281d1f084e93dc5bede88959c889a92ab9d5dab02c1a10125
|
|
| MD5 |
ae77db5e3c66986d8f2b8a3dae6bd659
|
|
| BLAKE2b-256 |
5a07227969f3211ebde66ba787d5a626c5e80f339a8543e45fec21d1d48b45e6
|