refactor(dotfiles): order default let bindings

This commit is contained in:
2026-09-16 14:33:34 -04:00
parent 82b727e437
commit dd84a45c5f
3 changed files with 22 additions and 11 deletions

View File

@@ -107,7 +107,7 @@
Review Nix files in entrypoint order:
- [x] `flake.nix`
- [ ] `src/dotfiles/default.nix`
- [x] `src/dotfiles/default.nix`
- [ ] `src/dotfiles/util.nix`
- [ ] `src/dotfiles/formatter.nix`
- [ ] `src/dotfiles/apps.nix`

View File

@@ -19,6 +19,15 @@ let
root = root + "/modules";
};
specialArgs = {
inherit
inputs
self
util
;
registry = registry.collected;
};
guestModules = import ./guests.nix {
inherit
inputs
@@ -30,16 +39,6 @@ let
repositoryModules = modules;
root = root + "/guests";
};
specialArgs = {
inherit
inputs
self
util
;
registry = registry.collected;
};
in
{
formatter.${system} =

View File

@@ -14,3 +14,15 @@ Do not make an output attrset recursive only to reference sibling outputs.
Shared convenience bindings hide dependency direction.
Explicit references show which value owns a concept and which value consumes it.
## Order `let` bindings by dependency
### Rule
Define a `let` binding before other bindings that reference it.
Use forward references only for intentional recursion or fixed-point wiring.
### Rationale
Nix permits recursive `let` bindings.
Top-down dependency order makes ordinary wiring easier to read.