#!/usr/bin/env modbuild pbuild::prep() { : } pbuild::configure() { # repo.anaconda.com is unreachable from Ra (GnuTLS error), so no conda. # uv fetches a standalone CPython instead; keep it inside PREFIX so the # venv's interpreter symlinks don't depend on the builder's home cache. # modbuild's shell strips ~/.local/bin from PATH; override with UV=/path/to/uv if needed UV="${UV:-$HOME/.local/bin/uv}" # ~/.cache/uv hits the home disk quota; cache under PREFIX (removed after install) export UV_CACHE_DIR="/opt/psi/MX/.uv-cache" export UV_PYTHON_INSTALL_DIR="$PREFIX/python" "$UV" venv --python 3.12 "$PREFIX/venv" } pbuild::compile() { : } pbuild::install() { UV="${UV:-$HOME/.local/bin/uv}" export UV_CACHE_DIR="/opt/psi/MX/.uv-cache" # [cuda] extra ships the NVIDIA libs via pip wheels; works on CPU-only nodes too "$UV" pip install --python "$PREFIX/venv/bin/python" "careless[cuda]==${V_PKG}" }