Skip to content
SPECIFICTION
Get listed

Spack

spack.io

Free plan WindowsmacOSLinuxSelf-hosted
Visit spack.io
Spec score 8.6 #17 of 93 in Package Managers

What it is

Spack is a package manager for installing scientific software on supercomputers, Linux, macOS, and Windows. It is designed for large supercomputing centers that share software across clusters and varied architectures, and is available at free. Users can choose package versions, compiler choices, target architectures, and compile-time options, while controlling direct and transitive dependencies. Spack can build stacks that combine Python or R packages with C, C++, or Fortran libraries. Each distinct package and dependency configuration receives its own prefix, so different builds can coexist without a new installation disrupting an existing one. Software can be installed to a user-selected directory without administrator privileges. Spack primarily builds customized software from source and also supports binary installation through build caches. It supports lockfiles, environment management, and private registries. Package recipes are Python scripts, and the `spack create` command generates starter boilerplate. The project is distributed under either the MIT license or Apache License 2.0, at the user's option.

Spec sheet

Purpose
Spack is a package manager that makes installing scientific software easy on supercomputers, Linux, macOS, and Windows.Read 8 Oct 2026 · spack.io
Intended users
Spack was designed for large supercomputing centers where users and application teams share software installations across clusters and varied architectures.Read 8 Oct 2026 · spack.readthedocs.io
Platforms
Spack supports Linux, macOS, Windows, and supercomputers.Read 8 Oct 2026 · spack.io
Free plan
YesRead 20 Sep 2026 · spack.io
Integrations
Spack's services page lists GitLab, CDash, Grafana, Prometheus, and Metabase.Read 8 Oct 2026 · spack.io
Security
The project repository links to a security policy.Read 8 Oct 2026 · github.com
License
Spack is distributed under the MIT license or Apache License 2.0, at the user's option.Read 8 Oct 2026 · github.com
Build configurations
It supports building packages with multiple versions, configurations, and compilers that can coexist on the same machine.Read 8 Oct 2026 · spack.io
Build methods
Spack primarily builds software from source and also supports binary installations through build caches.Read 8 Oct 2026 · spack.io
Build signing
Spack documentation includes build-cache signing and package-signing guidance, including a section on risks and threat models.Read 8 Oct 2026 · spack.readthedocs.io
Coexisting installs
Each unique package and dependency configuration gets its own prefix, allowing installations to coexist without new installs breaking existing ones.Read 8 Oct 2026 · spack.io
Community support
The project directs users to Slack, Matrix, GitHub Discussions, and an announcements mailing list.Read 8 Oct 2026 · github.com
Configurable builds
Users can specify package versions, compile-time options, target architectures, and compiler choices.Read 8 Oct 2026 · spack.io
Customization
Users can specify package versions, compile-time options, target architectures, and dependencies.Read 8 Oct 2026 · spack.io
Dependency control
Users can customize both direct and transitive dependencies of an installation.Read 8 Oct 2026 · spack.io
Language support
Spack can build stacks containing Python or R packages and link them to C, C++, or Fortran libraries.Read 8 Oct 2026 · spack.io
Lockfile support
YesRead 20 Sep 2026 · spack.io
Non-destructive installs
Each unique package and dependency configuration is installed into its own prefix so new installs do not break existing ones.Read 8 Oct 2026 · spack.io
Package authors
Spack package recipes are Python scripts, and its spack create command generates starter boilerplate.Read 8 Oct 2026 · spack.io
Sources and binaries
Spack primarily builds customized software from source and also supports binary installations through build caches.Read 8 Oct 2026 · spack.io
Support channels
The project links users to documentation, Slack, and GitHub Discussions.Read 8 Oct 2026 · spack.io
Unprivileged installs
Spack can install software in a user-selected directory without administrator privileges.Read 8 Oct 2026 · spack.io

Plans and prices

Spack Free Open source package manager Read 8 Oct 2026 · github.com

Every Spack plan and price →

Strong points and limits

Strong points

  • Available for Linux, macOS, and Windows
  • Controls versions, compilers, architectures, and dependencies
  • Distinct configurations can coexist in separate prefixes
  • Installs to user-selected directories without administrator privileges
  • Supports source builds and binary build caches

Limits

  • Primarily builds customized software from source
  • No free trial

Who it suits

Spack suits scientific computing teams that need to manage software configurations across machines, clusters, or architectures. It also fits users who need to install packages without administrator privileges.

Verdict

Spack offers detailed control over scientific software builds and keeps distinct configurations separate. It is free, cross-platform, and designed for shared installations across clusters and architectures.

Where Specifiction places it

Alternatives to SpackAll alternatives →