My personal dotfiles managed with chezmoi.
To set up these dotfiles on a new machine:
# Option 1: Direct install (recommended)
sh -c "$(curl -fsLS https://raw.githubusercontent.com/willmruzek/dotfiles/master/install.sh)"
# Option 2: Using chezmoi
chezmoi init --apply willmruzek- Git configuration (
.gitconfig) - Zsh configuration (
.zshrc,.zprofile) - Oh My Zsh custom settings (themes, plugins, configs)
- Homebrew packages (
.Brewfile) - chezmoi configuration
- VS Code settings sync scripts
home/- Contains all dotfiles (chezmoi source directory)home/.chezmoiscripts/- Setup scripts (runonce* scripts run only on first setup)install.sh- Bootstrap script for new machines
The installation process will automatically:
- Install chezmoi if not present
- Install Homebrew if not present (macOS)
- Install Oh My Zsh if not present
- Install packages from Brewfile
- Set zsh as default shell
- Apply all dotfiles
After initial setup, you can manage your dotfiles with:
# Edit a file
chezmoi edit ~/.zshrc
# See what would change
chezmoi diff
# Apply changes
chezmoi apply
# Add a new file
chezmoi add ~/.newfile
# Update from repo
chezmoi updateMinimal helpers to move VS Code or Cursor user settings between your Mac and this repo. Requires git and rsync.
-
Export local → repo:
./home/.scripts/export-vscode-settings.sh <vscode|cursor>
-
Import repo → local (preview first by default):
./home/.scripts/import-vscode-settings.sh <vscode|cursor> # flags: -n/--dry-run (preview only), -y/--yes (auto-approve)
Includes: mcp.json, keybindings.json, settings.json, prompts/ (recursive).
- SSH Configuration
- GPG Configuration
-
Group Related Configs
chezmoi add ~/.config/git/# Global git hooks and configchezmoi add ~/.config/zsh/completions/# Custom shell completions- Organize configs under
dot_config/for better structure
-
Vim Configuration
See dotfiles.github.io for more inspiration and examples.