# Install uutils-diffutils with Homebrew, Nix, winget, apk, chocolatey, apt, dnf, MacPorts, pacman, zypper, scoop

Cross-platform Rust rewrite of the GNU diffutils. Version 0.5.0 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#uutils-diffutils.

## Install

```sh
sudo av install brew:uutils-diffutils
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install uutils-diffutils
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install diffutils
```

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

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#uutils-diffutils
```

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

- apk (92%):

```sh
sudo apk add diffutils
```

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

- Debian apt (92%):

```sh
sudo apt install diffutils
```

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

- dnf (92%):

```sh
sudo dnf install diffutils
```

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

- pacman (92%):

```sh
sudo pacman -S diffutils
```

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

- zypper (92%):

```sh
sudo zypper install diffutils
```

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

### Windows

- winget (92%):

```sh
winget install --id uutils.diffutils -e
```

  Evidence: Windows Package Manager source index: uutils.diffutils from https://cdn.winget.microsoft.com/cache/source.msix

- Chocolatey (92%):

```sh
choco install diffutils
```

  Evidence: Chocolatey community package catalog: diffutils from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','dell-omsa'

- Scoop (92%):

```sh
scoop install main/diffutils
```

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

## Package facts

- **Package key:** brew:uutils-diffutils
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/uutils-diffutils>
- **Version:** 0.5.0
- **Source summary:** Cross-platform Rust rewrite of the GNU diffutils
- **Homepage:** <https://uutils.github.io/diffutils/>
- **Repository:** <https://github.com/uutils/diffutils>
- **Upstream docs:** <https://github.com/uutils/diffutils>
- **License:** Apache-2.0 OR MIT
- **Source archive:** <https://github.com/uutils/diffutils/archive/refs/tags/v0.5.0.tar.gz>
- **Generated:** 2026-07-26T07:20:29+00:00

## Executables

- diffutils (cli)
- udiffutils (cli)
- uu-cmp (cli)
- uu-diff (cli)
- uu-diffutils (cli)
- diffutils (alias)
- udiffutils (alias)
- uu-cmp (alias)
- uu-diff (alias)
- uu-diffutils (alias)

## Build dependencies

- rust

## Install behavior

- Post-install hook: not defined
- Caveats: All commands have been installed with the prefix "uu-". If you need to use these commands with their normal names, you can add a "uubin" directory to your PATH from your bashrc like: PATH="$HOMEBREW_PREFIX/opt/uutils-diffutils/libexec/uubin:$PATH"
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-26
- Package-manager version: 0.5.0
- Local data: ok
- Upstream repository: https://github.com/uutils/diffutils
- Upstream latest detected: v0.5.0 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

uutils-diffutils is the uutils Rust implementation of the GNU diffutils family: diff, cmp, diff3, and sdiff.

### Project history

The repository was created in 2021 and describes itself as a drop-in replacement of diffutils in Rust. Its README says the implementation began from an incomplete diff generator in Rust's compiletest tooling and was adapted toward compatibility with GNU diff and patch workflows.

### Adoption history

Compared with uutils-coreutils, diffutils is younger and less widely adopted, but it sits inside the same uutils ecosystem of Rust rewrites of standard Unix command families. The official project page labels it Beta and states that differences from GNU diffutils are treated as bugs.

Package metadata in this batch shows the Rust uutils package available through Homebrew, Nix, Scoop, and winget, while traditional GNU diffutils remains the mainstream package in many Unix distributions.

### How it is used

Its practical use is familiar diffutils work: comparing files and directories, producing unified diffs, and supporting tools and scripts that expect diff-style output compatible with GNU diff and patch.

### Why package nerds care

For package nerds, uutils-diffutils is interesting because diff is both a daily developer tool and a compatibility trap. A drop-in rewrite must satisfy old scripts, patch pipelines, and packaging tests, so even a small behavior difference is treated as a packaging-level bug.

### Timeline

- 2021: uutils/diffutils repository created on GitHub.
- 2024: v0.4.0 release appears in the official GitHub releases feed.
- 2026: v0.5.0 marked as latest in the official GitHub release listing.

### Related projects

- Related projects include GNU diffutils, GNU patch, Rust compiletest, uutils coreutils, and other uutils command-family rewrites.

### Sources

- GitHub API for repository creation date and releases.
- <https://github.com/uutils/diffutils README for origin, supported commands, and build example.>
- <https://uutils.org/diffutils/ for Beta status and GNU compatibility goal.>
- source_facts.package-manager for package-manager availability.


## 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:** uutils-diffutils
- **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 - uutils-diffutils: normalized package name match | nixpkgs package indexes: pkgs/by-name/uu/uutils-diffutils/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- winget - uutils.diffutils: normalized package name match | Windows Package Manager source index: uutils.diffutils from https://cdn.winget.microsoft.com/cache/source.msix
- MacPorts - diffutils: installed executable or alias match | MacPorts ports tree: sysutils/diffutils/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Debian apt - diffutils - 1:3.10-4: installed executable or alias match | Debian stable package indexes: diffutils from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | File comparison utilities | https://www.gnu.org/software/diffutils/
- Debian apt - diffutils-doc - 1:3.10-4: installed executable or alias match | Debian stable package indexes: diffutils-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Documentation for GNU diffutils in HTML format | https://www.gnu.org/software/diffutils/
- Nix - diffutils: installed executable or alias match | nixpkgs package indexes: diffutils from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- Ubuntu apt - diffutils - 1:3.10-1build1: installed executable or alias match | Ubuntu 24.04 LTS package indexes: diffutils from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | File comparison utilities | https://www.gnu.org/software/diffutils/
- Ubuntu apt - diffutils-doc - 1:3.10-1build1: installed executable or alias match | Ubuntu 24.04 LTS package indexes: diffutils-doc from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Documentation for GNU diffutils in HTML format | https://www.gnu.org/software/diffutils/
- apk - diffutils - 3.12-r0: installed executable or alias match | Alpine Linux edge package indexes: diffutils from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Show differences among files | https://www.gnu.org/software/diffutils/
- apk - diffutils-doc - 3.12-r0: installed executable or alias match | Alpine Linux edge package indexes: diffutils-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Show differences among files (documentation) | https://www.gnu.org/software/diffutils/
- dnf - diffutils - 3.12-5.fc44: installed executable or alias match | Fedora Rawhide package metadata: diffutils from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | GNU collection of diff utilities | https://www.gnu.org/software/diffutils/diffutils.html
- pacman - diffutils - 3.12-2: installed executable or alias match | Arch Linux sync databases: diffutils from https://geo.mirror.pkgbuild.com/core/os/x86_64/core.db.tar.gz | Utility programs used for creating patch files | https://www.gnu.org/software/diffutils
- zypper - diffutils - 3.12-1.3: installed executable or alias match | openSUSE Tumbleweed package metadata: diffutils from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | GNU diff Utilities | https://www.gnu.org/software/diffutils/
- zypper - diffutils-lang - 3.12-1.3: installed executable or alias match | openSUSE Tumbleweed package metadata: diffutils-lang from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Translations for package diffutils | https://www.gnu.org/software/diffutils/
- Chocolatey - diffutils: installed executable or alias match | Chocolatey community package catalog: diffutils from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','dell-omsa'
- Scoop - main/diffutils: installed executable or alias match | Scoop official bucket manifest trees: bucket/diffutils.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## 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.
- [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.
- [rust](https://www.automicvault.com/pkg/brew/rust/) - Build dependency declared by Homebrew.
- [sad](https://www.automicvault.com/pkg/brew/sad/) - Shares av.db curated category or tags: cli, developer-tools, diff, rust.
- [uutils-findutils](https://www.automicvault.com/pkg/brew/uutils-findutils/) - Shares av.db curated category or tags: cli, developer-tools, gnu-compatible, rust.
- [action-validator](https://www.automicvault.com/pkg/brew/action-validator/) - Shares av.db curated category or tags: cli, developer-tools, rust.
- [add-determinism](https://www.automicvault.com/pkg/brew/add-determinism/) - Shares av.db curated category or tags: cli, developer-tools, rust.
- [adrs](https://www.automicvault.com/pkg/brew/adrs/) - Shares av.db curated category or tags: cli, developer-tools, rust.
- [air](https://www.automicvault.com/pkg/brew/air/) - Shares av.db curated category or tags: cli, developer-tools, rust.
- [argc](https://www.automicvault.com/pkg/brew/argc/) - Shares av.db curated category or tags: cli, developer-tools, rust.
- [as-tree](https://www.automicvault.com/pkg/brew/as-tree/) - Shares av.db curated category or tags: cli, developer-tools, rust.
- [uutils-coreutils](https://www.automicvault.com/pkg/brew/uutils-coreutils/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, compatible, cross, cross-platform, gnu.

## Combined YAML source

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