Homebrew Primer / Glossary

This section is llm-generated

Core Concepts

  • Homebrew (“brew”)
    The actual package manager CLI (brew install foo). Manages where software comes from and how it’s installed.
  • Formula (plural: formulae)
    A recipe (written in Ruby) describing how to download, compile, and install a piece of software.
    • Example: brew install wget pulls the wget formula, builds it (or fetches a prebuilt binary), and installs it.
    • Stored in GitHub repos like homebrew-core.
  • Cask
    A type of formula, but specifically for macOS applications packaged as binaries (usually .app, .dmg, .pkg).
    • Example: brew install --cask google-chrome downloads the dmg and installs Chrome into /Applications.
    • Lives in homebrew-cask.
  • Tap
    A Git repo containing formulae or casks. Think of it as an extra “source of packages”.
    • The default is homebrew/core and homebrew/cask.
    • Anyone can make a tap: e.g. brew tap hashicorp/tap gives access to brew install hashicorp/terraform.
  • Keg
    The installed copy of a formula in Homebrew’s cellar.
    • Stored under /usr/local/Cellar/<formula>/<version> (Intel macs) or /opt/homebrew/Cellar/... (Apple Silicon).
  • Cellar
    The folder containing all kegs. It’s the “wine cellar” for your software.
  • Prefix
    The “root directory” under which Homebrew is installed.
    • /usr/local (Intel macs) or /opt/homebrew (Apple Silicon).
    • Symlinks from bin/, lib/, etc. point into the Cellar so software is on your PATH.

Supporting Concepts

  • Bottle
    A precompiled binary of a formula (so you don’t have to compile from source).
    • brew install wget usually installs a bottle.
    • If no bottle is available, it falls back to building from source.
  • Head formula
    Formula that installs from the latest commit of the project’s repo (not a release).
    • Example: brew install --HEAD neovim.
  • Taproom (rarely used term)
    Just a nickname for the collection of taps.
  • Bundle
    A Brewfile system (brew bundle) — like a lockfile or manifest. Lets you declare all the formulae, casks, and taps you want and restore them on a new machine.

Mental Model

  • Brew is the waiter.
  • Formulae are the recipes.
  • Casks are pre-boxed takeout meals (apps).
  • Taps are extra cookbooks from other chefs.
  • Cellar is the wine cellar where all bottles (installations) are stored.
  • Kegs are the actual bottles of wine (specific software versions).
  • Prefix is the front-of-house restaurant entrance (where symlinks make software available).