Setting up a new Mac, or wiping and reinstalling macOS Sequoia, is exciting right up until you have to reinstall every single app. One by one. Hunting down download pages, clicking through installers, waiting. It’s the worst part of a fresh start.
There’s a better way. With Homebrew and a Brewfile, you can install every app you care about with a single Terminal command. Run it, go make coffee, come back to a fully loaded Mac.
Here’s how to set it up.

What Is Homebrew?
Homebrew is a package manager for macOS, it downloads and installs software from the command line, no browser required. It handles both command-line tools (called formulae) and full GUI apps (called casks). Think of it as an App Store you control entirely from Terminal.
Coverage is excellent. Chrome, Firefox, VS Code, Slack, Zoom, Docker, they’re all there. Obscure CLI tools too. The main thing Homebrew can’t install is anything locked exclusively to the Mac App Store.

Before You Start
You’ll need a couple of things in place before Homebrew will install cleanly on macOS Sequoia.
- Xcode Command Line Tools: Homebrew needs these. If you haven’t installed them, run
xcode-select --installin Terminal first and follow the prompts. - Terminal Full Disk Access: macOS Sequoia’s tightened privacy settings can block Homebrew from writing to certain directories. Go to System Settings > Privacy & Security > Files and Folders and make sure Terminal has the access it needs. (If you’re using a third-party terminal like iTerm2, grant it access there instead.)

Installing Homebrew
Open Terminal (Cmd + Space, type “Terminal”, hit Enter) and run this command:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

The installer will walk you through everything, including installing Xcode Command Line Tools if you skipped that step.
One thing to know: on Apple Silicon Macs (M1 through M4 and beyond), Homebrew installs to /opt/homebrew instead of /usr/local like it did on Intel. After the install finishes, the script will tell you to add Homebrew to your PATH. For Apple Silicon, that means running:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
Then restart Terminal (or run source ~/.zprofile) so the change takes effect. Skip this and brew commands won’t be recognized.
Verify the install worked:
brew doctor
You want to see “Your system is ready to brew.” If you see warnings, Homebrew will usually tell you exactly how to fix them.
Finding the Right Package Names
Before building your installer list, you need the exact Homebrew names for your apps. Search from Terminal:
brew search chrome

The results are split into Formulae (CLI tools) and Casks (GUI apps). For most apps you’d install on a fresh Mac, you want the Cask version. That’s the full application, not a command-line interface to it.
For Google Chrome, the cask name is google-chrome. That’s what goes in your list. Get the name wrong and the install will fail, so always double-check with brew search first.
You can also browse the full catalog at formulae.brew.sh if you prefer a visual interface.
Building Your Brewfile
This is where the old approach (a shell script full of brew cask install commands) has been replaced by something cleaner: a Brewfile. It’s a plain text file that lists everything you want installed, and Homebrew reads it in one shot.
Create a new Brewfile anywhere convenient, your home directory works well:
vim ~/Brewfile
(Or use nano if you’re not comfortable with vim. No judgment.)
Inside the file, list your apps like this:
tap "homebrew/cask"
# GUI apps
cask "google-chrome"
cask "firefox"
cask "visual-studio-code"
cask "slack"
cask "zoom"
cask "dropbox"
cask "vlc"
# CLI tools
brew "git"
brew "wget"
brew "node"
Use cask for GUI applications and brew for command-line tools. The tap "homebrew/cask" line at the top tells Homebrew where to look for casks. Include it.
Comments (lines starting with #) are fine and genuinely useful when you revisit this file six months later wondering why you installed something.
Save and close the file when you’re done.
Running the Bulk Install
With your Brewfile saved, install everything in it with one command:
brew bundle --file=~/Brewfile

Homebrew will work through the list top to bottom, downloading and installing each item. Depending on how many apps you have and your internet speed, this takes anywhere from a few minutes to half an hour. You don’t need to babysit it.
If one install fails (a package name changed, or something conflicts), Homebrew will log the error and move on to the next item. You won’t lose the whole run over one bad package.
Save the Brewfile Somewhere Safe
This file is only useful if you can access it when you need it, which is exactly when you’re setting up a machine that doesn’t have your files yet. Store it somewhere you can always reach:
- A private GitHub or GitLab repository (version control is a bonus)
- iCloud Drive
- A USB drive you keep with your other important stuff
A lot of people keep their Brewfile in a dotfiles repo alongside their shell config, VS Code settings, and other system preferences. That way, setting up a new Mac is a matter of cloning one repo and running two commands.
Keeping Things Updated
Once Homebrew is installed and your apps are in place, maintenance is minimal:
brew update && brew upgrade
This updates Homebrew itself and upgrades any outdated packages. Run it occasionally. Monthly is fine for most people.
Also worth running periodically to keep your disk from filling up with old package versions:
brew cleanup
Troubleshooting Common Issues
brew command not found after install
You probably skipped the PATH setup step. On Apple Silicon, run echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile, then restart Terminal.
Packages breaking after a macOS Sequoia upgrade
This happens. MariaDB and some other packages are known to need a reinstall after major macOS upgrades. Run brew doctor first. It’ll flag what’s broken. Then brew reinstall <package> for anything that needs it.
Intel Mac on macOS Sequoia, install fails
Apple Silicon gets pre-compiled binaries (bottles) for most packages. Intel Macs on Sequoia sometimes have to build from source, which takes longer and occasionally fails. Try:
brew install --build-from-source <package>
Permission errors during install
Go back to System Settings > Privacy & Security > Files and Folders and confirm Terminal has the access it needs. macOS Sequoia is stricter about this than previous versions.
Rosetta conflicts on Apple Silicon
If you’re running an x86_64 package under ARM64 and it’s failing, try forcing the native architecture:
arch -arm64 brew install <package>
A Note on Homebrew Cask vs. the Old Approach
If you used Homebrew years ago, you might remember running separate brew tap caskroom/cask commands and writing shell scripts with lines like brew cask install google-chrome. That syntax is deprecated. Cask is now built into Homebrew, and brew bundle with a Brewfile is the current standard approach: cleaner, more portable, and easier to maintain.
The old shell script method still technically works for basic installs, but Brewfiles are the way to go if you’re setting this up fresh in 2026.
You’re Set
One Brewfile, one command, one cup of coffee. That’s the whole setup. The next time you get a new Mac or do a clean install, you’re not spending an afternoon clicking through download pages. You’ll be up and running in the time it takes Homebrew to do its thing.
Keep the Brewfile updated as your app preferences change, and it’ll always reflect exactly what you want on a fresh machine.