On a brand new Mac, run:
curl -fsSL https://raw.githubusercontent.com/pruett/dotfiles/main/bootstrap | bashThe bootstrap script is idempotent (safe to re-run) and handles everything needed to install these dotfiles and push changes back to this repo:
- Installs Xcode Command Line Tools (which provides
git) - Installs Homebrew
- Clones this repo to
~/.dotfilesover HTTPS — public, so no auth needed yet (or pulls if already present) - Installs all formulae and casks from the Brewfile via
brew bundle(includingghandstow) - Authenticates with GitHub via
gh auth login(SSH key generated and uploaded for you), then switches theoriginremote to SSH so you can push - Prompts for your git identity and writes it to the gitignored
git/.gitconfig.local - Symlinks every package with GNU Stow, backing up any conflicting existing files to
<file>.pre-dotfiles
Afterwards, review MACOS.md for the manual System Preferences checklist.
Everything below is done automatically by bootstrap, but documented here for one-off use.
$ cd ~/.dotfiles && brew bundle# Loop over directories and run `stow` to enable respective dotfile symlinking
$ cd ~/.dotfiles && find . -not -path '*/\.*' -maxdepth 1 -mindepth 1 -type d | sed -e 's/^\.\///'| xargs -I % sh -c 'stow %'
# Remove stow link anytime with stow -D <directory>See git/README.md for SSH/GPG key setup and .gitconfig.local details.