feat(web-arm): channel → nixos-26.05 #141
No reviewers
Labels
No labels
bug
enhancement
in-progress
needs-info
needs-triage
p0
ready-for-agent
ready-for-human
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Cloonar/nixos!141
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "afk/109"
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?
Bumps web-arm to nixos-26.05 — 5/6 of the staged fleet upgrade (#101–#112).
stateVersionstays 22.05. This is the eval-only gate; full build/runtime verification on the aarch64 host is the separate verify job (#110).Changes
nixos-26.05.permittedInsecurePackages→allowInsecurePredicatecoveringpypy2.7-*(prefix) +openssl-1.1.1v/openssl-1.1.1w, mirroring nb/nas/fw. 26.05'smakePythonWriterinterpreter guard force-evaluates the wholepypy2Packagesset (via the users-groups shell-program assertion); defining the predicate disables the old list, so the openssl allowances fold into the same predicate.docker_29pin and reverted the sa-core (ScanA11y) scannerpathto the defaultpkgs.docker. The pin + its redirect were 25.11-only workarounds (#123); 26.05's default docker is maintained.credentialsFile→environmentFileon every per-site cert (fueltide.io ×6, reptide.eu ×4, api.reptide.eu ×1) and in the powersync module ×1. 26.05 dropped thecredentialsFilerename alias;environmentFile(sameEnvironmentFileshape) is valid on both channels.security.secret_keywired to the existinggrafana-secret-keysops secret (owner = "grafana") via the file-provider ($__file{…}). 26.05 removed the default and adds a hard non-null assertion. The value preserves the historical 25.11 module default so the already-encrypted datasource secrets stay readable — rotating to a strong key is a separate, deliberate step.postgresql_14confirmed present on the nixos-26.05 branch — pin kept, no major migration.Secrets
No secret editing required —
grafana-secret-keywas already added tohosts/web-arm/secrets.yamlinb0bd638(value = the oldSW2YcwTIb9zpOOhoPsMmdefault). This PR only declares + references it.Verification
Closes #109
Validation: PASS —
/land-praudit of #141 (web-arm →nixos-26.05, 5/6 of the staged fleet upgrade #101–#112).Checked
Closes #109present and correct (the[5/6 · bump]issue, open). Sequencing hold satisfied — the paired prior verify #108 (mail, 4/6) is closed.secrets.yaml;system.stateVersionuntouched (stays 22.05); modules imported by explicit path.allowInsecurePredicate(replacespermittedInsecurePackages):libis in scope ({ config, lib, pkgs, ... }); grep confirms no other module in web-arm's closure setspermittedInsecurePackagesorallowInsecurePredicate, so nothing is silently un-permitted. Mirrors nb/nas/fw. Carries over the twoopenssl-1.1.1{v,w}allowances.sa-core→pkgs.docker: both docker references now resolve to the channel default — consistent.credentialsFile→environmentFile×12: branch grep confirms zerocredentialsFileoption assignments remain in web-arm's closure; matches the already-migrated sharedutils/modules/lego/lego.nixdefault (documented behavior-preserving rename, sameEnvironmentFileshape).secret_key: wired to thegrafana-secret-keySOPS secret, which exists inhosts/web-arm/secrets.yaml(added inb0bd638,owner = "grafana"); preserves the historical 25.11 default so encrypted datasource secrets stay readable.Verification signal relied on: the repo's commit-time pre-commit dry-build (eval), reported green in the PR body — not re-run, per the repo's gate model. Caveats stated for the record:
src/*Hash, so the eval-only build-gap does not bite this diff.pkgs.dockerisn't flagged insecure (the nixos MCP index doesn't yet carry 26.05 to confirm the version independently).No blockers.