Brew: The Missing Package Manager for macOS (and Linux).

Updating brew

brew has its own built-in upgrade management.

brew update
brew upgrade

Cheat Sheet

Homebrew installs the stuff you need that Apple (or your Linux system) didn’t.

Important: This will install brew to ~/.local/opt/brew/, NOT /usr/local. The ability to install brew, without sudo, in your HOME directory is a relatively new feature. If you do encounter a brew install issue, report it to brew. way, report it to brew.

How to install CLI packages

brew update
brew install node

How to install GUI packages

brew update
brew cask install docker

Where are things installed?


For reference, traditional brew installs here:


brew screwed up everything, now what?

Sometimes you're compelled against all reason to do something really stupid, like brew upgrade or brew update python, and your whole system gets borked.

If you need to uninstall and reinstall local brew:

rm -rf ~/.local/opt/brew
webi brew

If you need to uninstall global brew:

For Mojave, Catalina, Big Sur, and above:

/bin/bash -c "$(curl -fsSL"

For High Sierra and below:

/bin/bash -c ruby -e "$(curl -fsSL"


Report an Issue Submit Installer Star on GitHub