Se scaricare .dmg dai siti web ti sembra medievale, hai ragione. Homebrew ti fa installare software da terminale con la comodita' di apt su Linux.
1. Installazione
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
~5 minuti. Installa Xcode Command Line Tools se mancano.
2. Formula vs Cask
- Formula: software CLI (git, node, python, wget, htop, imagemagick). Installa in
/opt/homebrew/(Apple Silicon) o/usr/local/(Intel) - Cask: app GUI native (VSCode, Firefox, Slack, Rectangle). Installa in
/Applications/
3. Comandi essenziali
brew install wget # formula
brew install --cask firefox # cask
brew search postgresql # cerca
brew info nodejs # dettagli, versione, deps
brew list # cosa ho installato
brew upgrade # aggiorna tutto (formula+cask)
brew upgrade nodejs # solo uno
brew uninstall wget # disinstalla
brew cleanup # rimuove versioni vecchie (spesso GB)
brew doctor # health check
4. Il mio setup Mac tipico
brew install
git
wget
curl
htop
tree
jq
ripgrep
fd
fzf
tmux
neovim
node
python@3.12
docker
docker-compose
brew install --cask
visual-studio-code
firefox
google-chrome
iterm2
rectangle
stats
obsidian
signal
vlc
the-unarchiver
5. Bundle: file dichiarativo dei tuoi pacchetti
cd ~
brew bundle dump --file=Brewfile # snapshot di tutto quello che hai
Il file Brewfile generato:
tap "homebrew/cask"
brew "git"
brew "node"
cask "visual-studio-code"
cask "firefox"
Su un nuovo Mac:
brew bundle install --file=Brewfile
Perfetto per replicare setup identici su piu' Mac o dopo formattazione.
6. Apple Silicon: attenzione al path
Su M1/M2/M3 Homebrew installa in /opt/homebrew/ (nuovo prefix). Se apri un terminale x86 (Rosetta), vede il vecchio /usr/local/. Verifica sempre con:
which brew
# /opt/homebrew/bin/brew → Apple Silicon nativo
# /usr/local/bin/brew → Rosetta / Intel
7. Servizi in background
brew services list # cosa gira
brew services start postgresql@16 # avvia
brew services stop redis
brew services restart nginx
Gestisce launchd sotto: alla riavvio del Mac ripartono da soli.
8. Tap: repository esterni
brew tap homebrew/cask-fonts # font (JetBrainsMono, Fira Code, ecc.)
brew install --cask font-jetbrains-mono-nerd-font
9. Manutenzione mensile
brew update # aggiorna la lista formule
brew upgrade # aggiorna software
brew cleanup -s # cancella cache download (spesso 2-5 GB)
brew doctor # verifica integrita'
brew autoremove # rimuove dep non piu' necessarie
10. Uninstall completo Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
Attenzione: Homebrew NON e' sandboxato. Un pacchetto malevolo (per fortuna raro nelle formula ufficiali) puo' eseguire codice arbitrario col tuo utente. Per software critici (banking, VPN, gestori password) preferisci l'App Store che ha sandboxing forzato.