# Install topgrade with Homebrew, apk, MacPorts, Nix, scoop, winget, zypper

Upgrade all the things. Version 17.6.2 via Homebrew; verified 2026-06-20.

## Install

```sh
sudo av install brew:topgrade
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install topgrade
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install topgrade
```

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

### Linux

- apk (92%):

```sh
sudo apk add topgrade
```

  Evidence: Alpine Linux edge package indexes: topgrade from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Nix (92%):

```sh
nix profile install nixpkgs#topgrade
```

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

- zypper (92%):

```sh
sudo zypper install topgrade
```

  Evidence: openSUSE Tumbleweed package metadata: topgrade from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

### Windows

- Scoop (92%):

```sh
scoop install main/topgrade
```

  Evidence: Scoop official bucket manifest trees: bucket/topgrade.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

- winget (92%):

```sh
winget install --id topgrade-rs.topgrade -e
```

  Evidence: Windows Package Manager source index: topgrade-rs.topgrade from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:topgrade
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/topgrade>
- **Version:** 17.6.2
- **Source summary:** Upgrade all the things
- **Homepage:** <https://github.com/topgrade-rs/topgrade>
- **Repository:** <https://github.com/topgrade-rs/topgrade>
- **Upstream docs:** <https://github.com/topgrade-rs/topgrade#readme>
- **License:** GPL-3.0-or-later
- **Source archive:** <https://github.com/topgrade-rs/topgrade/archive/refs/tags/v17.6.2.tar.gz>
- **Last updated:** 2026-06-20T13:00:31Z
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- topgrade (cli)
- topgrade (alias)

## Build dependencies

- rust

## 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: 17.6.2
- Package-manager updated: 2026-06-20
- Local data: ok
- Upstream repository: https://github.com/topgrade-rs/topgrade
- Upstream latest detected: v17.6.2 (current)
## Project history and usage

Topgrade is a Rust command-line system maintenance tool whose goal is to update many package managers and developer-tool ecosystems with one command. Its slogan, reflected in its crate metadata, is 'Upgrade all the things.'

### Project history

The topgrade crate was first published on crates.io in June 2018. The current topgrade-rs README states that the project is a fork of r-darwish/topgrade created to keep the tool maintained, and explains the problem it solves: system updates often require a collection of non-portable shell one-liners across different package managers.

The maintained project has become a catalogue of package-manager integrations. The README documents official and community installation routes across releases, Cargo, deb-get, AUR, PyPI/pipx/uv, Winget, Homebrew, Fedora Copr, Chocolatey, Scoop, MacPorts, Pacstall, Nix, Alpine, and Void. The changelog shows ongoing work on specific package managers and tools, including Homebrew, Nix, winget, mise, cargo, uv, firmware tools, editors, AI/developer tools, and desktop app managers.

By 2026, the project was releasing in the 17.x line; crates.io reports 17.6.2 as the current maximum version, and the changelog records 17.6.2 on June 20, 2026. Its release cadence and breadth of integrations make it a maintenance hub rather than a wrapper around one package manager.

### Adoption history

Topgrade's adoption is cross-platform and package-manager oriented. The official README presents Homebrew and Winget alongside Cargo and distro package routes, while the input metadata shows Homebrew, Alpine, MacPorts, Nix, Scoop, Winget, and zypper packaging. This breadth reflects its audience: users who accumulate several package ecosystems on one machine.

### How it is used

The normal usage is intentionally small: run `topgrade`. The tool detects installed update mechanisms and runs the appropriate commands; users can configure behavior in `topgrade.toml`, define custom commands, use remote execution over SSH, and choose platform-specific integrations.

### Why package nerds care

Topgrade is unusually important for package nerds because it turns package-manager sprawl into a single ritual. It does not replace Homebrew, Cargo, Nix, winget, pipx, or distro managers; it orchestrates them, making it attractive to users whose machines contain many overlapping software supply chains.

### Timeline

- 2018: topgrade crate first published on crates.io.
- Current project: topgrade-rs README identifies the maintained fork from r-darwish/topgrade.
- 2025: 16.x releases expand integrations and release automation across package managers.
- 2026: 17.0.0 bumps the minimum supported Rust version.
- 2026: 17.6.2 released with fixes for Homebrew, Linuxbrew, pip3 on Termux, Nix, and PowerShell behavior.

### Related projects

