Files
dev/src/skills/style/nix/rules/flake.md

562 B

Flake rules

Keep flake.nix as flake wiring

Rule

Add flake inputs in flake.nix. Put root flake output composition in src/flake/default.nix. Keep src/flake focused on composing public outputs from implementation files it imports. Put project-specific package implementation in that project's source tree, for example src/xatu/package.nix. Put NixOS and dotfiles implementation in src/dotfiles. Use flake.nix to pass inputs into the root flake implementation.

Rationale

This keeps dependency declarations separate from output logic.