# Install dyff with Homebrew, MacPorts, Nix, scoop, zypper

Diff tool for YAML files, and sometimes JSON. Version 1.12.0 via Homebrew; verified 2026-04-26.

## Install

```sh
sudo av install brew:dyff
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install dyff
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install dyff
```

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

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#dyff
```

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

- zypper (92%):

```sh
sudo zypper install dyff
```

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

### Windows

- Scoop (92%):

```sh
scoop install main/dyff
```

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

## Package facts

- **Package key:** brew:dyff
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/dyff>
- **Version:** 1.12.0
- **Source summary:** Diff tool for YAML files, and sometimes JSON
- **Homepage:** <https://github.com/homeport/dyff>
- **Repository:** <https://github.com/homeport/dyff>
- **Upstream docs:** <https://github.com/homeport/dyff#readme>
- **License:** MIT
- **Source archive:** <https://github.com/homeport/dyff/archive/refs/tags/v1.12.0.tar.gz>
- **Last updated:** 2026-04-26T23:34:08Z
- **Generated:** 2026-07-09T07:20:21+00:00

## Executables

- dyff (cli)
- dyff (alias)

## Build dependencies

- go

## 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-09
- Package-manager version: 1.12.0
- Package-manager updated: 2026-04-26
- Local data: ok
- Upstream repository: https://github.com/homeport/dyff
- Upstream latest detected: v1.12.0 (current)
## Project history and usage

dyff is Homeport's diff tool for YAML files and sometimes JSON. Its official README says it was inspired by old BOSH v1 deployment output that reported only the changed parts of YAML from one version to another.

### Project history

The official git history starts on 2018-03-09, with early commits adding Cobra-generated command structure and, by 2018-03-11, json, yaml, and between subcommands. Tags begin with v0.1-alpha in April 2018 and continue through v1.12.0 in April 2026.

### Adoption history

dyff spread through infrastructure and configuration workflows rather than general prose diffing. Its README documents FreeBSD ports/packages, Homebrew tap installation, mise, MacPorts, GitHub release binaries, a curl installer, and go install; the batch input also lists Homebrew, MacPorts, Nix, Scoop, and zypper.

### How it is used

dyff compares local files, remote URIs, or stdin; reports differences by YAML document location; can use Spruce dot-style paths or go-patch path syntax; converts YAML and JSON; preserves map order; and can be wired into kubectl diff or Git external diff commands.

### Why package nerds care

dyff is package-nerd relevant because modern infrastructure is YAML-heavy and ordinary line diff is often noisy for structured config. It packages the BOSH/Cloud Foundry style of semantic manifest comparison into a standalone CLI that also fits Kubernetes, Git, CI, and cross-platform binary distribution.

### Timeline

- 2018: Initial git commit and alpha tags.
- 2018: Early subcommands for JSON conversion, YAML conversion, and file comparison land in the official repository.
- 2026: v1.12.0 tagged on 2026-04-26.

### Related projects

- The official README names BOSH v1 as the inspiration and references Spruce path syntax, go-patch paths, kubectl diff integration, cf-deployment examples, Git external diff usage, jq pipelines, and Go installation.

### Sources

- <https://github.com/homeport/dyff#readme>
- <https://github.com/homeport/dyff/blob/main/.docs/commands/dyff.md>
- <https://github.com/homeport/dyff>


## 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:** dyff
- **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 - dyff: normalized package name match | nixpkgs package indexes: pkgs/by-name/dy/dyff/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- zypper - dyff - 1.12.0-1.1: normalized package name match | openSUSE Tumbleweed package metadata: dyff from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Diff tool for YAML files, and sometimes JSON | https://github.com/homeport/dyff
- MacPorts - dyff: normalized package name match | MacPorts ports tree: textproc/dyff/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/dyff: normalized package name match | Scoop official bucket manifest trees: bucket/dyff.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.
- [go](https://www.automicvault.com/pkg/brew/go/) - Build dependency declared by Homebrew.
- [colordiff](https://www.automicvault.com/pkg/brew/colordiff/) - Shares av.db curated category or tags: cli, developer-tools, diff.
- [config-file-validator](https://www.automicvault.com/pkg/brew/config-file-validator/) - Shares av.db curated category or tags: cli, configuration, developer-tools, json, yaml.
- [dhall-json](https://www.automicvault.com/pkg/brew/dhall-json/) - Shares av.db curated category or tags: cli, configuration, developer-tools, json, yaml.
- [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.
- [diffoci](https://www.automicvault.com/pkg/brew/diffoci/) - Shares av.db curated category or tags: cli, developer-tools, diff.
- [diffoscope](https://www.automicvault.com/pkg/brew/diffoscope/) - 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.
- [xcdiff](https://www.automicvault.com/pkg/brew/xcdiff/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, diff, files.
- [yamlfmt](https://www.automicvault.com/pkg/brew/yamlfmt/) - Both packages work with overlapping file formats or content types. Shared terms: cli, configuration, developer, developer-tools, files.

## Combined YAML source

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