Installing Stacks¶
The installation path of the software stack is set when the stack is configured.
The default location for a recipe is set in the store field of config.yaml in the recipe:
name: best-stack-ever
store: /user-environment
spack:
repo: https://github.com/spack/spack.git
commit: releases/v1.0
packages:
repo: https://github.com/spack/spack-packages.git
commit: develop
version: 2
The installation path can be overridden using the --mount/-m flag to stack-config.
The software is built using rpaths hard-coded to the installation path, which simplifies dynamic linking (LD_LIBRARY_PATH does not have to be set during run time).
Alps
For deployment on Alps, stacks should use the standard /user-environment mount point.
Warning
Environments built for one mount point should not be mounted at a different location. If a new mount point is desired, rebuild the stack for the new mount point.
Installing the software¶
Running make to build the environment generates two versions of the software stack in the build path:
Shared file system installation¶
The store sub-directory contains the full software stack installation tree.
Note
The "simplest" method for installing the software stack, that does not require installing additional tools to use the stack, is to copy the contents of store to the installation path.
SquashFS installation¶
The store.squashfs file is a compressed SquashFS image of the contents of the store path.
This can be mounted at runtime using squashfs-mount or the Slurm plugin, or mounted by a system-administrator using mount, in order the to take advantage of the benefits of SquashFS over shared file systems.