Build the Panama Hyprland desktop
This commit is contained in:
+33
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
fail() {
|
||||
printf 'screen intelligence helper contract: %s\n' "$1" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
project_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
||||
helper="$project_root/config/dot/quickshell/scripts/screen-intelligence"
|
||||
fixture_dir="$(mktemp -d)"
|
||||
trap 'rm -rf "$fixture_dir"' EXIT
|
||||
|
||||
[[ -x "$helper" ]] || fail 'recognition helper is missing or not executable'
|
||||
command -v magick >/dev/null || fail 'ImageMagick is required to build the OCR fixture'
|
||||
|
||||
probe="$($helper probe)"
|
||||
jq -e '.tesseract == true and .zbar == true' <<<"$probe" >/dev/null \
|
||||
|| fail 'Tesseract and ZBar are not ready'
|
||||
|
||||
fixture="$fixture_dir/panama-ocr.png"
|
||||
magick -size 1600x260 xc:white \
|
||||
-gravity center -fill black -font DejaVu-Sans -pointsize 72 \
|
||||
-annotate 0 'PANAMA SCREEN INTELLIGENCE' "$fixture"
|
||||
|
||||
result="$($helper analyze-file "$fixture")"
|
||||
jq -e '.ok == true' <<<"$result" >/dev/null || fail "recognition failed: $(jq -r .error <<<"$result")"
|
||||
text="$(jq -r .text <<<"$result" | tr '\n' ' ' | tr -s ' ')"
|
||||
[[ "$text" == *'PANAMA SCREEN INTELLIGENCE'* ]] \
|
||||
|| fail "literal fixture text was not recognized: $text"
|
||||
|
||||
printf 'screen intelligence helper contract: PASS\n'
|
||||
Reference in New Issue
Block a user