Fix boot-critical, session, and UX bugs found in round-3 UX audit
All checks were successful
Mirror to GitHub / mirror (push) Successful in 2s
Build and publish package / package (push) Successful in 2m2s
Build and release ISO / release-iso (push) Successful in 14m20s

Snapshots panel was non-functional (wrong snapper flag); breadgreet picked
the wrong session .desktop and skipped bos-session's PATH fixup; Calamares
aborted offline installs over an unnecessary packages module; snapshot
rollback silently no-op'd on BOS's pinned-subvolume layout (now points at
grub-btrfs instead); breadcrumbs was configurable but had no daemon to run
it. Also: SUPER+I double-bind, breadpaper/packages panels blocking the GTK
main thread, dead polkit rule, and a sweep of smaller drift (default
sidebar view, stale wording, missing .desktop launchers, wallpaper daemon
not recording its own default).
This commit is contained in:
Breadway 2026-07-03 22:04:26 +08:00
parent a8f1592e75
commit d78a2343f4
32 changed files with 553 additions and 209 deletions

View file

@ -2,11 +2,15 @@
# squashfs and enabled by post-install.sh; the live ISO instead autologins
# liveuser on tty1 (see getty@tty1 drop-in) so the installer comes straight up.
#
# tuigreet shows a minimal greeter, then launches the BOS Hyprland session via
# bos-session (which fixes up PATH for the bakery bread apps).
# breadgreet (bread-ecosystem's own greeter) is hosted under cage — a single-
# client kiosk Wayland compositor, since greetd itself has no display of its
# own — and speaks greetd's IPC directly. It resolves the session to launch
# from /usr/share/wayland-sessions/bos.desktop, which points at bos-session
# (fixes up PATH for the bakery bread apps; greetd starts no login shell, so
# /etc/profile.d is never sourced otherwise).
[terminal]
vt = 1
[default_session]
command = "tuigreet --remember --time --cmd /usr/local/bin/bos-session"
command = "cage -s -- breadgreet"
user = "greeter"