Move the builders out of flake.nix into nix/builders/ #99
No reviewers
Labels
No labels
blocked
bug
decision
duplicate
enhancement
help wanted
invalid
landed?
question
ready-to-merge
stale
wontfix
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
allod/archetypes!99
Loading…
Reference in a new issue
No description provided.
Delete branch "agent/builders-out-of-flake"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The three builders move out of
flake.nixintonix/builders/, and nothing a machine builds changes: every machine's toplevel derivation path, every check's derivation path on template data and on the fork fixtures, and the exportedlib,vmFactsandnixosModulesare byte-identical before and after.flake.nixgoes from 777 lines to 413 and is now inputs, the profile-definition merge, the composition and the exports. Builder signatures and defaults are untouched; that is allod/archetypes#92. What proves it is the derivation-path comparison plus./check.shand./fork-safety.shgreen on this branch. If it is wrong, revert the one commit.What changed
nix/builders/shared.nix:guestModuleForandsharedModules.nix/builders/dev.nix:mkDevVmwith its helpersmkGithubCredentialModule(private) andmemoryTraceModules(exported, becausechecks/default.nixtakes it by name).nix/builders/privacy.nix:mkPrivacyVm.nix/builders/hypervisor.nix:mkHypervisor, which composes no guest module, as before.flake.niximports the four and binds the same names, sobuilders,machineConfigurationsand the checks call are unchanged.secretsInput = secrets;and the "no service builder" note abovebuildersstay where they were../modules/xto../../modules/x, which resolves to the same file. README gains a "Builders" section naming the layout.Risk
R2. A pure move of the builders with the same witness allod/archetypes#93 used; the witness covers every production machine and every check fixture. A builder default no machine and no check exercises could in principle resolve differently after the move, which the review below was asked to enumerate. Rollback is a straight revert. Sequenced against allod/archetypes#92 as the issue says: this lands first because #92 has no PR yet.
Validation
nixprocess per item on master (after allod/archetypes#96) and on the branch, template data and fork fixtures: 4 machines, 19 checks, 19 fork checks, plusvmFacts,libandnixosModules. All identical, re-diffed by the integrator../check.shon this branch, run by the integrator on the move commit (cdf8cfe):All 32 steps passed (checks: 19 built).The one later commit changes comments only, verified by diffing non-comment lines (zero)../fork-safety.shon the same commit:All 19 checks are fork-safe (19 built).nix-instantiate --parse); each builder file's argument list was derived from parse-time undefined-variable errors.gpt-5.6-terraon codex, high effort): two findings, both comments the move made false (thesecrets-shadowing sentence indev.nix, and "the VM builders above" inhypervisor.nix), fixed in the second commit after a grep of all four files for other location words found none.Closes allod/archetypes#98