daedalus-v4l2: 3bc0da1 -> 6e6dfa1 — dlopen Kwiboo soname 62 (#16)

This commit is contained in:
2026-05-21 21:24:03 +02:00
parent a2daab1b28
commit 27617e4cb0
4 changed files with 55 additions and 27 deletions
+13 -8
View File
@@ -1159,13 +1159,18 @@ jobs:
retry() { for i in 1 2 3; do "$@" && return 0; rc=$?; echo "retry $i (exit=$rc)" >&2; sleep $((i*5)); done; return 1; }
export DEBIAN_FRONTEND=noninteractive
retry apt-get update -qq
# libav*-dev provide the headers daedalus daemon dlopens at
# runtime — Debian's stock packages match the trixie ABI the
# daemon will encounter on Pi 5 hosts (both ship libavcodec
# 61.x). The fourier ffmpeg fork isn't needed here; the
# daemon never link-binds against libav (Option γ — dlopen
# at runtime), so any header set with the right struct
# definitions works.
# FFmpeg headers + sonames the daemon dlopens. As of
# daedalus-v4l2 PR #16 (commit 514da29), the daemon targets
# the Kwiboo fork's libavcodec.so.62 / libavformat.so.62 /
# libavutil.so.60 at /opt/fourier — so the build needs
# /opt/fourier/include and /opt/fourier/lib/pkgconfig.
# ffmpeg-v4l2-request-fourier provides both (plus the
# runtime libs the .deb will dlopen on the target host;
# we install it as a build-dep here and the dpkg-shlibdeps
# step pulls it into the daemon .deb's Depends automatically).
# Debian-stock libav*-dev removed — would conflict on
# /usr/include/libavcodec/avcodec.h vs /opt/fourier's copy.
#
# libvulkan-dev + glslang-tools: needed by the in-build
# daedalus-fourier fetch (build-deb.sh fetches the sibling
# library, cmake-builds it into a temp prefix, then the
@@ -1176,7 +1181,7 @@ jobs:
# reauktion/daedalus-v4l2 PR #13.
retry apt-get install -y --no-install-recommends \
build-essential cmake ninja-build pkg-config git \
libavcodec-dev libavformat-dev libavutil-dev libdrm-dev \
ffmpeg-v4l2-request-fourier libdrm-dev \
libvulkan-dev glslang-tools \
linux-libc-dev \
curl ca-certificates openssh-client rsync dpkg-dev