Skip to content

Using a custom Spack configuration scope

Spack logo

Spack is for advanced users

Spack is incredibly powerful but also very complex. Most users should check to see if any applications/libraries etc. required are already installed centrally by checking our main documentation. Using Spack to compile your own applications is for advanced cluster users.

Follow this documentation in order

Whilst it may be tempting to try to jump ahead and skip sections of the documentation that follows, it is much better to follow it through entirely to get a foundational understanding of Spack as a whole, even if the examples shown don't directly apply to specific applications you require.

Alongside our cluster upgrade from CentOS 7 to Rocky 9, we have also moved to the Spack package manager for installing applications centrally on Apocrita so that all users have access to them via our Modules setup. Spack simplifies the manual compilation and installation of a large number of commonly used HPC applications.

Our usual policy when any user requires something that doesn't currently have an existing module is that an official request can be made to the ITSR Apps Team. However, it's not always possible for us to offer everything a user might require and we try to balance what we offer - if demand for something is low, perhaps for a single user, then we might not offer to install it centrally.

Traditionally in such cases, the user might have been required to manually compile things using make/make install or cmake etc. The advantage of Spack is that it is possible for users to use our centrally installed applications and libraries as an "upstream" for their own personal Spack installations - perhaps something compiled in a very specific way, or an older version of something.