Appearance
Homebrew
Homebrew is the Mac package manager. Install it:
bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Common Homebrew Commands
| Command | What It Does |
|---|---|
brew install <package> | Install a CLI tool |
brew install --cask <app> | Install a GUI app |
brew list | Show installed packages |
brew update | Update Homebrew itself |
brew upgrade | Upgrade all packages |
brew uninstall <package> | Remove a package |
brew search <name> | Search for packages |
brew cleanup | Remove old versions |
Homebrew. Your Package Manager
Homebrew is the unofficial (but universal) package manager for macOS. If you used apt, yum, choco, or winget: same idea.
Install Homebrew
bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Core Commands
| Command | What It Does |
|---|---|
brew install <name> | Install a command-line tool (git, node, python) |
brew install --cask <name> | Install a GUI app (firefox, visual-studio-code, discord) |
brew update | Refresh the list of available packages |
brew upgrade | Upgrade all installed packages |
brew upgrade <name> | Upgrade a specific package |
brew list | Show everything you've installed |
brew search <name> | Search for a package |
brew uninstall <name> | Remove a package |
brew info <name> | Show details about a package |
brew doctor | Diagnose common issues |
Keeping Everything Current
bash
# Update and upgrade everything in one shot
brew update && brew upgrade
# Clean up old versions
brew cleanupTip: Run
brew update && brew upgradeweekly. Or add it to your shell profile to run on terminal open.
Homebrew vs Alternatives
| Method | Best For | Auto-Update? |
|---|---|---|
| Homebrew | CLI tools + GUI apps | Manual (brew upgrade) |
| Mac App Store | Apple-curated apps, sandboxed | Automatic |
| Direct download (.dmg/.pkg) | Apps not in Homebrew or App Store | Varies (app-specific) |
Mac App Store (mas)
The mas CLI lets you manage App Store apps from the terminal.
Install
bash
brew install masCommands
| Command | What It Does |
|---|---|
mas list | Show installed App Store apps |
mas search <name> | Search the App Store |
mas install <id> | Install by app ID |
mas upgrade | Upgrade all App Store apps |
mas outdated | Show apps with available updates |
Finding App IDs
bash
mas search "Xcode"
# Output: 497799835 Xcode (16.0)
mas install 497799835One-Command Update Strategy
Create an alias that updates everything at once:
bash
# Add to ~/.zshrc
alias update-all='brew update && brew upgrade && brew cleanup && mas upgrade'Then just run:
bash
update-allApp Installation Methods Compared
.dmg Files (Disk Images)
- Double-click the
.dmgto mount it - Drag the app to the Applications folder
- Eject the disk image (right-click → Eject)
- Delete the
.dmgfrom Downloads
.pkg Files (Installers)
- Double-click the
.pkg - Follow the installer wizard
- These can install system-level components (drivers, services)
.app Files (Standalone)
Just drag to /Applications. That's it.
Homebrew Casks
bash
brew install --cask firefoxInstalls to /Applications automatically. Uninstall with brew uninstall firefox.
What to Install Where
| App Type | Recommended Method |
|---|---|
| Developer tools (git, node, python) | Homebrew (brew install) |
| Popular GUI apps | Homebrew Cask (brew install --cask) |
| Apple apps (Xcode, iMovie) | Mac App Store |
| Corporate/enterprise apps | Your IT department's method (Intune, Jamf) |
| Niche apps without Homebrew formula | Direct download from developer |
Uninstalling Apps
GUI Apps
- Open Finder → Applications
- Drag the app to Trash (or right-click → Move to Trash)
- Empty Trash
Note: Some apps leave behind preferences in
~/Library/Preferences/and support files in~/Library/Application Support/. For a clean uninstall, usebrew uninstallor an app like AppCleaner.
Homebrew Apps
bash
brew uninstall <name>Checking What's Installed
bash
# Homebrew packages
brew list
# App Store apps
mas list
# Everything in /Applications
ls /Applications