build had 18 merge-conflict marker lines committed in 6abd7ea, so bash
failed on every hook. Rewritten clean with cd + std::die guards (modbuild
has no errexit in hooks) and an indexamajig existence check after install.
desy.de/~twhite tarball URL hangs (curl: (28) timed out, 0 bytes) from Ra
and outside. Switched urls to the same release tag on gitlab.desy.de and
updated the sha256 for crystfel-0.13.0.tar.gz.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
crystfel
Data processing for serial (femtosecond) crystallography at FELs and synchrotrons: indexamajig, partialator, process_hkl, cell_explorer, the CrystFEL GUI and friends.
- Upstream: https://www.desy.de/~twhite/crystfel/
- License: GPLv3
How it is built
Source tarball of the release tag from DESY GitLab
(https://gitlab.desy.de/thomas.white/crystfel/-/archive//crystfel-.tar.gz,
sha256-verified). The upstream page https://desy.de/~twhite/crystfel/ hangs
(curl: (28) Operation timed out ... 0 bytes received) from Ra and outside,
so it is not used. Built with meson per upstream INSTALL.md:
meson setup build --prefix=$PREFIX && meson compile -C build && meson install -C build.
meson >= 0.60 is required (meson.build) and the Ra system meson is too old:
once per build user run pip3 install --user meson ninja; the build file calls
~/.local/bin/meson and dies with a hint if it is missing.
Upstream warns: do NOT have any conda environment active while building.
Build-host prerequisites (meson, ninja, gcc, and the C libraries: hdf5,
gsl, and optionally cairo/gdk-pixbuf/gtk for the GUI, fftw, zmq) must be
available on the Ra build node -- add build_requires: entries in
files/config.yaml if matching Ra modules are needed.
Loading the module puts $PREFIX/bin on PATH.
Building on Ra
module use unstable && module load modbuild/2.1.3
cd crystfel
modbuild build 0.13.0
module use MX unstable && module load crystfel/0.13.0 && indexamajig --version
Verifying the install
module use MX unstable && module load crystfel/0.13.0
which indexamajig
indexamajig --version
cell_explorer # GUI check, needs X
Adding a new version
Add the version under versions: and its tarball sha256 under shasums:
in files/config.yaml (fetch the GitLab archive URL above with the new tag
and sha256sum it; tag names on GitLab match the release version, no v
prefix), then on a Ra login node:
modbuild build <version> (modbuild/2.1.3).