Show every answer the portal remembers, and give SSH keys their missing half
Claude-Session: https://claude.ai/code/session_01Ms2FbjQy31TVf3CEvQhGM8
This commit is contained in:
@@ -47,6 +47,14 @@ fail() {
|
||||
# "online-accounts" is listed because Panama has an Online Accounts page -- but
|
||||
# adding an account still has to go through GOA's own dialog, so that one
|
||||
# exception is named explicitly below.
|
||||
# "privacy" joined the list when Privacy & Security stopped being a page that
|
||||
# read the portal and pointed at GNOME for everything else. It now clears the
|
||||
# recent-files list and the thumbnail cache itself, empties the trash through
|
||||
# Storage's own cleanable, and revokes portal grants for six tables rather than
|
||||
# three devices. The card that used to carry the door -- headed "Owned by
|
||||
# Fedora", explaining that GNOME's file-history switches would not take effect
|
||||
# in a Hyprland session anyway -- is gone, because the switches it was
|
||||
# apologizing for are now buttons that work.
|
||||
declare -A OWNED=(
|
||||
[network]=connectivity
|
||||
[wifi]=connectivity
|
||||
@@ -55,6 +63,7 @@ declare -A OWNED=(
|
||||
[sharing]=sharing
|
||||
[users]=users
|
||||
[system\ users]=users
|
||||
[privacy]=privacy
|
||||
)
|
||||
|
||||
# Handoffs that are correct despite naming an owned panel, with the reason.
|
||||
@@ -109,6 +118,15 @@ done < <(grep -rno --include='*.qml' -E 'openGnomePanel\("[^"]*"(, *"[^"]*")?\)'
|
||||
|
||||
(( checked > 0 )) || fail 'no handoffs were examined, so this proves nothing'
|
||||
|
||||
# The inverse, for the page that just stopped handing anything over. The loop
|
||||
# above can only fail on a door that exists; said this way it also fails if the
|
||||
# door comes back under a panel name nobody thought to list.
|
||||
if grep -q 'openGnomePanel' "$settings_dir/PrivacyPage.qml"; then
|
||||
printf 'gnome handoff contract: PrivacyPage still opens a GNOME panel:\n' >&2
|
||||
grep -n 'openGnomePanel' "$settings_dir/PrivacyPage.qml" >&2
|
||||
violations=$((violations + 1))
|
||||
fi
|
||||
|
||||
if (( violations > 0 )); then
|
||||
printf 'Each of these sends someone to GNOME for a page this app already has.\n' >&2
|
||||
exit 1
|
||||
|
||||
Reference in New Issue
Block a user