These dotfiles are managed with chezmoi. The repo lives at ~/.local/share/chezmoi.
One command does it all (Homebrew, chezmoi + dotfiles, Brewfile, oh-my-zsh, zinit, SSH key, RVM):
bash -c "$(curl -fsSL https://raw.githubusercontent.com/bagelbits/dotfiles/main/install.sh)"The script is idempotent — re-run it any time. It prints the few steps that stay manual:
- Sign into the App Store (RunCat Neo comes via
mas), then re-run if it failed - Add the generated SSH key to GitHub (the script copies it to your clipboard)
- WezTerm config is applied by chezmoi (Solarized Dark, Fira Code, transparency + blur); background image
- VSCode
- Setup command line
- Turn on Settings Sync (restores extensions and settings)
- You might need to setup p10k again (
p10k configure)
Anything machine-specific or secret stays out of this repo in untracked files:
~/.zshrc.local— sourced at the end of.zshrc. Put exports likeNPM_TOKENandLINEAR_API_KEYhere.~/.gitconfig.local— included from.gitconfig. Holds per-machine values like the coderabbitmachineId.
chezmoi edit ~/.zshrcthenchezmoi apply— edit the source copy and write it to~chezmoi add ~/.zshrc— pull in changes after a tool appends to a managed file (installers love doing this)chezmoi diff— see drift between the repo and~chezmoi cd— drop into the repo to commit and pushchezmoi update— pull and apply on another machine