macOS Setup#
Idempotent macOS configuration. System converges to declared state.
Usage#
./run.sh # all modules
./run.sh brew casks # specific modules
./run.sh --help # list modules
Modules#
- homebrew - Install Homebrew
- brew - Sync formulae (removes unlisted)
- casks - Sync casks (removes unlisted)
- defaults - macOS system defaults
- dock - Dock applications
- network - Computer/host names
- firewall - Firewall settings
- shell - Login shell
- ssh - SSH keys from Proton Pass
Structure#
lib.sh- Shared helpersmodules/- Self-contained modules (state at top, logic below)