Personal macOS setup assets and Homebrew state backups.
This repo is the source of truth for:
- Homebrew packages/apps/taps/extensions (
Brewfile) - Terminal prompt and app config snapshots
- Repeatable backup/restore scripts for Homebrew
Brewfile: Managed package list forbrew bundle(taps, formulas, casks, VS Code extensions, and additional bundle entries)brew-backup.sh: Dumps current machine state intoBrewfilebrew-restore.sh: Installs fromBrewfileghosttyconfig: Ghostty terminal configuration snapshotkitty.conf: Kitty terminal configuration snapshotopen-actions.conf: Kitty open actions rules snapshotstarship.toml: Starship prompt configuration
- macOS
- Homebrew installed and available on
PATH
Install Homebrew if missing:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"git clone <your-repo-url> ~/code/dotfiles
cd ~/code/dotfiles
./brew-restore.shNotes:
brew-restore.shresolvesBrewfilerelative to the script path, so it can be run from any directory.- Restore can take a while depending on casks/formulas.
When you install/remove tooling on your machine and want this repo updated:
./brew-backup.sh
git diff Brewfile
git add Brewfile
git commit -m "chore(brew): update Brewfile"What gets captured in Brewfile:
tap: additional formula repositoriesbrew: CLI packages and librariescask: GUI applications
This repo currently stores raw config snapshots, not an automated symlink/stow system.
If you want to apply a file manually:
- Ghostty: copy/sync
ghosttyconfigto your Ghostty config location. - Kitty: copy/sync
kitty.confandopen-actions.confto~/.config/kitty/. - Starship: point
STARSHIP_CONFIGto this repo file or copy it to your default location.
- After package changes, run
./brew-backup.shand commitBrewfile. - Before wiping/reprovisioning a machine, run
./brew-backup.shone last time. - Keep this README aligned with actual files in this repo.
Brewfile not found: ensure the repo still containsBrewfile.brew: command not found: install Homebrew and re-open shell.- Partial restore failures: re-run
./brew-restore.sh;brew bundleis designed to be repeatable.