Scaffold the standard 4-file Pmodule for autoPROC (Global Phasing Ltd.): build, modulefile, files/config.yaml, README.md. The PSI licence token (autoPROC/.licence) already existed and is installed into the software tree at build time. Follows the phenix archetype for the licence-gated install: the snapshot tarball cannot be wget'd (download needs credentials), so it is staged by hand in the module dir as autoPROC_snapshot_<date>.tar.gz and unpacked into PREFIX with --strip-components=1 (xds pattern). Runtime is activated by sourcing setup.sh via the modulefile. CCP4 8.0 and XDS are wired as runtime_deps (xds from this repo; ccp4 is a site module placeholder to confirm with `module avail ccp4`). Adds a .gitignore guard so the proprietary snapshot is never committed. Not built locally - to be tested on Ra. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
69 lines
2.1 KiB
Markdown
69 lines
2.1 KiB
Markdown
# autoPROC
|
|
|
|
autoPROC (Global Phasing Ltd.) is an automated pipeline for integrating and scaling
|
|
macromolecular crystallography diffraction data. It is licence-gated: the PSI licence
|
|
token is committed as `autoPROC/.licence` and installed into the software tree at build
|
|
time. CCP4 8.0 and XDS are hard runtime requirements and are pulled in as module
|
|
dependencies.
|
|
|
|
## Build on Ra
|
|
|
|
Step 1: login with your `-adm` account
|
|
|
|
```
|
|
kinit xxxx_x-adm
|
|
aklog
|
|
```
|
|
|
|
Step 2: load the latest Pmodules package
|
|
|
|
```
|
|
module use unstable
|
|
module load Pmodules/2.0.0
|
|
```
|
|
|
|
Step 3: stage the licence-gated snapshot. Download it from Global Phasing (needs
|
|
credentials, so `wget` in the build script will not work) and save it in this module
|
|
directory named by its snapshot date. Do NOT commit it (it is proprietary and large;
|
|
`.gitignore` already excludes `autoPROC_snapshot_*.tar.gz`).
|
|
|
|
```
|
|
cd autoPROC
|
|
# e.g. save the download as autoPROC_snapshot_20240710.tar.gz here
|
|
```
|
|
|
|
Step 4: edit `files/config.yaml` to add the real snapshot date as the version, and
|
|
confirm the `ccp4` dependency coordinates for this cluster:
|
|
|
|
```
|
|
module avail ccp4 # adjust ccp4/8.0 in runtime_deps if the name/version differs
|
|
vi files/config.yaml
|
|
```
|
|
|
|
Step 5: build (installs to `/opt/psi/MX/autoPROC/<date>`)
|
|
|
|
```
|
|
./build 20240710
|
|
```
|
|
|
|
Step 6: confirm the module loads and autoPROC is licensed
|
|
|
|
```
|
|
module use MX unstable
|
|
module load autoPROC/20240710
|
|
process -h
|
|
```
|
|
|
|
## Assumptions to verify on the first real build
|
|
|
|
- The snapshot tarball has a single top-level directory, so `tar --strip-components=1`
|
|
puts `setup.sh` directly at `$PREFIX/setup.sh`. If the layout differs, adjust the
|
|
strip level in `build`.
|
|
- autoPROC reads its licence from the software home, i.e. `$autoPROC_home/.licence`,
|
|
which equals `$PREFIX/.licence` after the strip. `build` copies `.licence` there.
|
|
- If loading the module fails with `... : unbound variable` (setup.sh under `set -u`),
|
|
add `puts stdout "set +x nounset"` before the `source` line in `modulefile` (same fix
|
|
used for phenix).
|
|
- There is no `ccp4` module in this repo; `runtime_deps` references a site CCP4 module.
|
|
Set the exact name/version from `module avail ccp4`.
|