Files
MX_Pmodule/careless
duan_jandClaude Fable 5 b55d6c1d91 Split careless into CPU module and careless-gpu using cuda/12.8.1 module
careless installs plain careless (CPU). careless-gpu also installs plain
careless but declares cuda/12.8.1 as build_requires/runtime_deps
(jfjoch_viewer pattern) instead of pip-bundling CUDA via the [cuda] extra.
Both builds honor UV_CACHE_DIR to share one download cache.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-18 11:07:12 +02:00
..
2026-08-18 10:45:20 +02:00

careless

Scaling and merging of X-ray diffraction data with approximate Bayesian inference (variational merging), built on TensorFlow.

How it is built

Upstream recommends a fresh conda env, but repo.anaconda.com is not reachable from Ra, so the build uses uv instead: it fetches a standalone Python 3.12 into $PREFIX/python (upstream supports >=3.9,<3.13), creates $PREFIX/venv, and runs uv pip install careless==<version> into it. This is the CPU build; the GPU build (with the [cuda] extra and the cluster cuda/12.8.1 module) is the separate careless-gpu module.

To share one uv download cache between the careless and careless-gpu builds, run each with UV_CACHE_DIR=<shared path> modbuild build <version> — a cache outside PREFIX is kept, an in-PREFIX cache is removed after a successful install.

uv must be on PATH on the build host (e.g. pip install --user uv).

Loading the module puts the venv's bin/ on PATH (the careless command is directly available, no activation needed) and sets CARELESS_ENV to the venv path.

Adding a new version

Add the version under versions: in files/config.yaml, then on a Ra login node: modbuild build <version> (modbuild/2.1.2).