diff --git a/.github/workflows/release-kiosk.yml b/.github/workflows/release-kiosk.yml index 964fe47..9059846 100644 --- a/.github/workflows/release-kiosk.yml +++ b/.github/workflows/release-kiosk.yml @@ -78,14 +78,10 @@ jobs: echo "version=$version" >> "$GITHUB_OUTPUT" - name: Install GTK/GStreamer/WebKit build deps - # gtk4-rs 0.9 + the v4_12 feature need libgtk-4-dev >= 4.12. Plain - # bookworm ships 4.8.3; backports ships 4.12+. Same arrangement we - # use on the Pi. + # gtk4-rs 0.9 with the v4_8 feature builds against bookworm's stock + # libgtk-4-dev 4.8.3 — same version that ships on Pi OS Bookworm. run: | - echo "deb http://deb.debian.org/debian bookworm-backports main" \ - > /etc/apt/sources.list.d/bookworm-backports.list - apt-get update - apt-get install -y --no-install-recommends -t bookworm-backports \ + apt-get install -y --no-install-recommends \ libgtk-4-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \ libwebkitgtk-6.0-dev libssl-dev diff --git a/kiosk/Cargo.toml b/kiosk/Cargo.toml index 919eb41..a183be6 100644 --- a/kiosk/Cargo.toml +++ b/kiosk/Cargo.toml @@ -6,8 +6,10 @@ description = "BetterFrame kiosk — multi-camera display with GTK4 + GStreamer" license = "AGPL-3.0-only OR Commercial" [dependencies] -# GTK4 for windowing/layout -gtk4 = { version = "0.9", features = ["v4_12"] } +# GTK4 for windowing/layout. v4_8 = Pi OS Bookworm's libgtk-4 version. We +# don't use any 4.12+ APIs; bumping the feature gate would force pulling +# from backports for no functional gain. +gtk4 = { version = "0.9", features = ["v4_8"] } # GStreamer for RTSP decode gstreamer = "0.23"