- Homebrew, Cargo, Nix, Winget, Scoop, MacPorts, Chocolatey, pipx, uv, mise, AUR, deb-get, zypper.

### Sources

- <https://crates.io/crates/topgrade>
- <https://github.com/topgrade-rs/topgrade#readme>
- <https://raw.githubusercontent.com/topgrade-rs/topgrade/main/CHANGELOG.md>
- <https://raw.githubusercontent.com/topgrade-rs/topgrade/main/Cargo.toml>
- source_facts.package-manager


## Security Notes

No matching local secret-handling manifest was found for topgrade. Nucleus package metadata is still published here so future coverage has a stable package URL.



## 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: ${XDG_CONFIG_HOME:-~/.config}/topgrade.toml, ${XDG_CONFIG_HOME:-~/.config}/topgrade/topgrade.toml
## Source Database Details

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

## Other Package-Manager Records

- Nix - topgrade: normalized package name match | nixpkgs package indexes: pkgs/by-name/to/topgrade/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - topgrade - 17.4.0-r0: normalized package name match | Alpine Linux edge package indexes: topgrade from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | run upgrades of packages in OS and other package managers | https://github.com/topgrade-rs/topgrade
- apk - topgrade-bash-completion - 17.4.0-r0: normalized package name match | Alpine Linux edge package indexes: topgrade-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Bash completions for topgrade | https://github.com/topgrade-rs/topgrade
- apk - topgrade-doc - 17.4.0-r0: normalized package name match | Alpine Linux edge package indexes: topgrade-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | run upgrades of packages in OS and other package managers (documentation) | https://github.com/topgrade-rs/topgrade
- apk - topgrade-fish-completion - 17.4.0-r0: normalized package name match | Alpine Linux edge package indexes: topgrade-fish-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Fish completions for topgrade | https://github.com/topgrade-rs/topgrade
- apk - topgrade-zsh-completion - 17.4.0-r0: normalized package name match | Alpine Linux edge package indexes: topgrade-zsh-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Zsh completions for topgrade | https://github.com/topgrade-rs/topgrade
- zypper - topgrade - 17.5.1-1.1: normalized package name match | openSUSE Tumbleweed package metadata: topgrade from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Upgrade all the things | https://github.com/topgrade-rs/topgrade
- MacPorts - topgrade: normalized package name match | MacPorts ports tree: sysutils/topgrade/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/topgrade: normalized package name match | Scoop official bucket manifest trees: bucket/topgrade.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1
- winget - topgrade-rs.topgrade: normalized package name match | Windows Package Manager source index: topgrade-rs.topgrade from https://cdn.winget.microsoft.com/cache/source.msix


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [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.
- [rust](https://www.automicvault.com/pkg/brew/rust/) - Build dependency declared by Homebrew.
- [mole](https://www.automicvault.com/pkg/brew/mole/) - Shares av.db curated category or tags: cli, maintenance, system, system-maintenance.
- [tmpreaper](https://www.automicvault.com/pkg/brew/tmpreaper/) - Shares av.db curated category or tags: cli, maintenance, system, system-maintenance.
- [tmpwatch](https://www.automicvault.com/pkg/brew/tmpwatch/) - Shares av.db curated category or tags: cli, maintenance, system, system-maintenance.
- [aspcud](https://www.automicvault.com/pkg/brew/aspcud/) - Shares av.db curated category or tags: cli, package-management, system.
- [bottom](https://www.automicvault.com/pkg/brew/bottom/) - Shares av.db curated category or tags: cli, rust, system.
- [brush](https://www.automicvault.com/pkg/brew/brush/) - Shares av.db curated category or tags: cli, rust, system.
- [comtrya](https://www.automicvault.com/pkg/brew/comtrya/) - Shares av.db curated category or tags: cli, rust, system.
- [crabz](https://www.automicvault.com/pkg/brew/crabz/) - Shares av.db curated category or tags: cli, rust, system.
- [czkawka](https://www.automicvault.com/pkg/brew/czkawka/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, management, rust, system.
- [ddh](https://www.automicvault.com/pkg/brew/ddh/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, management, rust, system.
- [dust](https://www.automicvault.com/pkg/brew/dust/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, management, rust, system.

## Combined YAML source

View the package source record on GitHub. [combined/topgrade.yml](https://github.com/automic-vault/db/blob/main/combined/topgrade.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
