Spack
Jump to navigation
Jump to search
Introduction
Spack is a multi-package setup and build system. It replaces UPS and MRB (Multi-Repo Build) and related packages. The computing division will work to build and provide their software (art, ifdhc) within spack. Mu2e will probably not use the spack build features, but will have to use spack to access pre-built software, instead of ups setup command.
Scripts are provided to allow a spack setup of a UPS product and vice versa. The user doesn't see the difference.
Usage
source /cvmfs/mu2e.opensciencegrid.org/setupmu2e-art.sh source /cvmfs/fermilab.opensciencegrid.org/packages/common/spack/rollout/NULL/share/spack/setup-env.sh
defines
SPACK_ROOT=/cvmfs/fermilab.opensciencegrid.org/packages/common/spack/rollout/NULL MODULEPATH=$SPACK_ROOT/share/spack/modules/linux-scientific7-x86_64 DK_NODE=$SPACK_ROOT/share/spack/dotkit/linux-scientific7-x86_64 PATH= ... /cvmfs/fermilab.opensciencegrid.org/packages/common/spack/rollout/NULL/bin BASH_FUNC_spack()=... load ... unload ...
and some useful commands
spack -h spack find -h spack arch spack find
You can see the common lab packages are available in spack: ifdhc, jobsub_client, sam_web_client.
spack load ifdhc # load (like ups setup) using a hash for the version and qualifiers spack load ifdhc/242t7pk
Notes
show what spack knows about architectures
spack arch --known-targets