Repository navigation
v4.0.0: the app-id the Flathub submission will carry
v4.0.0: the app-id the Flathub submission will carry (2026-09-14)
The decided-but-never-executed identity change lands together with the packaging fix that unblocks the submission it was decided for. Both verify end to end on real runs, not inspection. 226 tests; clippy -D warnings clean.
- The application id is now
io.github.virinvictus.Viaduct(decision 64, which v3.8.0 shipped without executing). All fifteen sites move together: the desktop file, metainfo, gschema (id and path), D-Bus service template, Flatpak manifest, meson'sapplication_id, the four hicolor icon files, and every code literal.preferences.rs's constant is renamedSCHEMA_IDtoAPP_IDand the GTKapplication_id, tray id and icon name, and preferences schema lookups all route through it, so the next identity change is a one-line edit. The Wayland app_id (window class) was verified live on a throwaway profile. Upgrade note: the GSettings path moved, so preferences set under the old id are orphaned; carry them over once withdconf dump /org/virinvictus/Viaduct/ | dconf load /io/github/virinvictus/Viaduct/(thendconf reset -r /org/virinvictus/Viaduct/), and update any Hyprlandwindowrulev2matching the old class. - The Flatpak builds offline (the Flathub blocker no prior audit had seen). The manifest declared
--share=networkand let cargo fetch every crate plus the vir-gtk git dependency at build time; Flathub builds have no network, so the submission could never have built. The Atrium pattern ports over whole:scripts/flatpak-cargo-generator.pyvendored,data/cargo-sources.jsongenerated fromCargo.lock(425 crate archives plus the vir-gtk checkout at the locked rev),CARGO_NET_OFFLINE=true, and the network build-arg gone. One deliberate divergence from the audit's suggestion: pinning the vir-gtk rev inCargo.tomlrewrites the dep URL to the?rev=form, which no longer matches the vendored-source replacement and kills the offline build (the first attempt failed exactly that way), so the lockfile plus a new CI freshness guard is the deliberate-bump mechanism, the shape Atrium already ships. Verified end to end: a fullflatpak-builderdownload, build, and export completes with no sandbox network. - CI hardening: the container pins
fedora:43instead offedora:latest,actions/checkoutandrust-cachepin their major tags by SHA, and the job gains a concurrency group and a 30-minute timeout. - Screenshot:
docs/screenshots/main-sepia.pngretaken on the current build (the old capture predated the de-adwaita redesign; its caption described chrome that no longer exists). The metainfo caption matches. Force-light rendering trouble observed while staging light variants is recorded in the Phase 20f hands-on pass, not patched blind.