Homebrew: macOS Package Manager for Python
by Tim Hopper
Homebrew is a package manager for macOS and Linux that makes installing software packages simple. While not Python-specific, it provides an important way to install Python tools and dependencies on macOS systems.
Core Capabilities
- Installs packages (“formulae”) and larger binary packages (“casks”)
- Manages package dependencies
- Updates installed packages
- Installation and uninstallation using
brew installandbrew uninstall - Installs Python interpreters (
brew install python) - Installs Python tools like uv and pipx
- Provides dependency libraries needed for Python packages (e.g. openssl, sqlite)
While Homebrew can install Python, it’s not recommended as your primary way to manage Python versions for development projects. Homebrew updates can unexpectedly change Python versions, breaking your project environments. Instead, use dedicated Python version management tools like
uv python install or pyenv which provide more reliable and granular control over Python versions. See Should I use Homebrew to install Python? for the full reasoning.Pros
- Simple to use with consistent commands
- Well-maintained and stable
- Large collection of available packages
Cons
- macOS/Linux only (no Windows support)
- Can conflict with system Python on macOS
- Updates may break existing Python setups
- Less granular control compared to Python-specific tools
Learn More
- Homebrew Documentation
- Homebrew and Python
- Formula Repository
- Should I use Homebrew to install Python? explains why Homebrew’s Python is for Homebrew’s own packages, not your projects.
- Why should I avoid system Python? covers the broader risk of using interpreters managed by another package manager.
- How to install uv on macOS walks through the recommended replacement for
brew install python.
Last updated on