Then the software.
Once a machine has the foundation, this adds the actual scientific software - compilers, R, Python, the libraries - building each item in order and keeping track of progress, so an interrupted run picks up where it left off instead of starting over.
The software. Builds compilers, R, Python and the libraries into the foundation, as versioned modules you load on demand.
The extraction
Files in the repo. Pull it and run - nothing to unpack.EasyBuild suite (companion to prefix-install)
easybuild-suite
79 files
381 KB
extracted from
stack.ndexr.io + eb.ndexr.io
The shopping list that goes with the toolbox below. Once a machine has the foundation from "Generic prefix install", this adds the actual scientific software - compilers, R, Python, the libraries - building each item in order and keeping track of progress, so an interrupted run picks up where it left off instead of starting over.
The software list, and nothing else. Drop it inside a built prefix-install tree and one command builds every easyconfig into it - compilers, toolchain, R, Python, the libraries. It carries no prefix and no EasyBuild installation: prefix-install is the foundation, this is what gets built on top. Two separate repos because the foundation takes hours and is proven once per machine, while the software list changes often - so a new suite never re-delivers a 20 GB prefix, and a working prefix is never rebuilt to pick one up. Resumable per easyconfig; a recipe whose upstream moved is recorded and the run continues.
build-suite.sh easyconfigs manifest README.md run.R
- A prefix-install tree that finished (__STACK_DONE__) - this directory is copied INSIDE it
- Network for the sources each easyconfig declares; nothing else is contacted
- Hours to days for a full suite, and tens of GB - it builds a compiler first
- Heads-up: 13 carried recipes bake an internal package host into their modulefiles (README)
# from R, via the rxedn catalogue
rxedn::rxedn_install_module("eb.extract.ndexr.io")
# the extraction lands at <domains_dir>/eb.extract.ndexr.io/easybuild-suite/
No archive to unpack and no checksum to compare: rxedn publishes each
repo as an immutable
<host>-<sha7>.tar.gz
and records its sha256 in the catalogue index, so the commit is the
identity. Pull it, and the files are simply there.
# the foundation first, once - see the prefix-install card
# drop the directory inside the prefix tree built by step 1
cp -r easybuild-suite /opt/prefix-install/
cd /opt/prefix-install/easybuild-suite
# from R (Workbench session) - session-core-aware kickoff:
# source('run.R'); kickoff(); build_status(); suite_list()
./build-suite.sh --list # what will build, and what already has
./build-suite.sh # the whole suite; resumes where it stopped
./build-suite.sh --only R # or just one thing
Output stays put, in
eb/software/ and eb/modules/all/ in the prefix-install tree (module avail)
- nothing is copied out.
Every file - 79
- build-suite.sh
- easyconfigs/a/ant/ant-1.10.12-Java-17.eb
- easyconfigs/a/Apptainer/Apptainer-1.4.5.eb
- easyconfigs/a/aws-iam-authenticator/aws-iam-authenticator-0.7.18.eb
- easyconfigs/b/binutils/binutils-2.40.eb
- easyconfigs/b/binutils/binutils-2.42.eb
- easyconfigs/b/bioc/bioc-3.22.eb
- easyconfigs/b/bioc/bioc-3.23.eb
- easyconfigs/b/Boost/Boost-1.90.0-GCC-13.3.0.eb
- easyconfigs/c/c-ares/c-ares-1.34.5-GCCcore-13.3.0.eb
- easyconfigs/c/certbot/certbot-3.1.0.eb
- easyconfigs/c/code-server/code-server-4.108.1.eb
- easyconfigs/c/Cyrus-SASL/Cyrus-SASL-2.1.28-GCCcore-13.3.0.eb
- easyconfigs/d/DuckDB/DuckDB-1.5.4.eb
- easyconfigs/e/eksctl/eksctl-0.229.0.eb
- easyconfigs/f/FlexiBLAS/FlexiBLAS-3.4.4-GCC-13.3.0.eb
- easyconfigs/f/FUSE/FUSE-3.16.2-GCCcore-13.3.0.eb
- easyconfigs/g/GCCcore/GCCcore-13.3.0_glibc242-struct-termio.patch
- easyconfigs/g/GCCcore/GCCcore-13.3.0_libsanitizer-scc-optional.patch
- easyconfigs/g/GCCcore/GCCcore-13.3.0.eb
- easyconfigs/g/GDAL/GDAL-3.10.0-foss-2024a.eb
- easyconfigs/g/geopandas/geopandas-1.0.1-foss-2024a.eb
- easyconfigs/g/GLib/GLib-2.80.4-GCCcore-13.3.0.eb
- easyconfigs/g/Go/Go-1.25.7.eb
- easyconfigs/h/helm/helm-4.2.3.eb
- easyconfigs/h/helmfile/helmfile-1.7.0.eb
- easyconfigs/h/htop/htop-3.2.2-GCCcore-13.3.0.eb
- easyconfigs/j/Java/Java-17.0.15.eb
- easyconfigs/k/k9s/k9s-0.51.0.eb
- easyconfigs/k/kubectl/kubectl-1.36.2.eb
- easyconfigs/k/kustomize/kustomize-5.8.1.eb
- easyconfigs/l/libssh/libssh-0.11.2-GCCcore-13.3.0.eb
- easyconfigs/l/libxcrypt/libxcrypt-4.4.38-GCCcore-13.3.0.eb
- easyconfigs/l/Linux-PAM/Linux-PAM-1.6.1-GCCcore-13.3.0.eb
- easyconfigs/l/LLVM/LLVM-20.1.5-GCCcore-13.3.0-minimal.eb
- easyconfigs/m/MariaDB-connector-C/MariaDB-connector-C-3.3.10-GCCcore-13.3.0.eb
- easyconfigs/n/nginx/nginx-1.28.3.eb
- easyconfigs/n/nodejs/nodejs-22.22.2-GCCcore-13.3.0.eb
- easyconfigs/n/NTL/NTL-11.5.1-GCC-13.3.0.eb
- easyconfigs/o/oauth2-proxy/oauth2-proxy-7.15.3.eb
- easyconfigs/o/OpenEXR/OpenEXR-3.2.4-GCCcore-13.3.0.eb
- easyconfigs/o/OpenSSL/OpenSSL-3.eb
- easyconfigs/p/Pandoc/Pandoc-3.6.2.eb
- easyconfigs/p/podman/podman-6.0.1.eb
- easyconfigs/p/PROJ/PROJ-9.4.1-GCCcore-13.3.0.eb
- easyconfigs/p/psycopg/psycopg-3.2.3-GCCcore-13.3.0.eb
- easyconfigs/p/Python/Python-3.12.13-GCCcore-13.3.0.eb
- easyconfigs/p/Python/Python-3.13.14-custom-ctypes.patch
- easyconfigs/p/Python/Python-3.13.14-GCCcore-13.3.0.eb
- easyconfigs/q/Quarto/Quarto-1.9.38.eb
- easyconfigs/r/R/R-4.5.0-foss-2024a.eb
- easyconfigs/r/R/R-4.5.1-foss-2024a.eb
- easyconfigs/r/R/R-4.5.2-foss-2024a.eb
- easyconfigs/r/R/R-4.5.3-foss-2024a.eb
- easyconfigs/r/R/R-4.6.0-foss-2024a.eb
- easyconfigs/r/R/R-4.6.1-foss-2024a.eb
- easyconfigs/r/Ray-project/Ray-project-2.37.0-foss-2024a.eb
- easyconfigs/r/rpy2/rpy2-3.6.4-foss-2024a.eb
- easyconfigs/r/RStudio-Server/RStudio-Server-2024.12.0-R-4.6-compat.patch
- easyconfigs/r/RStudio-Server/RStudio-Server-2024.12.0-R-4.6-graphics-engine.patch
- easyconfigs/r/RStudio-Server/RStudio-Server-2024.12.0+467-foss-2024a-R-4.5.2.eb
- easyconfigs/r/RStudio-Server/RStudio-Server-2024.12.0+467-foss-2024a-R-4.6.1.eb
- easyconfigs/r/RStudio-Server/RStudio-Server-2026.04.0+526-foss-2024a-R-4.5.2.eb
- easyconfigs/r/RStudio-Server/RStudio-Server-2026.04.0+526-foss-2024a-R-4.6.1.eb
- easyconfigs/r/Rust/Rust-1.96.0-GCCcore-13.3.0.eb
- easyconfigs/s/SciPy-bundle/scipy-1.13.1_xfail-aarch64_test_vectorization.patch
- easyconfigs/s/SciPy-bundle/SciPy-bundle-2024.05-gfbf-2024a.eb
- easyconfigs/s/squashfs-tools/squashfs-tools-4.6.1-GCCcore-13.3.0.eb
- easyconfigs/s/SymEngine/SymEngine-0.11.2-gfbf-2024a.eb
- easyconfigs/u/UDUNITS/UDUNITS-2.2.28-GCCcore-13.3.0.eb
- easyconfigs/u/unixODBC/unixODBC-2.3.14-GCCcore-13.3.0.eb
- easyconfigs/u/util-linux/util-linux-2.40-GCCcore-13.3.0.eb
- easyconfigs/v/VSCode/VSCode-1.104.1-GCCcore-13.3.0.eb
- easyconfigs/x/Xerces-C++/Xerces-C++-3.2.5_Change-CXX-standard-to-17.patch
- easyconfigs/x/Xerces-C++/Xerces-C++-3.2.5-GCCcore-13.3.0.eb
- easyconfigs/z/ZeroMQ/ZeroMQ-4.3.5-GCCcore-13.3.0.eb
- manifest/suite.txt
- README.md
- run.R
Declared inputs
What each extraction will build.EasyBuild suite (companion to prefix-install)
Carried in
manifest/
, verbatim - the declared set
this extraction will build. It travels in the repo, so a copy taken
to a machine with no route back here still knows the full list.
| File | Records | Size |
|---|---|---|
suite.txt
|
68 entries | 2 KB |