mpv-fourier pkgrel=5: build against marfrit ffmpeg-v4l2-request-fourier
build and publish packages / distcc-avahi-aarch64 (push) Successful in 36s
build and publish packages / lmcp-any (push) Successful in 8s
build and publish packages / lmcp-debian (push) Successful in 6s
build and publish packages / claude-his-any (push) Successful in 7s
build and publish packages / ffmpeg-v4l2-request-aarch64 (push) Successful in 12m52s
build and publish packages / claude-his-debian (push) Successful in 7s
build and publish packages / libva-v4l2-request-fourier-aarch64 (push) Successful in 17s
build and publish packages / mpv-fourier-aarch64 (push) Failing after 4s

Run #68's mpv-fourier-1:0.41.0-4 fails to start on ohm with libavcodec
ABI mismatch:
  build version 62.28.101 incompatible with runtime version 62.28.100

Build host (fermi) pulls stock arch ffmpeg via makepkg --syncdeps —
that ffmpeg currently ships libavcodec 62.28.101. Consumer host (ohm)
runs marfrit/ffmpeg-v4l2-request-fourier (Kwiboo's fork pinned to
commit b57fbbe, libavcodec 62.28.100). The build/runtime drift
silently aborts mpv at startup before the version banner prints.

Fix: configure [marfrit] on fermi and pre-install our ffmpeg before
makepkg --syncdeps. mpv-fourier PKGBUILD now depends on
ffmpeg-v4l2-request-fourier explicitly (replacing the generic ffmpeg
dep), making the build target unambiguous.

Workflow change: new step in mpv-fourier-aarch64 between "install
deploy ssh key" and "makepkg" — imports the marfrit signing key into
pacman-key, appends [marfrit] block to /etc/pacman.conf if absent,
syncs db, installs marfrit/ffmpeg-v4l2-request-fourier explicitly so
makepkg --syncdeps finds the dep already satisfied via provides=ffmpeg.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-08 17:06:45 +00:00
parent 9613cbbc9e
commit a8e042cf2f
2 changed files with 20 additions and 2 deletions
+18
View File
@@ -633,6 +633,24 @@ jobs:
chmod 600 /root/.ssh/id_ed25519
ssh-keyscan -t ed25519 nc.reauktion.de > /root/.ssh/known_hosts 2>/dev/null
- name: configure [marfrit] repo + pre-install ffmpeg-v4l2-request-fourier
run: |
set -e
# mpv-fourier links libavcodec at build time. If the build host pulls
# stock arch's ffmpeg, the resulting binary's libavcodec ABI version
# drifts from the marfrit ffmpeg-v4l2-request-fourier that consumer
# hosts (ohm) install. Force build-time consistency by configuring
# [marfrit] on fermi and pre-installing our ffmpeg before makepkg.
curl -sLo /tmp/marfrit.gpg https://packages.reauktion.de/marfrit.gpg
pacman-key --add /tmp/marfrit.gpg
pacman-key --lsign-key 92D5E96D8F63C75E4116AA1FF5C8C4603D0D250C
rm -f /tmp/marfrit.gpg
if ! grep -q '^\[marfrit\]' /etc/pacman.conf; then
printf '\n[marfrit]\nServer = https://packages.reauktion.de/arch/$arch\nSigLevel = Required\n' >> /etc/pacman.conf
fi
pacman -Sy --noconfirm
pacman -S --noconfirm marfrit/ffmpeg-v4l2-request-fourier
- name: makepkg mpv-fourier
run: |
set -e
+2 -2
View File
@@ -23,13 +23,13 @@ pkgname=mpv-fourier
_upstreampkg=mpv
epoch=1
pkgver=0.41.0
pkgrel=4
pkgrel=5
pkgdesc='mpv with fourier-umbrella patches (vo_dmabuf_wayland plane-semantics fix slot)'
arch=('aarch64')
url='https://mpv.io/'
license=('GPL-2.0-or-later AND LGPL-2.1-or-later')
depends=(
alsa-lib desktop-file-utils ffmpeg glibc hicolor-icon-theme
alsa-lib desktop-file-utils ffmpeg-v4l2-request-fourier glibc hicolor-icon-theme
jack lcms2 libarchive libass libbluray libcdio
libcdio-paranoia libdisplay-info libdrm libdvdnav libdvdread libegl libgl
libglvnd libjpeg-turbo libplacebo libpulse libsixel libva