Automic VaultAutomic Vault

brew

Install bfs with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman

Breadth-first version of find. Version 4.1.4 via Homebrew; verified 2026-06-29.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install bfs

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install bfs

MacPorts ports tree · sysutils/bfs/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add bfs

Alpine Linux edge package indexes · bfs · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install bfs

Debian stable package indexes · bfs · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install bfs

Fedora Rawhide package metadata · bfs · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#bfs

nixpkgs package indexes · pkgs/by-name/bf/bfs/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S bfs

Arch Linux sync databases · bfs · source: geo.mirror.pkgbuild.com

overview

Package summary

Breadth-first version of find

Commands and aliases

  • bfs

history

Project history and usage

bfs is a C implementation of a breadth-first variant of the Unix find command. It aims to remain compatible with POSIX, GNU, BSD, and macOS find behavior while adding a friendlier command-line parser, diagnostics, and practical extensions.

Project history

The official repository was created in June 2015. Early tags show a pre-1.0 series before the project reached 1.0 in 2017, followed by 2.0 in October 2020, 3.0 in July 2023, 4.0 in August 2024, and active 4.1.x maintenance through June 2026.

The README documents the core design choice: unlike traditional depth-first find traversal, bfs lists shallower paths first. Around that foundation it adds compatibility with several find dialects, argument-order leniency, typo suggestions, expression warnings, and convenience extensions such as -exclude and -nohidden.

Adoption history

bfs has unusually broad packaging for a small Unix utility. Its README lists packages for Alpine, Arch, Debian/Ubuntu, Fedora, Gentoo, Guix, macOS, and other systems, and the input separately records Homebrew, MacPorts, Nix, pacman, zypper, Debian, Ubuntu, and Alpine packaging.

That packaging footprint reflects the niche: bfs is not a replacement for every find use, but it is attractive to users who want familiar find syntax with better traversal behavior, diagnostics, and cross-platform consistency.

How it is used

Users run bfs much like find: searching directory trees by name, type, size, metadata, predicates, and actions. Its breadth-first order can surface shallow matches earlier, and its parser accepts common argument placements that traditional find variants reject.

The tool is also useful in scripts when its extensions matter, but its package value is strongest for interactive shell use where friendlier errors and faster discovery of shallow matches save time.

Why package nerds care

bfs is notable to package-focused users because it reimagines one of Unix's oldest daily-driver commands without throwing away compatibility. That makes it a rare modern system utility that can be installed next to the base tool and immediately compared on real workflows.

Its significance is not just breadth-first search. The interesting packaging story is a small, carefully maintained C utility earning broad distro adoption by being faster to understand than find, stricter about warning users when expressions are probably wrong, and portable enough to ship across Linux and macOS ecosystems.

Timeline

  • 2015: Repository created in June.
  • 2017: 1.0 released.
  • 2020: 2.0 released in October.
  • 2023: 3.0 released in July.
  • 2024: 4.0 released in August.
  • 2026: 4.1.4 released in June.

Related projects

  • Related projects include POSIX find, GNU findutils, BSD find implementations, fd for simple name-based search, and locate/plocate for indexed filename search.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
bfscliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version4.1.4
manager updated2026-06-29
local dataok
upstreamcurrent
latest detected4.1.4

https://github.com/tavianator/bfs

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:bfs
Version4.1.4
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/bfs
Homepagehttps://tavianator.com/projects/bfs.html
Repositoryhttps://github.com/tavianator/bfs
Upstream docshttps://tavianator.com/projects/bfs.html
License0BSD
Source archivehttps://github.com/tavianator/bfs/archive/refs/tags/4.1.4.tar.gz
Last updated2026-06-29T20:47:31Z
Pulseupdated
Dependenciesoniguruma
Build dependenciespkgconf
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namebfs
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

bfs 4.0.6-1

Breadth-first version of find(1)

https://github.com/tavianator/bfs

sudo apt install bfs
  • Section: utils
  • Architecture: amd64
  • 5 dependencies
  • normalized package name match
  • Matched by: Bfs
Debian stable package indexes · deb.debian.org · Debian stable package indexes: bfs from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

bfs

nix profile install nixpkgs#bfs
  • normalized package name match
  • Matched by: Bfs
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/bf/bfs/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
Ubuntu apt95%

bfs 3.1.2-1build1

Breadth-first version of find(1)

https://github.com/tavianator/bfs

sudo apt install bfs
  • Section: universe/utils
  • Architecture: amd64
  • 5 dependencies
  • normalized package name match
  • Matched by: Bfs
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: bfs from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
apk95%

bfs 4.1-r1

Breadth-first variant of the UNIX find command

https://github.com/tavianator/bfs

sudo apk add bfs
  • License: 0BSD
  • Architecture: x86_64
  • Source Package: bfs
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Bfs
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: bfs from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

bfs-bash-completion 4.1-r1

Bash completions for bfs

https://github.com/tavianator/bfs

sudo apk add bfs-bash-completion
  • License: 0BSD
  • Architecture: x86_64
  • Source Package: bfs
  • normalized package name match
  • Matched by: Bfs
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: bfs-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

bfs-doc 4.1-r1

Breadth-first variant of the UNIX find command (documentation)

https://github.com/tavianator/bfs

sudo apk add bfs-doc
  • License: 0BSD
  • Architecture: x86_64
  • Source Package: bfs
  • normalized package name match
  • Matched by: Bfs
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: bfs-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

bfs-fish-completion 4.1-r1

Fish completions for bfs

https://github.com/tavianator/bfs

sudo apk add bfs-fish-completion
  • License: 0BSD
  • Architecture: x86_64
  • Source Package: bfs
  • normalized package name match
  • Matched by: Bfs
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: bfs-fish-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

bfs-zsh-completion 4.1-r1

Zsh completions for bfs

https://github.com/tavianator/bfs

sudo apk add bfs-zsh-completion
  • License: 0BSD
  • Architecture: x86_64
  • Source Package: bfs
  • normalized package name match
  • Matched by: Bfs
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: bfs-zsh-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
dnf95%

bfs 4.1.2-1.fc45

A breadth-first version of the UNIX find command

https://tavianator.com/projects/bfs.html

sudo dnf install bfs
  • License: 0BSD
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: bfs
  • 7 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Bfs
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: bfs from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

bfs 4.1.2-1

A breadth-first version of find

https://tavianator.com/projects/bfs.html

sudo pacman -S bfs
  • License: 0BSD
  • Architecture: x86_64
  • 5 dependencies
  • normalized package name match
  • Matched by: Bfs
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: bfs from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
MacPorts95%

bfs

sudo port install bfs
  • normalized package name match
  • Matched by: Bfs
MacPorts ports tree · api.github.com · MacPorts ports tree: sysutils/bfs/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment