pkexec pacman -Syu authorises everything pacman would do. Operations carry
the resolved set now, hashed on RedFlag's own byte contract so a token
minted there verifies here, and re-derived before elevation: a repository
that moves while you read the prompt refuses instead of installing.
The XferCommand every repo transfers through lived unowned under
/usr/local, so no update could reach it. Its hardcoded host is gone —
curl already scopes a netrc to the machines it names. Unset PACKAGER
is why the archive signs packages reading "Unknown Packager".
A transfer meter redraws with \r, so lines() logged the animation,
not the state. Keep the last frame; cap the log at a 500-line tail.
overlay was #RRGGBBAA; QML reads #AARRGGBB — it dimmed at alpha 0x01.
The repository had no README, which policy requires, and both Cargo.toml and
the package recipe named the internal forge -- a current-tree finding the
candidate scan cannot forgive.
Qt takes the Wayland app id from the executable name, not the application
name, so the toplevel is souveraine-updater and the shell had nothing to
match the icon against.
Install date, reason and reverse deps came only from the local database
and were always blank. Confirm dialog is a plain Popup now: Dialog sizes
its content from itself and loops on a wrapped paragraph.
Package list is a QAbstractListModel now; every pacman call runs off the
GUI thread. Icons are drawn paths — the phone image has no emoji font, so
every one of them was a tofu box. New first-party app icon. Catalog cache
is keyed to pacman's databases instead of to nothing.
Cross-build helpers from culver, prebuilt PKGBUILD, and a packaging step that
signs into souveraine-{arch} via souveraine's additive publisher. Replaces
pachub. Smoke test loads the QML root, since a null root builds green.
QString properties, apply_filter onto the QObject, exec off the pinned app.
Main.qml never imported its own module, so PackageManager didn't resolve.
Icon embedded via qrc_resources.