macOS dotfiles managed with chezmoi
Already using these? chezmoi update && chezmoi apply
Back up existing dotfiles first (e.g. ~/.zshrc) — they will be overwritten.
Prerequisites (run once, requires GUI prompt):
xcode-select --installThen — one command:
sh -c "$(curl -fsLS get.chezmoi.io)" -- init --apply helderberto/dotfilesThis installs chezmoi, pulls the repo, and applies everything: Homebrew, packages, apps, asdf with nodejs, SSH key generation, and Dock config.
After it finishes:
- Open a new terminal so shell config and tools are loaded.
- Add the generated SSH key to GitHub: https://github.com/settings/ssh/new
If you plan to edit these dotfiles, clone the repo first:
git clone git@github.com:helderberto/dotfiles.git ~/.dotfiles cd ~/.dotfiles && ./bootstrap.sh
Day-to-day usage
chezmoi update && chezmoi applyEdit files in your clone, push, then apply:
cd ~/.dotfiles
git add <file> && git commit -m "..." && git push
chezmoi applyOn other machines, chezmoi update && chezmoi apply is enough.
~/.private is not managed by chezmoi. Put machine-only env vars and secrets there; your shell config sources it automatically.
# in ~/.private
export WORK_API_KEY=...
alias workspace="cd ~/my-company/workspace"| Command | Purpose |
|---|---|
chezmoi managed |
List all managed paths |
chezmoi diff |
Preview changes before applying |
chezmoi apply |
Apply dotfiles to ~ |
Development
./test-chezmoi.sh # syntax & config checks
./test-chezmoi.sh --post-apply # also validates installed toolsCI runs the test suite on every push and PR via GitHub Actions.
AGENTS.md is the source of truth for agent instructions. ~/.claude/CLAUDE.md symlinks to it, so it works with Claude Code, Open Code, and other tools that look for either file.
MIT License © helderberto