This repository contains Spack packages for the EIC, building on the Key4HEP packages.
While we encourage the inclusion of Spack packages in the Spack repository, we realize that some packages may not be mature enough or have too small of a user base to be accepted there.
Installing Spack is outside the scope of this repository, but described in the Spack Getting Started page.
The default develop
branch of this package repository depends on builtin packages in the upstream Spack develop
repository. For specific vesions of Spack (e.g. v0.18.1), please use the corresponding branch (e.g. v0.18) or the latest tag on that branch (e.g. v0.18.5).
Because packages in this repository may depend on packages in the Key4HEP spack repository, you
- Clone this repository:
git clone https://github.com/eic/eic-spack.git
- Add this repository to your Spack configuration:
spack repo add eic-spack
- Find an EIC Spack package:
spack find epic-eic
- Install an EIC Spack package:
spack install epic-eic
If this is the first package you install, it will also install all dependencies.
- Load the EIC Spack package:
spack load epic-eic
- Unload the EIC Spack package:
spack unload epic-eic
- Unload all Spack packages:
spack unload -a
- Create and activate a new Spack environment:
spack env create epic-eic-env
spack env activate epic-eic-env
- Install an EIC Spack package:
spack install epic-eic
If you already installed this package earlier, this will go very quick.
- Deactivate the Spack environment:
spack env deactivate
You can verify with which root
inside and outside the environment that you did indeed use a different installation base.
Once you have a Spack environment setup, you can easily turn it into a Docker container recipe from any directory with an environment spack.yaml file:
cd $SPACK_ROOT/var/spack/environments/epic-eic-env/
spack containerize > Dockerfile