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

Identify or delete duplicate files. Version 2.4.0 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:fdupes
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install fdupes
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install fdupes
```

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

### Linux

- apk (92%):

```sh
sudo apk add fdupes
```

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

- Debian apt (92%):

```sh
sudo apt install fdupes
```

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

- dnf (92%):

```sh
sudo dnf install fdupes
```

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

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

- pacman (92%):

```sh
sudo pacman -S fdupes
```

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

- zypper (92%):

```sh
sudo zypper install fdupes
```

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

## Package facts

- **Package key:** brew:fdupes
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/fdupes>
- **Version:** 2.4.0
- **Source summary:** Identify or delete duplicate files
- **Homepage:** <https://github.com/adrianlopezroche/fdupes>
- **Repository:** <https://github.com/adrianlopezroche/fdupes>
- **Upstream docs:** <https://github.com/adrianlopezroche/fdupes#readme>
- **License:** MIT
- **Source archive:** <https://github.com/adrianlopezroche/fdupes/releases/download/v2.4.0/fdupes-2.4.0.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- fdupes (cli)
- fdupes (alias)

## Dependencies

- pcre2

## Uses from macOS

- ncurses
- sqlite

## Install behavior

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

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.4.0
- Local data: ok
- Upstream repository: https://github.com/adrianlopezroche/fdupes
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

fdupes is a long-running command-line utility for identifying and optionally deleting duplicate files under one or more directories. It is a classic small Unix tool: give it paths, recurse if requested, compare files, print duplicate groups, and let the user decide what to remove.

### Project history

The official README defines fdupes as a program for identifying duplicate files in specified directories. Its CHANGES file documents an old 1.x line with features such as semi-automatic deletion, hardlink handling, no-empty-file filtering, sameline output, size summaries, and safer comparisons.

The 1.6 and 2.x lines added more automation and safety features. Version 2.0.0 introduced an ncurses mode for interactive deletion, size filters, time display, ordering controls, logging, and an autotools build system. Later releases added cache support to speed comparisons, nanosecond file-time precision where available, and more defensive deletion checks.

The current development tree warns users that the repository is a development version and recommends package-manager installs or release downloads for ordinary users. That is a very fdupes-shaped maintenance stance: the utility is small, but because it can delete data, release discipline matters.

### Adoption history

The supplied package facts show fdupes packaged by Alpine, Homebrew, Debian, Fedora/dnf, MacPorts, Nix, Arch/pacman, Ubuntu, and openSUSE/zypper. That breadth is the adoption story: duplicate-file cleanup is a universal enough need that a small C utility earned a place in most Unix-like package sets.

GitHub releases show maintained 2.x releases through 2025, while the changelog preserves the older 1.x feature history. fdupes has remained relevant because it avoids becoming a storage-management suite; it does one risky filesystem job and exposes conservative prompts and options around it.

### How it is used

Users run fdupes against directories, commonly with --recurse to scan trees and --delete only after reviewing duplicate groups. The README explicitly warns that deletion can cause data loss in confusing symlink or repeated-directory cases, so interactive review and careful option choice are part of normal use.

The tool compares candidates efficiently by filtering and signing file contents, and modern versions can cache file signatures. It can also summarize duplicates, omit the first file in each set, preserve by ordering, and operate non-interactively when users deliberately choose that risk.

### Why package nerds care

fdupes is one of those tiny utilities package managers keep around because it solves an admin problem without pulling in a desktop app or indexing service. It is also a good example of why mature CLI tools accrete flags: each flag encodes a real filesystem edge case someone hit.

Its significance is practical rather than fashionable. It is the package you install during disk-cleanup triage, run once, and then keep in your mental toolbox.

### Timeline

- 1.0: Earliest documented fdupes release in the official CHANGES file.
- 2014: GitHub release history includes fdupes 1.51.
- 2016: fdupes 1.6.0 adds nohidden, permissions, ordering, reverse, immediate deletion, and comparison speedups.
- 2019: fdupes 2.0.0 released with ncurses deletion mode and autotools installation.
- 2025: fdupes 2.4.0 released.

### Related projects

- Operating-system package managers are the recommended install route for normal users.
- Filesystem cleanup tools such as rdfind and jdupes occupy a similar duplicate-file niche, though they are separate projects.

### Sources

- <https://github.com/adrianlopezroche/fdupes>
- <https://raw.githubusercontent.com/adrianlopezroche/fdupes/master/README.md>
- <https://raw.githubusercontent.com/adrianlopezroche/fdupes/master/CHANGES>
- <https://raw.githubusercontent.com/adrianlopezroche/fdupes/master/INSTALL>
- <https://api.github.com/repos/adrianlopezroche/fdupes/releases>
- <https://formulae.brew.sh/formula/fdupes>


## 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:** fdupes
- **Version Scheme:** 1
- **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 - fdupes - 1:2.3.2-1: normalized package name match | Debian stable package indexes: fdupes from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | identifies duplicate files within given directories | https://github.com/adrianlopezroche/fdupes
- Nix - fdupes: normalized package name match | nixpkgs package indexes: pkgs/by-name/fd/fdupes/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - fdupes - 1:2.3.0-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: fdupes from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | identifies duplicate files within given directories | https://github.com/adrianlopezroche/fdupes
- apk - fdupes - 2.4.0-r0: normalized package name match | Alpine Linux edge package indexes: fdupes from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | identifying or deleting duplicate files residing within specified directories | https://github.com/adrianlopezroche/fdupes
- apk - fdupes-doc - 2.4.0-r0: normalized package name match | Alpine Linux edge package indexes: fdupes-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | identifying or deleting duplicate files residing within specified directories (documentation) | https://github.com/adrianlopezroche/fdupes
- dnf - fdupes - 2.4.0-3.fc44: normalized package name match | Fedora Rawhide package metadata: fdupes from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Finds duplicate files in a given set of directories | https://github.com/adrianlopezroche/fdupes
- pacman - fdupes - 1:2.4.0-2: normalized package name match | Arch Linux sync databases: fdupes from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | a program for identifying or deleting duplicate files residing within specified directories | https://github.com/adrianlopezroche/fdupes
- zypper - fdupes - 2.4.0-1.3: normalized package name match | openSUSE Tumbleweed package metadata: fdupes from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Tool to identify or delete duplicate files | https://github.com/adrianlopezroche/fdupes
- MacPorts - fdupes: normalized package name match | MacPorts ports tree: sysutils/fdupes/Portfile from https://api.github.com/repos/macports/macports-ports/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.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [pcre2](https://www.automicvault.com/pkg/brew/pcre2/) - Runtime dependency declared by Homebrew.
- [jdupes](https://www.automicvault.com/pkg/brew/jdupes/) - Shares av.db curated category or tags: cli, deduplication, duplicate-files, file-management, filesystem.
- [periscope](https://www.automicvault.com/pkg/brew/periscope/) - Shares av.db curated category or tags: cli, deduplication, duplicate-files, file-management, filesystem.
- [rmlint](https://www.automicvault.com/pkg/brew/rmlint/) - Shares av.db curated category or tags: cli, deduplication, duplicate-files, file-management, filesystem.
- [ddh](https://www.automicvault.com/pkg/brew/ddh/) - Shares av.db curated category or tags: cli, deduplication, duplicate-files, file-management, system.
- [dupseek](https://www.automicvault.com/pkg/brew/dupseek/) - Shares av.db curated category or tags: cli, duplicate-files, file-cleanup, file-management, system.
- [czkawka](https://www.automicvault.com/pkg/brew/czkawka/) - Shares av.db curated category or tags: cli, duplicate-files, file-management, system.
- [duff](https://www.automicvault.com/pkg/brew/duff/) - Shares av.db curated category or tags: cli, deduplication, duplicate-files, filesystem, system.
- [dust](https://www.automicvault.com/pkg/brew/dust/) - Shares av.db curated category or tags: cli, file-management, filesystem, system.

## Combined YAML source

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