macOS configuration files managed with GNU Stow.
git clone https://github.com/itsdanieldk/dotfiles.git ~/dotfiles
cd ~/dotfiles
./installThe install script interactively prompts (y/N) before each step:
- Xcode Command Line Tools
- Homebrew
- Brewfile packages (skips already installed)
- Oh My Zsh
- Oh My Zsh custom plugins (zsh-autosuggestions, zsh-syntax-highlighting)
- macOS defaults (Finder, Dock, keyboard, screenshots, trackpad, Safari)
- Stow dotfile linking (with conflict detection)
Pass --yes or -y for non-interactive mode.
| Package | Contents |
|---|---|
bat |
bat config (Catppuccin Mocha theme) |
claude |
Claude Code settings and statusline |
git |
.gitconfig with delta pager, global gitignore |
hushlogin |
Suppresses "Last login" message |
kitty |
Kitty terminal (Catppuccin Mocha, FiraCode Nerd Font) |
lazygit |
lazygit config (Catppuccin Mocha theme, delta pager) |
nvim |
Neovim (lazy.nvim, Treesitter, Telescope, Catppuccin Mocha) |
ssh |
SSH config with macOS Keychain, hardened algorithms |
zsh |
.zshrc (Oh My Zsh + Powerlevel10k, fzf, zoxide, direnv, aliases), .p10k.zsh, .zprofile |
Built-in (ship with Oh My Zsh): git, macos, sudo, extract, copypath, copyfile, colored-man-pages, docker, dotnet, aliases
External (cloned during install):
| Plugin | What it does |
|---|---|
| zsh-autosuggestions | Fish-like suggestions from history; press → to accept |
| zsh-syntax-highlighting | Colors valid commands green, invalid red |
The install script can configure:
- Finder — show hidden files, extensions, path/status bar, list view, folders on top, search current folder
- Dock — auto-hide, minimize to app icon, hide recent apps, no space rearranging
- Keyboard — fast key repeat, no auto-correct/smart quotes/smart dashes, full keyboard access
- Screenshots — save to
~/Pictures/Screenshots, PNG format, no shadow - Trackpad — three-finger drag
- Misc — expanded save/print panels by default
stow -d ~/dotfiles -R <package>