Modern dotfiles with Nix flakes for reproducible development environments.
Clone and activate:
git clone <this-repo> ~/dotfiles
cd ~/dotfiles
nix developThat's it! Dotfiles are automatically symlinked and all tools are available.
direnv allowEnvironment activates automatically when you cd into the directory.
Languages: Python 3.12, Node.js 22, Go, Rust
CLI Tools: fd, ripgrep, bat, eza, fzf, gh, jq, yq
Dev Tools: git, tmux, vim, neovim, zsh, direnv, stow
Package Managers: uv, bun, pnpm, cargo
Fonts: Nerd Fonts (FiraCode, Hack, JetBrains Mono, Roboto Mono, Noto, Overpass)
macOS Apps: Alacritty, WezTerm, Kitty (automatically installed to ~/Applications/Nix Apps with macOS aliases)
flake.nix/flake.lock- Reproducible Nix environment and pinned inputsbash/,zsh/,vim/,tmux/, etc. - Application configscodex/- Codex hook configurationsignet/- Custom Signet user policy rulesagent-memory/- Global agent memory deployed to~/AGENTS.md,~/CLAUDE.md,~/.claude/CLAUDE.md, and~/.agent-memory/- Signet guardrails - Global Claude/Codex hook policy via
signet-evaland~/.signet/policy.yaml
nix flake update✅ Reproducible - same environment everywhere
✅ Declarative - configuration as code
✅ Fast - binary caching
✅ Isolated - no global state pollution
Ready for more? See NIXDARWIN.md for:
- nix-darwin - Full macOS system management
- nix-homebrew - Declarative Homebrew integration
- System settings - Configure macOS preferences as code
Menu bar management (Ice): MACOS_ICE.md
Current setup works great standalone! Only migrate if you want system-wide configuration.