This repo follows the common dotfiles layout:
- top-level dotfiles for files that live in
~ .config/for app configs that live in~/.config- a
Brewfilefor the core tools your setup depends on
dotfiles/
├── .config
│ ├── aerospace
│ └── nvim
├── .tmux.conf
├── .wezterm.lua
├── .zshrc
├── Brewfile
└── install.sh
Clone the repo and run:
./install.shThe script:
- backs up existing files into
~/.dotfiles-backup/<timestamp>/ - symlinks the repo versions into place
- links
~/.zshrc,~/.wezterm.lua,~/.tmux.conf,~/.config/nvim, and~/.config/aerospace - clones tpm to
~/.tmux/plugins/tpmif missing - installs tmux plugins from
~/.tmux.confautomatically whentmuxis available
If Homebrew is installed, you can also install packages with:
brew bundleRun brew bundle before opening Neovim on a new machine. Your Neovim config uses
nvim-treesitter on its main branch, which shells out to the tree-sitter CLI
when installing parsers. Homebrew now ships that executable in tree-sitter-cli,
not tree-sitter.
~/.zshrc~/.wezterm.lua~/.tmux.conf~/.config/nvim~/.config/aerospace
- Do not commit secrets from
~/.config/gh,~/.ssh, or similar machine-specific files. - This repo currently contains a copy of your existing
.zshrc, including machine-specific paths. That is fine if your work machine is similar, but you may want to refactor it later.