Documentation Index
Fetch the complete documentation index at: https://jacobpevans-docs-automation-surface.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Reproducible everything. nix build and walk away.
The four Nix repos are layered, not parallel. nix-darwin sits at the top and orchestrates the macOS system. nix-home defines the user environment via home-manager. nix-ai packages every AI coding tool — Claude, Gemini, Copilot, MLX, MCP servers. nix-devenv provides reusable project-level dev shells.
Ecosystem
nix-darwin (coral) is the system root. It imports nix-home and nix-ai (green). nix-devenv (ink) is a parallel concern — each project pulls it directly via nix flake init.
| Layer | Repo | What it owns |
|---|---|---|
| macOS system | macOS host | environment.systemPackages, sudoers, security, Touch ID, system-level config |
| User environment | User environment | home.packages, programs.* for zsh, git, tmux, direnv, ssh, gh |
| AI tooling | AI tooling | Claude Code, Gemini, Copilot, MLX, MCP servers — declarative, version-pinned |
| Per-project shells | Dev shells | Reusable flake.nix templates entered via direnv on cd |
Package placement
The boundary between system, user, and project is intentional:environment.systemPackages(nix-darwin) — core bootstrap, macOS-only tools, GUI appshome.packages(nix-home) — user dev tools, linters, CLIs that follow$HOME- AI packages (nix-ai) — Claude, Gemini, Copilot, MLX, MCP servers
- Project dev shells (nix-devenv) — language- or stack-specific tooling that should not pollute the global PATH
programs.* declarations follow the same boundary; home-manager merges both layers cleanly.
Repos in this section
nix-darwin
macOS system config. Imports
nix-ai and nix-home. The top-level entry point.nix-ai
Every AI coding tool, packaged. Claude Code, Gemini CLI, Copilot, MLX, MCP servers.
nix-home
User dev environment via home-manager. Shell, editor, git, dev tools.
nix-devenv
Reusable per-project dev shells.
nix flake init -t github:JacobPEvans/nix-devenv#mkshell.Why four repos, not one
Each layer is independently useful.nix-devenv is consumed by every other repo in the portfolio via nix flake init. nix-ai is consumed by personal config and by team setups. Splitting them keeps the dependency graph clean and lets each layer iterate at its own pace.