# Install spin with Homebrew, apt, MacPorts, Nix, pacman

Efficient verification tool of multi-threaded software. Version 6.5.2 via Homebrew; verified 2026-06-14.

## Install

```sh
sudo av install brew:spin
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install spin
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install spin
```

  Evidence: MacPorts ports tree: devel/spin/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install spin
```

  Evidence: Debian stable package indexes: spin from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#spin
```

  Evidence: nixpkgs package indexes: pkgs/by-name/sp/spin/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S spin
```

  Evidence: Arch Linux sync databases: spin from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

## Package facts

- **Package key:** brew:spin
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/spin>
- **Version:** 6.5.2
- **Source summary:** Efficient verification tool of multi-threaded software
- **Homepage:** <https://spinroot.com/spin/whatispin.html>
- **Repository:** <https://github.com/nimble-code/Spin>
- **Upstream docs:** <https://spinroot.com/spin/Doc/Manual.pdf>
- **License:** BSD-3-Clause
- **Source archive:** <https://github.com/nimble-code/Spin/archive/refs/tags/version-6.5.2.tar.gz>
- **Last updated:** 2026-06-14T15:13:50+02:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- spin (cli)
- spin (alias)

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 6.5.2
- Package-manager updated: 2026-06-14
- Local data: ok
- Upstream repository: https://github.com/nimble-code/Spin
- info: No cached GitHub release or tag data was available.
## Project history and usage

Spin is a widely used open-source formal verification tool for multi-threaded software, best known in CLI culture for model checking Promela models from the command line.

### Project history

The official Spin page says the tool was developed at Bell Labs in the Unix group of the Computing Sciences Research Center starting in 1980 and has been freely available since 1991.

### Adoption history

Spin crossed from research software into standard Unix packaging: the official page notes Debian and Ubuntu availability, and the input facts also list Homebrew, MacPorts, Nix, Arch, Debian, and Ubuntu packages.

### How it is used

Users write models in Promela and run Spin to check concurrency properties. The official page's small Peterson mutual-exclusion example shows `spin -run peterson.pml` as a command-line analysis workflow.

### Why package nerds care

For package nerds, Spin is a canonical example of research-grade tooling that belongs in ordinary package indexes: old, portable, scriptable, academically important, and still useful for checking concurrent systems.

### Timeline

- 1980: Development began at Bell Labs, according to the official page.
- 1991: Spin became freely available.
- 2002: Spin received the ACM System Software Award.
- 2016: Version 6.4.5 moved Spin sources to the BSD 3-Clause license.
- 2019: Official source page says the most recent source and binary distribution moved to GitHub maintenance.
- 2020: Current Spin version 6.5.1 was released in July.

### Related projects

- Promela
- Cobra
- Modex
- Swarm verification front-end
- ltl2ba

### Sources

- <https://github.com/nimble-code/Spin>
- <https://spinroot.com/spin/Src/index.html>
- <https://spinroot.com/spin/whatispin.html>
- input source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** spin
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Debian apt - spin - 6.5.2+dfsg-2: normalized package name match | Debian stable package indexes: spin from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | formal software verification tool | https://spinroot.com/spin/whatispin.html
- Nix - spin: normalized package name match | nixpkgs package indexes: pkgs/by-name/sp/spin/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - spin - 6.5.2+dfsg-1: normalized package name match | Ubuntu 24.04 LTS package indexes: spin from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | formal software verification tool | http://spinroot.com
- pacman - spin - 6.5.2-5: normalized package name match | Arch Linux sync databases: spin from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Tool for the formal verification of distributed software systems | https://spinroot.com/
- MacPorts - spin: normalized package name match | MacPorts ports tree: devel/spin/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [civl](https://www.automicvault.com/pkg/brew/civl/) - Shares av.db curated category or tags: cli, concurrency, developer-tools, formal-verification, model-checking.
- [cbmc](https://www.automicvault.com/pkg/brew/cbmc/) - Shares av.db curated category or tags: cli, developer-tools, formal-verification, model-checking.
- [dafny](https://www.automicvault.com/pkg/brew/dafny/) - Shares av.db curated category or tags: cli, developer-tools, formal-verification.
- [quint](https://www.automicvault.com/pkg/brew/quint/) - Shares av.db curated category or tags: cli, developer-tools, model-checking.
- [sby](https://www.automicvault.com/pkg/brew/sby/) - Shares av.db curated category or tags: cli, developer-tools, formal-verification.

## Combined YAML source

View the package source record on GitHub. [combined/spin.yml](https://github.com/automic-vault/db/blob/main/combined/spin.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
