A central, version-controlled collection of my macOS, shell, editor, and tool configurations—fully bootstrappable on any new machine.
- Keep all personal configs (macOS defaults, shell, editor, IDE, utilities) in one place
- Automate installation of Homebrew, apps, fonts, and dev tools
- Symlink all dotfiles into
~for easy updates - Provide a reproducible, documented setup for new machines
- macOS (tested on 11+ / 12+ / 13+)
- Xcode Command Line Tools
xcode-select --install
- Git (if not already installed, it will be installed by Homebrew below)
-
Clone your dotfiles
git clone git@github.com:youruser/dotfiles.git ~/dotfiles cd ~/dotfiles
-
Run the bootstrap script
./install.sh
This will:
- Install Homebrew (if missing)
- Tap & install packages, casks & fonts via
Brewfile - Install
nvm, Node LTS, Bun - Clone the
bullet-trainOh My Zsh theme - Create your
~/devdirectory - Symlink all dotfiles (e.g.
.zshrc,.gitconfig,.vimrc) into~ - Apply macOS defaults (
.macos)
-
Restart your shell
exec zsh
dotfiles/
├── Brewfile # Homebrew formulae, casks & fonts
├── install.sh # Bootstrap script
├── .macos # macOS defaults script
│
├── zsh/
│ ├── .zshrc
│ └── .zprofile
│
├── git/
│ └── .gitconfig
│
├── vim/
│ └── .vimrc
│
├── tmux/
│ └── .tmux.conf
│
├── vscode/
│ └── settings.json
│
└── ssh/
└── config
-
Add new apps/fonts Simply update the
Brewfileand re-run:brew bundle --file="$HOME/dotfiles/Brewfile" -
Add or change dotfiles
- Place your file under the appropriate folder (e.g.
zsh/.zshrc). - Ensure
install.shmaps it to the correct$HOMElocation. - Commit & push.
- Place your file under the appropriate folder (e.g.
-
macOS tweaks Edit
.macosfor anydefaults write …adjustments, then re-source:source ~/.macos
-
Oh My Zsh auto-update You can configure update frequency in your
.zshrc:zstyle ':omz:update' mode reminder zstyle ':omz:update' frequency 7
-
Font issues If Powerline glyphs aren’t displaying, ensure your terminal uses JetBrains Mono Nerd Font (or whichever you’ve installed).
-
nvm not found Make sure
export NVM_DIR="$HOME/.nvm"and itssourcelines are present in your.zshrcafter Oh My Zsh loads.
This repository is MIT-licensed. See LICENSE for details.
Created & maintained by Daniel · Reproduce your environment everywhere!