Publish auto-update package and NixOS module as a standalone flake #61
Labels
No labels
area:authentication
area:flake-utilities
area:performance
area:tbd
host:chaos
host:electra
host:fleet
host:lyra
host:nova
host:vega
investigation
phase:cutover
phase:deploy
phase:mcp
phase:module
phase:packaging
phase:prep
phase:validation
priority:high
priority:medium
project:attic-postgres-lyra-rollout
project:auto-update-reliability
project:auto-update-remediation
project:declarative-purity-cleanup
project:external-review
project:fleet-boundary-cleanup
project:host-facts-refactor
project:lyra-nixos-deploy
project:lyra-service-stack-migration
project:nebula-mesh-network
project:nixos-build-deployment-pipeline
project:security-hardening
project:service-stack-migration
project:vega-sillytavern-cutover
project:wiki-rebuild
repo:numtide/flake-utils
repo:numtide/nix-auth
repo:numtide/nixos-passthru-cache
repo:numtide/nix-relay
service:auto-update
service:mem0
service:nix
service:sillytavern
service:slskd
service:synthseek
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
nimmo/nixos-config#61
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Context
After the updater has a stable package/module boundary inside this repository, it may be valuable to publish it as a standalone Forgejo repository and flake. That would isolate its release cycle, make the implementation independently testable, and allow other NixOS configurations to consume it without copying scripts.
This work depends on #60. It must not begin until the in-repository extraction has been deployed and proven through a genuine update plus a no-op follow-up.
Scope
nixos-configand migrate the local module configuration.Completion criteria
nixos-configsecrets or host files.nixos-configconsumes an explicitly pinned revision.Dependency
Blocked by #60.
Reopened to resume the standalone flake extraction. Initial repository creation is blocked because the configured Forgejo token lacks the write:organization scope required to create nimmo/nixos-auto-update. Once a suitably scoped token/login is available, the first implementation step is to create that repository and migrate the already-extracted package, thin module, tests, docs, and CI before wiring it into this flake as a pinned input.
Repository created: https://git.nimmog.uk/nimmo/nixos-auto-update. The initial standalone flake and its caller-owned secret-path module are published at 19b4d60; both standalone flake checks (including the VM state-machine test) passed.
nixos-confignow consumes that pinned revision on local branchtidy-auto-update-split-repoatc70b92f;nix flake check --no-build --accept-flake-configpassed for Electra, Lena, Vega, Lyra, Cosmos, and Chaos. The configuration commit has not been pushed or deployed yet.Follow-up local commit ae33ec9 removes the duplicate updater package, module, scripts, VM fixture, and local regression fixture from
nixos-config. The Attic producer now resolves its shared update-policy library from the pinned external package (currentlynixos-auto-update3a63eda), and the local flake re-exports the external package/check.nix flake check --no-build --accept-flake-configandbash -n scripts/attic-cache-build.shpass. The branch remains local and unpushed.Post-merge fleet validation
The pinned external updater is now deployed and its scheduled consumer runs have been observed:
a4a9ad1.a4a9ad1.a4a9ad1.a4a9ad1.a4a9ad1.Lena did not respond over Nebula during verification, likely asleep/offline, so it remains unverified.
Lena is intentionally out of scope for closure because it is rarely online. The required external-updater deployment and scheduled-run evidence is complete for Vega, Electra, and Lyra; the observed Cosmos and Chaos runs provide additional coverage.