aboutsummaryrefslogtreecommitdiff
path: root/scripts/testing
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/testing')
-rw-r--r--scripts/testing/lib/validation.sh8
1 files changed, 5 insertions, 3 deletions
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