Skip to main content

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.

The macOS system layer. Everything below it is just inputs.
nix-darwin is the top-level entry point for the Mac. One darwin-rebuild switch updates packages, fonts, app preferences, shell, dock — anything that has a system-level reflection.

What it does

  • Manages environment.systemPackages — the global PATH baseline
  • Owns macOS defaults: dock, finder, screenshots, keyboard, trackpad
  • Imports nix-home as home-manager input for user-level config
  • Imports nix-ai for AI tooling that should live on the system PATH
  • Pins the nixpkgs channel and applies overlays once for the whole machine

How it fits

ImportsApplies to
User environment, AI toolingmacOS system (via darwin-rebuild switch)

Getting started

1

Install Nix and the Determinate installer

Use the Determinate Nix installer for flakes-enabled macOS. The README links the exact command.
2

Clone and run the bootstrap

git clone https://github.com/JacobPEvans/nix-darwin && cd nix-darwin && darwin-rebuild switch --flake .#$(hostname -s)
3

Iterate

Edit flake.nix or any module under modules/. Re-run darwin-rebuild switch --flake . — only what changed gets rebuilt.

nix-home

The user-level layer imported here.

nix-ai

The AI tooling imported here.

nix-devenv

Per-project dev shells — entered via direnv, not declared here.

Source on GitHub

Modules, host configs, full README.