██████╗ ██████╗ ████████╗███████╗██╗██╗ ███████╗███████╗
██╔══██╗██╔═══██╗╚══██╔══╝██╔════╝██║██║ ██╔════╝██╔════╝
██║ ██║██║ ██║ ██║ █████╗ ██║██║ █████╗ ███████╗
██║ ██║██║ ██║ ██║ ██╔══╝ ██║██║ ██╔══╝ ╚════██║
██████╔╝╚██████╔╝ ██║ ██║ ██║███████╗███████╗███████║
╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝
Personal macOS setup for a fresh machine. Managed with dotbot.
git clone git@github.com:adriansberg/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
./installThat's it. The install script will:
- Create symlinks for all config files
- Install Homebrew (if missing)
- Install all packages and apps via
Brewfile - Apply macOS system defaults
- zsh with antigen for plugin management
- Powerlevel10k prompt
- Aliases in
~/.alias
| File | Symlinked to |
|---|---|
zshrc |
~/.zshrc |
alias |
~/.alias |
p10k.zsh |
~/.p10k.zsh |
vimrc |
~/.vimrc |
ssh/config |
~/.ssh/config |
macos.sh sets sane defaults on a fresh machine:
- Tap to click enabled
- Natural scrolling disabled
- Dock autohide (no delay)
- Finder: show extensions, folders first, search current folder
- Disable quarantine dialog
Preferences tracked in iterm2/. iTerm2 is configured to load directly from this folder — changes sync back automatically.
Installed via Homebrew Bundle. Key tools:
| Category | Tools |
|---|---|
| Terminal | iTerm2, bat, lsd, fzf, ranger, htop |
| Dev | git, gh, node/nvm, go, rbenv, pnpm, podman |
| Infra | terraform, kubectl/kubectx, minikube |
| Java | jenv, maven |
| Security | gnupg, git-crypt, bitwarden-cli |
| macOS | Raycast, AeroSpace, BetterTouchTool, AltTab |
Full list in Brewfile.