HSF Seminar — Software Packaging · 24 June 2026
Image: CERN-EX-66954B © 1998–2026 CERN
Software packaging is a means to get software in a reproducible and reliable way
Tooling
install & manage environments
Packages
recipes & binaries
Development
build & iterate
conda create ...
pixi init
conda-forge
.conda
conda-build
rattler-build
apt
yum
pip
Looking back at your PyHEP 2019 conda-forge talk (interesting to see how much has stayed the same over 6+ years)
Used to advertise getting ROOT in under 5 minutes
Now it can be ~10 seconds
~> time pixi exec root -l -b -q -e '1+1' (int) 2 ________________________________________________________ Executed in 13.64 secs
pixi.toml
Links:
$ pixi init example && cd example # create workspace $ pixi add contur # declaratively add tools Added contur >=3.1.4,<4 $ pixi run contur ... # execute commands or tasks $ pixi list rivet # inspect environments Name Version Build Size Kind Source rivet 4.1.3 py314h9404863_2 53.69 MiB conda https://conda.anaconda.org/conda-forge $ pixi shell # drop into interactive subshells (debug) $ command -v contur /tmp/example/.pixi/envs/default/bin/contur
PATH
~> pixi global install root --with ipython ~> pixi global expose add --environment root pyroot=ipython Exposed executable pyroot from environment root. ~> which pyroot /Users/cburr/.pixi/bin/pyroot # just a wrapper on PATH ~> pyroot IPython 9.14.1 -- An enhanced Interactive Python. In [1]: import ROOT # just works
~> pixi exec root -l -b -q -e '1+1' (int) 2
emscripten-wasm32
Download and extract the package to the local cache
$ ls /cvmfs/conda-cache.cern.ch/prototype-v2/* linux-64/ noarch/ osx-arm64/
rattler