Run #69 hit:
ffmpeg-v4l2-request-fourier-2:... and ffmpeg-2:8.1.1-1 are in conflict.
Remove ffmpeg? [y/N]
error: unresolvable package conflicts detected
pacman -S --noconfirm defaults [y/N] prompts to N and refuses the swap.
Switch to `yes y | pacman -S ...` (without --noconfirm) to accept the
conflict-removal prompt cleanly.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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>
Stock arch ships mpv 1:0.41.0-3. Our 1:0.41.0-2 is OLDER per vercmp, so
pacman -Syu refuses to apply replaces=mpv (no auto-downgrade across the
replaces relation). Bump to pkgrel=4 to win the comparison.
Going forward: when stock arch bumps mpv pkgrel, mpv-fourier needs a
matching bump.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Run #66 failed at meson setup with "Feature win32-threads cannot be
enabled". Root cause: arch-meson defaults to --auto-features=enabled,
which makes mpv's platform-specific features (win32-threads, etc.)
required and fails the build on Linux. Stock arch's PKGBUILD passes
--auto-features=auto explicitly to make features opt-in instead of
required.
Adopted stock arch's full meson_options block:
--auto-features auto
-Dlibmpv=true
-Dgl-x11=enabled -Dcaca=disabled -Ddrm=enabled
-Dcdda=enabled -Ddvbin=enabled -Ddvdnav=enabled
-Dlibarchive=enabled -Dopenal=enabled
-Dsdl2-audio=enabled -Dsdl2-video=enabled -Dsdl2-gamepad=enabled
Also matched stock makedepends (added ladspa, vulkan-headers, dropped
ninja/pkgconf which are pulled in transitively), added !emptydirs option,
adopted the package() pkgconfig-cleanup + docs/scripts install pattern,
added epoch=1 to match stock's versioning (so replaces= works cleanly).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
mpv on ohm is currently stock arch from [extra]. To ship the
vo_dmabuf_wayland plane-semantics fix per
marfrit/dmabuf-modifier-triage#1, we need an mpv-fourier package
following the same fourier-umbrella pattern as kwin-fourier,
qt6-base-fourier, firefox-fourier, libva-v4l2-request-fourier.
This commit lays down:
- arch/mpv-fourier/PKGBUILD pinning upstream mpv 0.41.0 tarball, with
empty patch slot in prepare(). replaces=mpv. provides=mpv,libmpv.so.
When iter1 produces the patch, add it to source=()/sha256sums=()
and uncomment the patch -p1 line.
- arch/mpv-fourier/README.md documenting why + tracker links
- .gitea/workflows/build.yml job mpv-fourier-aarch64 chained after
libva-v4l2-request-fourier-aarch64 for marfrit.db serialization.
Same fermi LXC runner, same makepkg → sign → repo-add → rsync flow.
Initial scaffold builds vanilla mpv 0.41.0 with no fourier patches —
once iter1 lands, bump pkgrel and add the patch.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>