Build the Panama Hyprland desktop

This commit is contained in:
Gabriel Brown
2026-08-17 10:32:55 -04:00
parent 67033f2a31
commit 5248883e4b
190 changed files with 18554 additions and 34 deletions
+34
View File
@@ -0,0 +1,34 @@
#!/usr/bin/env bash
set -euo pipefail
repo_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
fail() {
printf 'activity-indicator contract: %s\n' "$1" >&2
exit 1
}
cleanup() {
qs ipc call activity close >/dev/null 2>&1 || true
qs ipc call activity clear >/dev/null 2>&1 || true
qs ipc call status-events reset >/dev/null 2>&1 || true
}
trap cleanup EXIT
[[ -f "$repo_dir/config/dot/quickshell/modules/bar/ActivityIndicator.qml" ]] || fail 'bar indicator is missing'
[[ -f "$repo_dir/config/dot/quickshell/modules/bar/ActivityPanel.qml" ]] || fail 'activity detail panel is missing'
rg -q 'ActivityIndicator \{' "$repo_dir/config/dot/quickshell/modules/bar/Bar.qml" || fail 'bar does not instantiate the activity indicator'
! rg -q '^[[:space:]]*RecordingIndicator \{\}' "$repo_dir/config/dot/quickshell/shell.qml" || fail 'legacy recording popup is still instantiated'
qs ipc call activity fixture microphone-on >/dev/null
qs ipc call activity open >/dev/null
for _ in $(seq 1 20); do
if hyprctl layers | rg -q 'namespace: qs-popover-activity'; then
printf 'activity-indicator contract: PASS\n'
exit 0
fi
sleep 0.1
done
fail 'active privacy state did not map its detail panel'