Image Specification
The following YAML file specifies the images and their included software. See the Developer Guide for more information, or the Image Dependency Graph for a diagrammatic view.
Note
Many images are based on other images, therefore software that is found in any image includes software that is found in its base image(s).
images.yaml
base:
include_this_yaml: true
template: base
description: 'base image with software commonly used by all images'
upstream:
bash: { dependents: [] }
bc: { dependents: [] }
binutils: { dependents: [root] }
clang: { dependents: [] }
cmake: { dependents: [root, ccdb, denoising, clas12root] }
curl: { dependents: [] }
davix: { dependents: [root] }
diffutils: { dependents: [] }
emacs: { dependents: [] }
fish: { dependents: [] }
fzf: { dependents: [] }
gcc-fortran: { dependents: [] }
gcc: { dependents: [] }
git: { dependents: [] }
glew: { dependents: [root] }
glu: { dependents: [root] }
groovy: { dependents: [] }
gsl: { dependents: [root] }
inetutils: { dependents: [] }
jdk21-openjdk: { dependents: [] }
jq: { dependents: [] }
julia: { dependents: [] }
libx11: { dependents: [root] }
libxext: { dependents: [root] }
libxft: { dependents: [root] }
libxpm: { dependents: [root] }
llvm: { dependents: [] }
make: { dependents: [] }
man-db: { dependents: [] }
man-pages: { dependents: [] }
mariadb: { dependents: [rcdb, ccdb] }
maven: { dependents: [] }
meson: { dependents: [] }
nano: { dependents: [] }
ninja: { dependents: [] }
nvim: { dependents: [] }
openssl: { dependents: [root] }
patch: { dependents: [] }
pkgconf: { dependents: [] }
plocate: { dependents: [] }
python-pip: { dependents: [] }
python: { dependents: [] }
ripgrep: { dependents: [] }
rsync: { dependents: [] }
ruby: { dependents: [] }
scons: { dependents: [] }
sqlite: { dependents: [rcdb, ccdb] }
tcsh: { dependents: [] }
tree: { dependents: [] }
vim: { dependents: [] }
wget: { dependents: [] }
which: { dependents: [] }
xorg-xeyes: { dependents: [] } # for graphics testing
xrootd: { dependents: [] }
yq: { dependents: [] }
zsh: { dependents: [] }
builds:
rcdb: { version: v1.99.6, dependents: [coatjava, iguana, clas12root] }
ccdb: { version: 1.99.6, dependents: [coatjava, clas12root] }
qadb: { version: v3.3.0, dependents: [clas12root] }
hipo: { version: 4.2.0, dependents: [denoising] }
base_root:
from: base
template: build
description: 'same as `base` image, but with ROOT'
builds:
root: { version: v6-36-04, dependents: [iguana, clas12root, hipo] }
hipo: { version: 4.2.0, dependents: [iguana, clas12root] } # rebuild for ROOT-dependent libs
base_root_debug:
from: base
template: build
description: 'same as `base_root` image, but built with debugging symbols; the performance will be slower than `base_root`'
builds:
root: { version: v6-36-04, dependents: [iguana, clas12root, hipo] }
hipo: { version: 4.2.0, dependents: [iguana, clas12root] } # rebuild for ROOT-dependent libs
recon:
from: base
template: build
description: 'software for reconstruction'
builds:
clas12-config: { version: main, dependents: [coatjava] }
clara: { version: main, dependents: [coatjava] }
coatjava: { version: 13.3.0, dependents: [] }
denoising: { version: 974e4cd303d13174cc75e2138d53c52a5f6282f7, dependents: [] } # 4.2.3 with cmake v4 fix
asprof: { version: v4.0, dependents: [] }
analysis:
from: base_root
template: build
description: 'software for analysis'
upstream:
fmt: { dependents: [iguana] }
python-awkward: { dependents: [] }
python-matplotlib: { dependents: [] }
python-numpy: { dependents: [] }
python-pandas: { dependents: [] }
python-seaborn: { dependents: [] }
python-uproot: { dependents: [] }
python-vector: { dependents: [] }
yaml-cpp: { dependents: [iguana] }
builds:
iguana: { version: v0.8.0, dependents: [clas12root] }
clas12root: { version: 1.8.6, dependents: [] }
# clas12-mcgen: { version: v3.15, dependents: [] } # disabled, because https://github.com/JeffersonLab/clas12-mcgen/issues/60