https://doi.org/10.1051/epjconf/202024505016
Modern Software Stack Building for HEP
1
CERN, 1 Esplanade des Particules, 1211 Geneva 23, Switzerland
2
University of Warwick, Coventry CV4 7AL, United Kindgdom
3
University of Sheffield, Sheffield S10 2TN, United Kindgdom
* e-mail: graeme.andrew.stewart@cern.ch
** e-mail: ben.morgan@warwick.ac.uk
Published online: 16 November 2020
High-Energy Physics has evolved a rich set of software packages that need to work harmoniously to carry out the key software tasks needed by experiments. The problem of consistently building and deploying these packages as a coherent software stack is one that is shared across the HEP community. To that end the HEP Software Foundation Packaging Working Group has worked to identify common solutions that can be used across experiments, with an emphasis on consistent, reproducible builds and easy deployment into CernVM-FS or containers via CI systems. We based our approach on well-identified use cases and requirements from many experiments. In this paper we summarise the work of the group in the last year and how we have explored various approaches based on package managers from industry and the scientific computing community. We give details about a solution based on the Spack package manager which has been used to build the software required by the SuperNEMO and FCC experiments and trialled for a multi-experiment software stack, Key4hep. We shall discuss changes that needed to be made to Spack to satisfy all our requirements. We show how support for a build environment for software developers is provided.
© The Authors, published by EDP Sciences, 2020
This is an Open Access article distributed under the terms of the Creative Commons Attribution License 4.0, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.