From 19015c77c7d059d7bbc65270c6985f6cbc2330a3 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Wed, 10 Jun 2026 19:08:54 -0500 Subject: fix(testing): key the portal-query skip on the compositor, close warning tasks The 19:06 verification run showed the portal skip not firing: a socket-activated xdg-desktop-portal process exists even headless, so the process check was the wrong precondition. The skip now keys on a running Hyprland, same as the socket check. That run confirmed the other three skips live (warnings 5 to 2); the remaining counted warnings are this portal case and the lingering question, which stays open. --- scripts/testing/lib/validation.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'scripts/testing/lib/validation.sh') diff --git a/scripts/testing/lib/validation.sh b/scripts/testing/lib/validation.sh index 2734aef..f6e7fbf 100644 --- a/scripts/testing/lib/validation.sh +++ b/scripts/testing/lib/validation.sh @@ -543,10 +543,12 @@ validate_portal_dark_mode() { if [ "$color_scheme" = "1" ]; then validation_pass "Settings portal returns dark mode (color-scheme=1)" - elif [ -z "$color_scheme" ] && ! ssh_cmd "pgrep -f xdg-desktop-portal >/dev/null 2>&1"; then - # No graphical login → no portal service → nothing to query. The + elif [ -z "$color_scheme" ] && ! ssh_cmd "pgrep -x Hyprland >/dev/null 2>&1"; then + # No compositor → no graphical session bus to query. A socket-activated + # xdg-desktop-portal process can exist even headless, so the compositor + # is the real precondition (same condition as the socket check). The # conf-file checks above already validated what install controls. - validation_skip "Settings portal not running (headless) — query not applicable" + validation_skip "No compositor running (headless) — portal query not applicable" elif [ -z "$color_scheme" ]; then validation_warn "Could not query Settings portal (portal may not be running)" else -- cgit v1.2.3