Personal dotfiles managed with chezmoi. Templates auto-detect macOS vs Linux (brew prefix, paths).
# Install chezmoi and apply dotfiles in one step
chezmoi init --apply <git-remote-url>Before applying, edit .chezmoidata.yaml to set your values:
gitHubId: "your-github-numeric-id"
gpgSigningKey: "your-gpg-key-id"| Dependency | Install | Used by |
|---|---|---|
| chezmoi | brew install chezmoi |
Dotfile management |
| Homebrew | See brew.sh | Package manager (macOS: /opt/homebrew, Linux: /home/linuxbrew/.linuxbrew) |
| oh-my-zsh | sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
ZSH framework, plugins, agnoster theme |
| git | brew install git |
Version control, GPG-signed commits |
| gpg2 | brew install gnupg |
Git commit signing |
| coreutils | brew install coreutils |
dircolors for .dircolors |
These are not bundled with oh-my-zsh and must be cloned into $ZSH_CUSTOM/plugins/:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/MichaelAquilina/zsh-you-should-use ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/you-should-usebrew install kubectl kube-ps1 helm krew go| Package | Used by |
|---|---|
| kubectl | Kubernetes CLI, oh-my-zsh kubectl plugin |
| kube-ps1 | Kubernetes context in shell prompt and Claude Code statusline |
| helm | Kubernetes package manager, oh-my-zsh completions |
| krew | kubectl plugin manager |
| go | Go toolchain ($GOPATH configured in .zprofile) |
The statusline script at ~/.claude/statusline.sh requires:
brew install jq curl| Dependency | Purpose |
|---|---|
| socat | SSH agent socket forwarding (brew install socat) |
| wsl2-ssh-pageant | Bridge Windows SSH agent to WSL2 (place at ~/.ssh/wsl2-ssh-pageant.exe) |
| Source | Target |
|---|---|
dot_zshrc.tmpl |
~/.zshrc |
dot_zprofile.tmpl |
~/.zprofile |
dot_gitconfig.tmpl |
~/.gitconfig |
dot_vimrc |
~/.vimrc |
dot_dircolors |
~/.dircolors |
dot_claude/executable_statusline.sh.tmpl |
~/.claude/statusline.sh |