build.yml: convert ffmpeg+mpv-debian install-deps to apt-get (closes #55) #56

Merged
marfrit merged 1 commits from fix/debian-runner-deps-2026-05-20 into main 2026-05-20 19:13:50 +00:00
Showing only changes of commit d2cecbcd05 - Show all commits
+38 -30
View File
@@ -924,11 +924,20 @@ jobs:
run: | run: |
set -e set -e
retry() { for i in 1 2 3; do "$@" && return 0; rc=$?; echo "retry $i (exit=$rc)" >&2; sleep $((i*5)); done; return 1; } retry() { for i in 1 2 3; do "$@" && return 0; rc=$?; echo "retry $i (exit=$rc)" >&2; sleep $((i*5)); done; return 1; }
retry pacman -Syu --noconfirm --needed \ export DEBIAN_FRONTEND=noninteractive
dpkg openssh rsync curl base-devel git nasm yasm \ retry apt-get update -qq
linux-api-headers mesa alsa-lib bzip2 fontconfig fribidi gmp \ # Debian build-deps for the FFmpeg fourier-fork build. These
gnutls lame libass dav1d libdrm freetype2 libpulse libva \ # map 1:1 to the previous Arch list; libav*-dev intentionally
libvorbis libvpx libwebp x264 x265 libxml2 opus v4l-utils xz zlib # absent (we are FFmpeg itself, providing those libs).
retry apt-get install -y --no-install-recommends \
build-essential git pkg-config nasm yasm \
linux-libc-dev libgl1-mesa-dev libasound2-dev libbz2-dev \
libfontconfig-dev libfribidi-dev libgmp-dev libgnutls28-dev \
libmp3lame-dev libass-dev libdav1d-dev libdrm-dev \
libfreetype-dev libpulse-dev libva-dev libvorbis-dev libvpx-dev \
libwebp-dev libx264-dev libx265-dev libxml2-dev libopus-dev \
v4l-utils liblzma-dev zlib1g-dev \
curl ca-certificates openssh-client rsync dpkg-dev
- name: install hertz deploy ssh key - name: install hertz deploy ssh key
if: steps.skip-check.outputs.skip != '1' if: steps.skip-check.outputs.skip != '1'
@@ -1063,31 +1072,30 @@ jobs:
run: | run: |
set -e set -e
retry() { for i in 1 2 3; do "$@" && return 0; rc=$?; echo "retry $i (exit=$rc)" >&2; sleep $((i*5)); done; return 1; } retry() { for i in 1 2 3; do "$@" && return 0; rc=$?; echo "retry $i (exit=$rc)" >&2; sleep $((i*5)); done; return 1; }
retry pacman -Syu --noconfirm --needed \ export DEBIAN_FRONTEND=noninteractive
dpkg openssh rsync curl base-devel git meson ninja python-docutils \ retry apt-get update -qq
ladspa wayland-protocols vulkan-headers \ # Debian libav*-dev is ABI-compatible with the fourier ffmpeg
alsa-lib desktop-file-utils glibc hicolor-icon-theme jack lcms2 \ # fork at the header level; mpv link-binds against system
libarchive libass libbluray libcdio libcdio-paranoia libdisplay-info \ # libav at build time, runtime dlopen picks up the fourier
libdrm libdvdnav libdvdread libegl libgl libglvnd libjpeg-turbo \ # libs if installed. The previous [marfrit] pre-install of
libplacebo libpulse libsixel libva libvdpau libx11 libxext \ # ffmpeg-v4l2-request-fourier under pacman is unnecessary
libxkbcommon libxpresent libxrandr libxss libxv luajit mesa mujs \ # under apt: stock Debian libav*-dev provides the trixie
libpipewire rubberband sdl2 openal uchardet vapoursynth \ # ABI mpv-fourier's binary will encounter.
vulkan-icd-loader wayland zlib retry apt-get install -y --no-install-recommends \
build-essential git meson ninja-build pkg-config python3-docutils \
- name: configure [marfrit] repo + pre-install ffmpeg-v4l2-request-fourier ladspa-sdk wayland-protocols libvulkan-dev libwayland-dev \
if: steps.skip-check.outputs.skip != '1' libasound2-dev desktop-file-utils libc6-dev hicolor-icon-theme \
run: | libjack-jackd2-dev liblcms2-dev libarchive-dev libass-dev \
set -e libbluray-dev libcdio-dev libcdio-paranoia-dev libdisplay-info-dev \
curl -sLo /tmp/marfrit.gpg https://packages.reauktion.de/marfrit.gpg libdrm-dev libdvdnav-dev libdvdread-dev libegl-dev libgl-dev \
pacman-key --add /tmp/marfrit.gpg libglvnd-dev libjpeg-dev libplacebo-dev libpulse-dev libsixel-dev \
pacman-key --lsign-key 92D5E96D8F63C75E4116AA1FF5C8C4603D0D250C libva-dev libvdpau-dev libx11-dev libxext-dev libxkbcommon-dev \
rm -f /tmp/marfrit.gpg libxpresent-dev libxrandr-dev libxss-dev libxv-dev libluajit-5.1-dev \
if ! grep -q '^\[marfrit\]' /etc/pacman.conf; then libmujs-dev libpipewire-0.3-dev librubberband-dev libsdl2-dev \
printf '\n[marfrit]\nServer = https://packages.reauktion.de/arch/$arch\nSigLevel = Required\n' >> /etc/pacman.conf libopenal-dev libuchardet-dev libvapoursynth-dev liblzma-dev \
fi libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libswresample-dev \
pacman -Sy --noconfirm zlib1g-dev \
rm -f /var/cache/pacman/pkg/ffmpeg-v4l2-request-fourier-*-aarch64.pkg.tar.* curl ca-certificates openssh-client rsync dpkg-dev
printf 'y\ny\ny\n' | pacman -S marfrit/ffmpeg-v4l2-request-fourier
- name: install hertz deploy ssh key - name: install hertz deploy ssh key
if: steps.skip-check.outputs.skip != '1' if: steps.skip-check.outputs.skip != '1'