New Computer Runbook
Appearance
New Machine Setup Runbook
Getting from zero to productive in <30 minutes
Phase 1: Essential Infrastructure (5 mins)
# Install Homebrew first /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # Core terminal tools brew install git tmux zsh neovim ghostty # Modern CLI replacements brew install lsd bat btop dust duf
Phase 2: Dotfiles & Shell (5 mins)
# Clone and setup dotfiles git clone https://github.com/ejfox/dotfiles.git ~/.dotfiles cd ~/.dotfiles ./sync-dotfiles.sh # Install Oh My Zsh + Powerlevel10k sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k # Restart terminal, run p10k configure, choose minimal options
Phase 3: Development Environment (10 mins)
# Node.js environment brew install node npm npm install -g canvas-sketch-cli things-cli # Neovim setup (LazyVim auto-installs on first run) nvim # Let it install everything, then :q # Git configuration git config --global user.name "EJ Fox" git config --global user.email "[email protected]"
Phase 4: Applications & Workflow (10 mins)
# Essential apps brew install --cask termius obsidian things3 brew install --cask 1password firefox-developer-edition # Development tools brew install httpie jq gh copilot-cli # Optional but nice brew install --cask sketchybar rectangle raycast
Phase 5: Personal Integration (Variable)
API Keys & Secrets
- Add OpenAI API key to `.zprofile` for LLM integration
- Setup 1Password CLI: `brew install --cask 1password-cli`
- Configure Things 3 and sync across devices
- Setup GitHub CLI: `gh auth login`
Verification Checklist
- [ ] `zen` command toggles minimal mode
- [ ] Geometric symbols show in tmux status
- [ ] AI greeting appears on terminal startup
- [ ] `lsd`, `bat`, `btop` work with custom configs
- [ ] Neovim loads with LazyVim + zen keybindings
- [ ] Things CLI can create tasks: `things-cli add "Test task"`
Quick Wins
- Terminal transparency - Ghostty should have blur/opacity
- Tmux sessions - `tmux new -s main` for persistent session
- Zen mode - `zen` toggles distraction-free mode everywhere
- Personal APIs - Test with `curl https://ejfox.com/api/health`
Gotchas & Notes
- Ghostty config may need manual tweaking for transparency
- P10k prompt - Choose minimal options, avoid fancy icons
- Things 3 sync requires manual setup across devices
- LLM integration won't work until API key is configured
- Canvas-sketch projects should go in `~/projects/sketches/`
Priority Order
- Must-have now: Terminal + shell + dotfiles + Neovim
- Need soon: Development tools + git setup
- Nice to have: Personal APIs + workflow integrations
- Can wait: Sketchybar + advanced customizations
Emergency Fallbacks
- No Ghostty? Use built-in Terminal.app with tmux
- No dotfiles sync? Manually copy `.zshrc`, `.tmux.conf`, `nvim/`
- No internet? Basic vim + tmux will get you productive
- API issues? Comment out LLM integration in `.startup.sh`