# Homebrew: macOS Package Manager for Python



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 install` and `brew uninstall`
- Installs [Python interpreters](https://pydevtools.com/handbook/explanation/what-is-a-python-interpreter.md) (`brew install python`)
- Installs Python tools like [uv](https://pydevtools.com/handbook/reference/uv.md) and [pipx](https://pydevtools.com/handbook/reference/pipx.md)
- Provides dependency libraries needed for Python packages (e.g. openssl, sqlite)

{{< callout type="warning" >}}
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`](https://pydevtools.com/handbook/how-to/how-to-install-python-with-uv.md) or [pyenv](https://pydevtools.com/handbook/reference/pyenv.md) which provide more reliable and granular control over Python versions. See [Should I use Homebrew to install Python?](https://pydevtools.com/handbook/explanation/should-i-use-homebrew-to-install-python.md) for the full reasoning.
{{< /callout >}}

## 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](https://docs.brew.sh)
- [Homebrew and Python](https://docs.brew.sh/Homebrew-and-Python)
- [Formula Repository](https://github.com/Homebrew/homebrew-core)
- [Should I use Homebrew to install Python?](https://pydevtools.com/handbook/explanation/should-i-use-homebrew-to-install-python.md) explains why Homebrew's Python is for Homebrew's own packages, not your projects.
- [Why should I avoid system Python?](https://pydevtools.com/handbook/explanation/why-should-i-avoid-system-python.md) covers the broader risk of using interpreters managed by another package manager.
- [How to install uv on macOS](https://pydevtools.com/handbook/how-to/how-to-install-uv-on-macos.md) walks through the recommended replacement for `brew install python`.
