[Halld-offline] [EXTERNAL] update on methods for installing root in apptainer environment

Richard Jones richard.t.jones at uconn.edu
Tue Oct 24 16:00:30 EDT 2023


Following up on our discussion at the Software working group meeting
yesterday, I tried running the prebuilt instances of ROOT on /cvmfs/
sft.cern.ch/lcg/app/releases/ROOT and didn't find any of the 6.28.08 builds
relevant to almalinux 9. Following the recommendations on root.cern.ch, the
next thing I tried was to install root using yum/dnf. Inside the docker
container, Inside my alma9 docker container, a copy of the one you created
with my own Gluex-required additional packages, I added a command to
install all yum packages that have root-core as a dependency.

Apptainer> dnf repoquery --whatrequires root-core

Last metadata expiration check: 0:16:40 ago on Tue Oct 24 11:36:18 2023.

HepMC3-rootIO-0:3.2.7-1.el9.x86_64

python3-HepMC3-rootIO-0:3.2.7-1.el9.x86_64

python3-jupyroot-0:6.28.08-1.el9.x86_64

python3-root-0:6.28.08-1.el9.x86_64

root-0:6.28.08-1.el9.x86_64

... and many, many more, total of 124 separate packages, 150 additional

... libraries drawn in as dependencies of those packages

I then ran "dnf -y install" on all 124 of these packages inside the
container. They all installed without a glitch. Now without any
customization to the shell environment, all of the standard root commands
(root, root-config, rootcling, rootcint, ...) show up in the default system
path, and all of the related libraries show up in /usr/lib64*. *Likewise,
in the python3 interpreter, I can "import ROOT" and get the full pyroot
environment. I installed uproot inside the container separately using pip.
Note that I have the full suite of root extras (Roofit, TMVA, Proof,
Dataframes ...) installed inside the container without having to build
anything from sources or figure out what package dependencies are needed.

The size of the alma9 container has increased from 5.8GB (before these 250+
root-related packages) to 7.8GB with everything included. I consider the
additional 2GB in the container footprint to be well worth the effort saved.

One caveat is that just one release can be installed at a time, as far as I
know. Is this a drawback? For me it is an advantage that there is just one
version of root that we have to support at a time.

-Richard Jones
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.jlab.org/pipermail/halld-offline/attachments/20231024/9031ce39/attachment.html>


More information about the Halld-offline mailing list