Commit graph

2 commits

Author SHA1 Message Date
Philip Peterson
cb5dcdd666 Add automated tests for HistoryService instead of throwaway scripts
Gives HistoryDb an in-memory mode and reconcile() an injectable
deployments list so HistoryService can be exercised hermetically,
without touching the real history.db or shelling out to rpm-ostree.
Covers bootstrap, idempotent reconcile, install-then-reboot,
manual/detected changes, last_known_safe, and chain walking.

Also fixes the pre-existing widget boot-smoke test: startup now makes
a second real Process.run call (via HistoryService.reconcile), which
tipped flutter_test's fake-time zone into flagging a dangling Timer
from that real I/O. Wrapping the pump in tester.runAsync() is the
standard fix.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-07 13:30:07 -08:00
Philip Peterson
e0cbf8ae20 Initial commit: Layer Wizard
A GUI installer wizard for permanent rpm-ostree package layers on
bootc/image-based systems. Walks through: welcome/current-version check,
package name entry with existence check, confirmation, then a streamed
rpm-ostree install via pkexec. On success, writes a pending-confirmation
marker and installs an autostart entry so the next login shows a
"did this update work?" screen with a one-click rollback (bootc rollback
--apply) if not.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-06 05:25:05 -08:00