Automic VaultAutomic Vault

brew

Install btdu with Homebrew, Nix

Sampling disk usage profiler for btrfs. Version 0.7.2 via Homebrew; verified 2026-07-03.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install btdu

local Homebrew formula metadata

Linux

Nixverified · 92%
nix profile install nixpkgs#btdu

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

overview

Package summary

Sampling disk usage profiler for btrfs

Commands and aliases

  • btdu

history

Project history and usage

btdu is a sampling disk-usage profiler for btrfs. It exists because copy-on-write snapshots, reflinks, extent sharing, and compression make classic directory walkers like du and ncdu poor explanations of real btrfs space usage.

Project history

CyberShadow started btdu in November 2020, with the first public release tag v0.1.0 shortly afterward. The project is written for the btrfs filesystem and uses sampling over filesystem space rather than a conventional recursive directory traversal.

The README explains that btdu samples random points in the disk space, asks btrfs what is stored there, records a representative path, and repeats indefinitely. The result is initially approximate but becomes progressively more accurate as sampling continues.

Adoption history

btdu has a narrower audience than general disk analyzers, but the README documents several distribution paths: native distro packages where available, static binaries from GitHub releases, latest CI builds, Nix flakes, and source builds using the D compiler and Dub.

The Homebrew and Nix packaging in the input reflects that btrfs users often still want btdu available from cross-platform package managers even though its runtime target is btrfs rather than generic macOS storage.

How it is used

Users run btdu with root privileges against the top-level subvolume of a btrfs filesystem. It can launch an interactive terminal UI, run headless for scripts, export and import sampling results, compare baselines, and use expert or physical-space modes for deeper analysis.

Why package nerds care

btdu is significant because it packages filesystem theory into a small terminal tool. It is not another ncdu clone; it is a btrfs-specific answer to shared extents, compression, snapshots, unreachable extent fragments, and logical-versus-physical allocation.

Timeline

  • 2020: First git commit and v0.1.0 release.
  • 2025: v0.6.0 release appears in git history.
  • 2026: v0.7.2 release appears in git history.

Related projects

  • The README contrasts btdu with ncdu for classic disk-usage analysis.
  • The README links compsize as a special-purpose btrfs compression-space tool.
  • The README names btsdu, the Btrfs Snapshot Disk Usage Analyzer, in its See Also section.

Sources

  • Local git history from https://github.com/CyberShadow/btdu shows first commit in 2020 and release tags v0.1.0, v0.6.0, and v0.7.2.
  • Official CONCEPTS.md explains logical versus physical space and btdu size metrics: https://raw.githubusercontent.com/CyberShadow/btdu/master/CONCEPTS.md
  • Official README describes btdu as a sampling disk usage profiler for btrfs and explains the random sampling algorithm: https://raw.githubusercontent.com/CyberShadow/btdu/master/README.md
  • Official README documents use cases, install paths, root/top-level-subvolume usage, headless mode, import/export, compare mode, and See Also: https://raw.githubusercontent.com/CyberShadow/btdu/master/README.md

security posture

No protected-tool coverage found yet

No matching local secret-handling manifest was found for btdu. Nucleus package metadata is still published here so future coverage has a stable package URL.

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 2 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 3 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
btducliglobal 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 version0.7.2
manager updated2026-07-03
local dataok
upstreamcurrent
latest detectedv0.7.2

https://github.com/CyberShadow/btdu

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:btdu
Version0.7.2
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/btdu
Homepagehttps://github.com/CyberShadow/btdu
Repositoryhttps://github.com/CyberShadow/btdu
Upstream docshttps://github.com/CyberShadow/btdu#readme
LicenseGPL-2.0-only
Source archivehttps://github.com/CyberShadow/btdu/archive/refs/tags/v0.7.2.tar.gz
Last updated2026-07-03T15:25:04-04:00
Pulseupdated
Dependenciesncurses
Build dependenciesbtrfs-progs, dub, ldc
Bottleavailable (on arm64_linux, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namebtdu
Version Scheme0
Revision0
Requirements
  • linux
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.

Nix95%

btdu

nix profile install nixpkgs#btdu
  • normalized package name match
  • Matched by: Btdu
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/bt/btdu/package.nix from https://api.github.com/repos/NixOS/nixpkgs/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

  • Nucleus package database
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment