The installed careless/0.5.4 venv already contains the NVIDIA wheels ([cuda] extra), which need only the node driver and fall back to CPU, so a separate GPU module and cuda module dep are unnecessary. Revert careless/build to careless[cuda] to match the actual install. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
MX
This project includes all MX modules in use.
All modules are build with modbuild/2.1.2 Documentation for how-to-build modules can be found in: https://github.com/Pmodules/Pmodules/wiki
Pmodules background (from the wiki)
- Modules are organized in hierarchical groups; all modules in this repo belong to the
MXgroup (module use MX). - Filesystem layout: modulefile at
$PREFIX/GROUP/modulefiles/NAME/VERSION, installation at$PREFIX/GROUP/NAME/VERSION, per-version config at$PREFIX/GROUP/modulefiles/NAME/.config-VERSION(YAML). - Release stages: unstable, stable, deprecated. Newly built modules land in unstable; opt in with
module use unstable. - Pmodules automatically sets
$NAME_DIR,$NAME_HOME,$NAME_PREFIX,$NAME_VERSIONon load and prepends standard directories ($PREFIX/bintoPATH,$PREFIX/libtoLD_LIBRARY_PATH, ...) if they exist -- no explicitsetenv/prepend-pathneeded in the modulefile.
Permissions
No need to switch to an -adm account any more: members of the unx-mx_adm group can update the modules in /opt/psi/MX directly. If you run into permission problems, please let the admins know.
Tutorial branches (build-*)
Each participant works on their own build-<module> branch (e.g. build-dials). All of them start from main.
To propagate new material from main to the build-* branches:
While the branches are still identical to main (fast-forward, no force needed):
git push origin main:build-dials main:build-buster main:build-careless main:build-crystfel main:build-phenix main:build-pymol main:build-autoproc main:build-xtrapol8
for b in dials buster careless crystfel phenix pymol autoproc xtrapol8; do
git branch -f build-$b main
done
Once the branches have diverged (people committed on them), merge main into each instead:
for b in dials buster careless crystfel phenix pymol autoproc xtrapol8; do
git checkout build-$b && git merge main && git push
done
git checkout main
If git push origin main:build-xxx fails with "non-fast-forward", the branch has its own commits: switch to the merge loop, do not force-push over other people's work.
Module tips
- modules is name/version (not name/name-version)
- Solution to unbound variables:
/opt/psi/MX/phenix/phenix-1.20-4459/build/setpaths.sh: line 4: LIBTBX_BUILD_RELOCATION_HINT: unbound variableis to addputs stdout "set +x nounset"before the source statement in the modulefile - wait until the tutorial on 18th August 2026