Personal shell/editor setup that is safe to share publicly.
If you are a friend copying this, use it as a starting point, not a drop-in identity clone.
zsh/.zshrc->~/.zshrczsh/.zprofile->~/.zprofilegit/.gitconfig->~/.gitconfigconfig/.config/git/ignore->~/.config/git/ignoreconfig/.config/starship.toml->~/.config/starship.tomlconfig/.config/gh/config.yml->~/.config/gh/config.yml(CLI preferences only)config/.config/nvim/->~/.config/nvim/(runtime config files only)homebrew/Brewfile->~/Brewfile
Template only:
ssh/.ssh/config.example(copy and customize manually; do not symlink as-is)
# 1) Clone
git clone https://github.com/<owner>/dotfiles.git ~/dotfiles
cd ~/dotfiles
# 2) Install base tooling
brew install stow
# 3) Install packages from Brewfile (optional but recommended)
brew bundle --file=homebrew/Brewfile
# 4) Link configs into your home dir
./scripts/stow-all.sh --adopt
# 5) Turn on local safety hooks
./scripts/install-hooks.shRestart your shell after linking.
Use local overrides for anything personal or machine-specific:
cp zsh/.zshrc.local.example ~/.zshrc.localPut these in ~/.zshrc.local:
- API keys and tokens
- private aliases
- work hostnames/IPs
- machine-specific paths
~/.zshrc.local is intentionally not tracked.
Do not commit your real SSH config or keys.
mkdir -p ~/.ssh
cp ssh/.ssh/config.example ~/.ssh/config
chmod 600 ~/.ssh/configThen edit hostnames/users for your own machines.
cd ~/dotfiles
git pull
./scripts/stow-all.sh --adoptBefore pushing changes:
./scripts/public-audit.shThis runs:
- staged/tracked secret scan
- privacy leak scan
- full git history secret scan
Hooks installed by ./scripts/install-hooks.sh run scans on commit and push.
If you are the repo owner and want to snapshot your current local setup:
cd ~/dotfiles
./scripts/import-current.sh
./scripts/public-audit.shThen review diffs before committing.