# Install grin with Homebrew, dnf, Nix

Minimal implementation of the Mimblewimble protocol. Version 5.5.0 via Homebrew; verified 2026-06-17.

## Install

```sh
sudo av install brew:grin
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install grin
```

  Evidence: local Homebrew formula metadata

### Linux

- dnf (92%):

```sh
sudo dnf install grin
```

  Evidence: Fedora Rawhide package metadata: grin from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#grin
```

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

## Package facts

- **Package key:** brew:grin
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/grin>
- **Version:** 5.5.0
- **Source summary:** Minimal implementation of the Mimblewimble protocol
- **Homepage:** <https://grin.mw/>
- **Repository:** <https://github.com/mimblewimble/grin>
- **Upstream docs:** <https://docs.grin.mw/>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/mimblewimble/grin/archive/refs/tags/v5.5.0.tar.gz>
- **Last updated:** 2026-06-17T00:10:48Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- grin (cli)
- grin (alias)

## Build dependencies

- rust

## Uses from macOS

- ncurses

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 5.5.0
- Package-manager updated: 2026-06-17
- Local data: ok
- Upstream repository: https://github.com/mimblewimble/grin
- Upstream latest detected: v5.5.0 (current)
## Project history and usage

Grin is a Rust implementation of the Mimblewimble protocol and a command-line cryptocurrency node. Its history is unusually package-relevant because the project deliberately kept the implementation small, experimental, and easy to build from source, making the CLI package the main way many users encountered the network.

### Project history

Grin traces its origin to the Mimblewimble paper posted anonymously to the `#bitcoin-wizards` IRC channel on August 1, 2016 under the name Tom Elvis Jedusor. Andrew Poelstra published a follow-up paper on October 10, 2016, filling in technical details and refinements.

On October 20, 2016, the pseudonymous developer Ignotus Peverell announced a minimal Mimblewimble implementation named Grin in the same IRC community. The name continued the project's literary joke: Gringotts is the wizarding bank in the Harry Potter books, and Grin became the project name for an implementation focused on privacy and compact chain state.

The genesis block was mined on January 15, 2019. The project documented itself as young and experimental at launch, with scheduled hard forks during the first two years. Development remained open and donation-funded after Ignotus Peverell disappeared from the project.

### Adoption history

Grin attracted attention in cryptocurrency circles because it was one of the first substantial open-source implementations of Mimblewimble. The official repository emphasizes hidden amounts, scaling advantages, Cuckoo Cycle proof of work variants, one-minute blocks, fixed block rewards, and fee calculation based on outputs and transaction size.

Package adoption followed the needs of node operators, miners, wallet users, and protocol researchers. Homebrew, Nix, and Linux distribution packaging made the node easy to install without cloning and building the Rust workspace by hand.

The Grin RFC process became the project's main coordination mechanism for protocol and operational changes. Accepted RFCs cover governance, security processes, wallet lifecycle, node APIs, transaction formats, sync improvements, fee changes, and other changes that package maintainers and node operators need to track.

### How it is used

The `grin` executable runs the node: it manages chain state, peer-to-peer networking, mining-related interfaces, node APIs, and configuration under the Grin home directory. CLI users pair it with `grin-wallet` for wallet operations.

For package-manager users, the important operational detail is that the package is not only a command but also a long-running network daemon with consensus compatibility requirements. Upgrades can matter when protocol hard forks, API changes, or sync changes are deployed.

### Why package nerds care

Grin is a tidy example of a cryptocurrency package where language ecosystem, consensus protocol, and user configuration all meet. It brought a Rust-heavy codebase, privacy-focused cryptography, and scheduled consensus changes into ordinary Unix package workflows.

Its minimalism made it appealing to people who like small, inspectable command-line systems, but the node still carries the usual packaging headaches of crypto software: deterministic builds, native dependencies, network compatibility, and careful separation from wallet secrets.

### Timeline

- 2016-08-01: The Mimblewimble paper was posted anonymously to `#bitcoin-wizards`.
- 2016-10-10: Andrew Poelstra published a follow-up Mimblewimble paper.
- 2016-10-20: Ignotus Peverell announced the first minimal Grin implementation.
- 2019-01-15: Grin genesis block was mined.
- 2019-2021: The project used scheduled hard forks during its first two years.
- 2020: Grin RFCs formalized project processes and technical changes across node, wallet, and governance work.

### Related projects

- Mimblewimble is the protocol family Grin implements.
- grin-wallet is the reference CLI wallet for Grin users.
- grin-rfcs records accepted standards and process decisions for the project.
- Cuckoo Cycle is the proof-of-work family credited by the Grin project.

### Sources

- <https://docs.grin.mw/>
- <https://docs.grin.mw/about-grin/story/>
- <https://github.com/mimblewimble/grin>
- <https://github.com/mimblewimble/grin-rfcs>


## Security Notes

narrow executable package without higher-risk signals.

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


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.grin/main/grin-server.toml
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** grin
- **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

- Nix - grin: normalized package name match | nixpkgs package indexes: pkgs/by-name/gr/grin/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- dnf - grin - 1.3.0-24.fc45: normalized package name match | Fedora Rawhide package metadata: grin from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Grep-like tool for source code | http://pypi.python.org/pypi/grin


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Web development packages](https://www.automicvault.com/pkg/web-dev-tools/) - Matched web development metadata.
- [rust](https://www.automicvault.com/pkg/brew/rust/) - Build dependency declared by Homebrew.
- [groestlcoin](https://www.automicvault.com/pkg/brew/groestlcoin/) - Shares av.db curated category or tags: blockchain, cli, cryptocurrency, networking, node.
- [grin-wallet](https://www.automicvault.com/pkg/brew/grin-wallet/) - Shares av.db curated category or tags: cli, cryptocurrency, mimblewimble, networking.
- [bitcoin](https://www.automicvault.com/pkg/brew/bitcoin/) - Shares av.db curated category or tags: blockchain, cli, cryptocurrency, networking.
- [core-lightning](https://www.automicvault.com/pkg/brew/core-lightning/) - Shares av.db curated category or tags: cli, cryptocurrency, networking, node.
- [btcli](https://www.automicvault.com/pkg/brew/btcli/) - Shares av.db curated category or tags: blockchain, cli, networking.
- [dnscrypt-proxy](https://www.automicvault.com/pkg/brew/dnscrypt-proxy/) - Shares av.db curated category or tags: cli, networking, privacy.
- [geph4](https://www.automicvault.com/pkg/brew/geph4/) - Shares av.db curated category or tags: cli, networking, privacy.
- [hsd](https://www.automicvault.com/pkg/brew/hsd/) - Shares av.db curated category or tags: blockchain, cli, networking.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- 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
