Automic VaultAutomic Vault

brew

Install cdb with Homebrew, MacPorts, Nix

Create and read constant databases. Version 20251021 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install cdb

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install cdb

MacPorts ports tree · databases/cdb/Portfile · source: api.github.com

Linux

Nixverified · 92%
nix profile install nixpkgs#cdb

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

overview

Package summary

Create and read constant databases

Commands and aliases

  • cdb64dump
  • cdb64get
  • cdb64make
  • cdb64make-12
  • cdb64make-sv
  • cdb64stats
  • cdb64test
  • cdbdump
  • cdbget
  • cdbmake
  • cdbmake-12
  • cdbmake-sv
  • cdbstats
  • cdbtest

history

Project history and usage

cdb is D. J. Bernstein's constant database package: a small file format and toolset for creating immutable key-value databases with fast lookups and atomic replacement. It is aimed at workloads where data is rebuilt wholesale and then read many times.

Project history

The official cdb site describes cdb as a fast, reliable, simple package for creating and reading constant databases, with successful lookups in large databases normally taking two disk accesses and unsuccessful lookups one. The official format page republishes Bernstein's original 19960914 document, 'A structure for constant databases,' which defines the core cdb file layout, hash tables, records, little-endian 32-bit quantities, and hash function.

The official download page records cdb-0.55 on 1996-09-22 as the first release, cdb-0.70 on 2000-02-17 as an almost complete API rewrite with mmap suggested by Ken Lalonde, cdb-0.75 on 2000-02-19 as a bug-fix and performance release, and a 2025-10-21 release adding cdb64 support, configure/make install support, and updated documentation.

Adoption history

cdb's adoption has been unusually long-lived for a tiny database format. The official site lists independent support packages and bindings in Perl, Ruby, Go, Rust, Python/Node wrappers through cdb64-rs, and TinyCDB wrappers. The Homebrew input also records cdb packages in Homebrew, MacPorts, and Nix.

How it is used

cdb is used when a program needs a compact, immutable lookup table that can be regenerated atomically. The package includes cdbmake for building databases, cdbget for lookup, cdbdump for dumping records, cdbstats for inspection, and a C read API documented on the official site.

Why package nerds care

For package nerds, cdb is part of the D. J. Bernstein software lineage and a canonical example of a tiny, stable file format that escaped its original codebase. Its appeal is the combination of predictable lookup behavior, crash-safe replacement, public-domain-style licensing in packaged builds, and easy reimplementation in many languages.

Timeline

  • 1996-09-14: Original cdb format document date on the official format page.
  • 1996-09-22: cdb-0.55 first release on the official download page.
  • 2000-02-17: cdb-0.70 rewrote almost everything from scratch and incorporated mmap.
  • 2000-02-19: cdb-0.75 fixed a database creation bug and improved cdbmake performance.
  • 2025-10-21: Official release added cdb64 support and modern configure/install support.

Related projects

  • The official intro page lists cdb64, cdb64-rs, CDB_File, cdb-full, CDB::TinyCDB, and Go implementations as packages that support the cdb or cdb64 formats.

security posture

Risk level: blue

broad file, network, media, or database tool signal.

Risk classifier

blue risk · medium confidence · tool

Why

  • broad file, network, media, or database tool signal

Signals

  • text:database

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.

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
cdb64dumpcliglobal executable
cdb64getcliglobal executable
cdb64makecliglobal executable
cdb64make-12cliglobal executable
cdb64make-svcliglobal executable
cdb64statscliglobal executable
cdb64testcliglobal executable
cdbdumpcliglobal executable
cdbgetcliglobal executable
cdbmakecliglobal executable
cdbmake-12cliglobal executable
cdbmake-svcliglobal executable
cdbstatscliglobal executable
cdbtestcliglobal 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 version20251021
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://cdb.cr.yp.to/

  • infoNo package-manager update timestamp was available.low confidence
  • infoRelease/tag comparison is only available for GitHub repositories.https://cdb.cr.yp.to/none confidence

install metadata

Package metadata

Package keybrew:cdb
Version20251021
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/cdb
Homepagehttps://cdb.cr.yp.to/
Upstream docshttps://cdb.cr.yp.to/
LicenseLicenseRef-Homebrew-public-domain OR CC0-1.0 OR 0BSD OR MIT-0 OR MIT
Source archivehttps://cdb.cr.yp.to/cdb-20251021.tar.gz
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 Namecdb
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.

Nix95%

cdb

nix profile install nixpkgs#cdb
  • normalized package name match
  • Matched by: Cdb
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/cd/cdb/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
MacPorts95%

cdb

sudo port install cdb
  • normalized package name match
  • Matched by: Cdb
MacPorts ports tree · api.github.com · MacPorts ports tree: databases/cdb/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