I am attending AWS re: Invent 2023 next week and I need to set up my recently purchased 15" MacBook Air with all the applications I need for development and personal use. Instead of downloading the applications individually from either the App Store or the vendor’s website, I am consolidating all of my system configurations using Homebrew.
I won’t get into the specifics of installing applications and utilities using Homebrew in this post. Tutorials on the web will help you with that task. I will concentrate on using brew bundle
to gather your existing configuration and use brew
on a new machine to install the applications and utilities I use on a day-to-day basis.
Homebrew Background
I’ve used Homebrew to install the various command line utilities I use on my Macintosh. In addition, Homebrew supports graphical applications installed directly from the vendor’s website (like Google Chrome) and applications installed from the Macintosh App Store (known as MAS within Homebrew).
Clean Install
My standard procedure with a new Macintosh or with a new release of macOS is to do a clean install of the system from scratch. Although OS installation has gotten considerably better, experience with Linux, Windows, and macOS installations makes me install from scratch. The rise of cloud storage for applications allows for the easy transfer of data from machine to machine, while this process will allow for transfer of the standard applications from machine to machine.
Homebrew Bundle
The Homebrew bundle feature is the glue that ties everything together when installing the various applications and utilities. It supports command line installation as well as direct download installs and installs from MAS.
Bundle is installed when you first invoke brew bundle
and if you run brew bundle dump
it will generate a Brewfile
in the current directory listing the installed products. The Brewfile
is what you will configure and transfer to the new device to install applications.
Install Homebrew
First, we need to install Homebrew on the clean OS install. Homebrew requires the installation of the XCode command line developer tools. From a terminal prompt:
xcode-select --install
You can then install Homebrew through the standard command found on the Homebrew site:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
You’ll be asked for your password to install Homebrew and create the necessary configuration.
Migration
You are now ready to install the applications and utilities in your Brewfile
. I keep my file in a GitHub repository along with my standard zsh setup commands and other configurations.
Get the Brewfile
to the new machine and then use the brew bundle command to start the installation. The only dependency at this point is Homebrew.
brew bundle