Personal macOS/Linux dotfiles with setup scripts.
macOS:
./bootstrap-macos.shUbuntu/devbox:
./bootstrap-ubuntu.sh- Homebrew / apt / upstream installers: system and shell tools (
stow,git,tmux,nvim,fzf,fd,bat,eza,ripgrep,treehouse, etc.) - mise: runtimes and infra CLIs (
uv,python,node,pnpm,go,rust,terraform,opentofu,kubectl,helm) - uv: python-based CLI tools (
thefuckpinned to Python 3.11,pre-commit)
All mise-managed tools are currently installed with @latest for simplicity.
This repo uses GNU Stow and --dotfiles naming.
cd ~/dotfiles
stow --dotfiles --no-folding -t "$HOME" agents
stow --dotfiles -t "$HOME" zsh zsh.macos git tmux ghostty aerospace bat wezterm nvim.lazyvim.v1Key resulting paths:
~/.zshrcfromzsh.macos/dot-zshrcorzsh.ubuntu/dot-zshrc~/.aliases.zshand~/.p10k.zshfromzsh/~/.config/nvimfromnvim.lazyvim.v1/~/.config/ghostty/configfromghostty/~/.config/aerospace/aerospace.tomlfromaerospace/~/.config/treehouse/config.tomlfromtreehouse.ubuntu/on Ubuntu~/.claude/CLAUDE.md,~/.codex/AGENTS.md, and~/.config/opencode/AGENTS.mdfromagents/
Global agent instructions are edited in agents/shared/AGENTS.md; the tool-specific files are symlink aliases to that single source.
- Restart terminal or run
source ~/.zshrc - Run
p10k configureif you want to regenerate prompt settings - Install TPM:
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm - Open tmux and press
<prefix>Ito install plugins - Open
nvimand let plugins/language servers install