# Install diffoscope with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, zypper

In-depth comparison of files, archives, and directories. Version 323 via Homebrew; verified 2026-07-01.

## Install

```sh
sudo av install brew:diffoscope
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install diffoscope
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install diffoscope
```

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

### Linux

- apk (92%):

```sh
sudo apk add diffoscope
```

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

- Debian apt (92%):

```sh
sudo apt install diffoscope
```

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

- dnf (92%):

```sh
sudo dnf install diffoscope
```

  Evidence: Fedora Rawhide package metadata: diffoscope 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#diffoscope
```

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

- pacman (92%):

```sh
sudo pacman -S diffoscope
```

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

- zypper (92%):

```sh
sudo zypper install diffoscope
```

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

## Package facts

- **Package key:** brew:diffoscope
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/diffoscope>
- **Version:** 323
- **Source summary:** In-depth comparison of files, archives, and directories
- **Homepage:** <https://diffoscope.org>
- **Repository:** <https://salsa.debian.org/reproducible-builds/diffoscope>
- **Upstream docs:** <https://diffoscope.org/>
- **License:** GPL-3.0-or-later
- **Source archive:** <https://files.pythonhosted.org/packages/8a/11/7a4a73651121f7f4be0f7e1cb91d62b30b68f3830bed703779c8aa9f7580/diffoscope-323.tar.gz>
- **Last updated:** 2026-07-01T18:07:33Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- diffoscope (cli)
- diffoscope (alias)

## Dependencies

- libarchive
- libmagic
- python@3.14

## 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: 323
- Package-manager updated: 2026-07-01
- Local data: ok
- Upstream repository: https://diffoscope.org
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

diffoscope is a deep comparison tool for files, archives, directories, and build artifacts. It recursively unpacks many formats and normalizes binary data into more human-readable forms so package builders can understand why two outputs differ.

### Project history

diffoscope began in the Debian reproducible-builds project, was originally named debbindiff, and is now developed as part of the wider Reproducible Builds initiative. The official README describes its purpose as quickly understanding why two builds of the same package produce different outputs.

### Adoption history

The official website documents installation paths through pip, Debian, Fedora, Gentoo, openSUSE, Arch Linux, FreeBSD, OpenBSD, NixOS, Homebrew, Docker images, and source tarballs. That breadth reflects its role as a cross-distribution diagnostic tool rather than a Debian-only utility.

### How it is used

diffoscope is used from the command line to compare two inputs and produce text or HTML reports. It exits with 0 when inputs are the same, 1 when they differ, and 2 on trouble, which makes it scriptable in package build, CI, and reproducibility workflows.

### Why package nerds care

Package maintainers care about diffoscope because it turns opaque binary differences into reviewable structure: archives, filesystem images, language bytecode, package formats, and metadata can be unpacked and compared in one workflow. It is one of the canonical tools for explaining reproducible-build failures.

### Timeline

- 2010s: Started by the Debian reproducible-builds project under the name debbindiff.
- 2010s: Renamed diffoscope and developed under the wider Reproducible Builds initiative.
- 2026: Official site lists release 322 on 26 Jun 2026.

### Related projects

- The official site lists pkgdiff and Open Build Service build-compare as similar software, and the project is closely tied to reproducible-builds.org infrastructure.

### Sources

- <https://diffoscope.org/>
- <https://salsa.debian.org/reproducible-builds/diffoscope/-/raw/master/README.rst>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** diffoscope
- **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 - diffoscope - 297+deb13u1: normalized package name match | Debian stable package indexes: diffoscope from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | in-depth visual diff tool for files, archives and directories | https://diffoscope.org
- Debian apt - diffoscope-minimal - 297+deb13u1: normalized package name match | Debian stable package indexes: diffoscope-minimal from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | in-depth visual diff tool for files, archives and directories (minimal package) | https://diffoscope.org
- Nix - diffoscope: normalized package name match | nixpkgs package indexes: pkgs/by-name/di/diffoscope/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - diffoscope - 259: normalized package name match | Ubuntu 24.04 LTS package indexes: diffoscope from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | in-depth visual diff tool for files, archives and directories | https://diffoscope.org
- Ubuntu apt - diffoscope-minimal - 259: normalized package name match | Ubuntu 24.04 LTS package indexes: diffoscope-minimal from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | in-depth visual diff tool for files, archives and directories (minimal package) | https://diffoscope.org
- apk - diffoscope - 309-r2: normalized package name match | Alpine Linux edge package indexes: diffoscope from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | In-depth comparison of files, archives, and directories | https://diffoscope.org/
- apk - diffoscope-pyc - 309-r2: normalized package name match | Alpine Linux edge package indexes: diffoscope-pyc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Precompiled Python bytecode for diffoscope | https://diffoscope.org/
- dnf - diffoscope - 317-2.fc45: normalized package name match | Fedora Rawhide package metadata: diffoscope from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | In-depth comparison of files, archives, and directories | https://diffoscope.org/
- pacman - diffoscope - 318-1: normalized package name match | Arch Linux sync databases: diffoscope from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Tool for in-depth comparison of files, archives, and directories | https://diffoscope.org/
- zypper - diffoscope - 318-1.1: normalized package name match | openSUSE Tumbleweed package metadata: diffoscope from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | In-depth comparison of files, archives, and directories | https://diffoscope.org/
- MacPorts - diffoscope: normalized package name match | MacPorts ports tree: sysutils/diffoscope/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [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.
- [libarchive](https://www.automicvault.com/pkg/brew/libarchive/) - Runtime dependency declared by Homebrew.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [diffoci](https://www.automicvault.com/pkg/brew/diffoci/) - Shares av.db curated category or tags: cli, developer-tools, diff, reproducible-builds.
- [numdiff](https://www.automicvault.com/pkg/brew/numdiff/) - Shares av.db curated category or tags: cli, developer-tools, diff, files.
- [colordiff](https://www.automicvault.com/pkg/brew/colordiff/) - Shares av.db curated category or tags: cli, developer-tools, diff.
- [diff-so-fancy](https://www.automicvault.com/pkg/brew/diff-so-fancy/) - Shares av.db curated category or tags: cli, developer-tools, diff.
- [diffnav](https://www.automicvault.com/pkg/brew/diffnav/) - Shares av.db curated category or tags: cli, developer-tools, diff.
- [diffr](https://www.automicvault.com/pkg/brew/diffr/) - Shares av.db curated category or tags: cli, developer-tools, diff.
- [diffstat](https://www.automicvault.com/pkg/brew/diffstat/) - Shares av.db curated category or tags: cli, developer-tools, diff.
- [difftastic](https://www.automicvault.com/pkg/brew/difftastic/) - Shares av.db curated category or tags: cli, developer-tools, diff.
- [strip-nondeterminism](https://www.automicvault.com/pkg/brew/strip-nondeterminism/) - Local package facts share a topical domain. Shared terms: builds, cli, developer, developer-tools, files.
- [peru](https://www.automicvault.com/pkg/brew/peru/) - Both packages touch the same language runtime or ecosystem. Shared terms: archives, builds, cli, developer, developer-tools.
- [reprepro](https://www.automicvault.com/pkg/brew/reprepro/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, libarchive.

## Combined YAML source

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