Apple introduced a few changes with the directory structure and permissions in macOS Sierra 10.12 which in the beginning broke Homebrew on macOS without some CLI magic to manually fix things. However, this has been fixed and Homebrew now full supports macOS 10.12. One of the issues was around a change in permissions on the directory /usr/local
which on a new installation either doesn’t exist or wasn’t writeable.
Therefore Homebrew changed their installation routine and migrated the installation folder to /usr/local/homebrew in order to circumvent the whole permissions issues.
Install Homebrew
The following Terminal command will download and install Homebrew. Ruby comes pre-installed with macOS and therefore just copy and paste the following command in your Terminal:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Homebrew requires the command line tools which ship with Xcode. If you don’t have Xcode or the command line tools installed, macOS will automatically prompt you to install them. You can get away with the command line tools by clicking install.
However, you can also get Xcode by downloading it free of charge from the AppStore. Here, I will simply install the command line tools.
To check for any issues after the installation, run:
brew doctor
To search for an application:
brew search <application_name>
To install an application:
brew install <application_name>
To list all applications installed by Homebrew:
brew list
To remove an installation application:
brew remove <application_name>
To update Homebrew:
brew update
Fixing brew after upgrade to macOS 10.12
If you had brew installed before upgrading to macOS 10.12 you will notice that the upgrade broke brew. The following instructions will fix the broken install and will let you upgrade brew to the latest and greatest which supports 10.12
Accept the license agreement of the command line tools shipped with Xcode
sudo xcodebuild -license
Change ownership of /usr/local to yourself:
sudo chown -R $(whoami) /usr/local
Run brew doctor and brew update. The installer of the update will inform you that it will migrate the brew repository to a new directory:
brew doctor && brew update
=> Migrating HOMEBREW_REPOSITORY (please wait)...
==> Migrated HOMEBREW_REPOSITORY to /usr/local/Homebrew!
Homebrew no longer needs to have ownership of /usr/local. If you wish you can return /usr/local to its default ownership with:
sudo chown root:wheel /usr/local
Change the owner back to the defaults with:
sudo chown root:wheel /usr/local