diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index c289c6de4..65128d2b5 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -924,11 +924,20 @@ jobs: run: | 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 pacman -Syu --noconfirm --needed \ - dpkg openssh rsync curl base-devel git nasm yasm \ - linux-api-headers mesa alsa-lib bzip2 fontconfig fribidi gmp \ - gnutls lame libass dav1d libdrm freetype2 libpulse libva \ - libvorbis libvpx libwebp x264 x265 libxml2 opus v4l-utils xz zlib + export DEBIAN_FRONTEND=noninteractive + retry apt-get update -qq + # Debian build-deps for the FFmpeg fourier-fork build. These + # map 1:1 to the previous Arch list; libav*-dev intentionally + # 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 if: steps.skip-check.outputs.skip != '1' @@ -1063,31 +1072,30 @@ jobs: run: | 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 pacman -Syu --noconfirm --needed \ - dpkg openssh rsync curl base-devel git meson ninja python-docutils \ - ladspa wayland-protocols vulkan-headers \ - alsa-lib desktop-file-utils 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 libvdpau libx11 libxext \ - libxkbcommon libxpresent libxrandr libxss libxv luajit mesa mujs \ - libpipewire rubberband sdl2 openal uchardet vapoursynth \ - vulkan-icd-loader wayland zlib - - - name: configure [marfrit] repo + pre-install ffmpeg-v4l2-request-fourier - if: steps.skip-check.outputs.skip != '1' - run: | - set -e - 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 - rm -f /var/cache/pacman/pkg/ffmpeg-v4l2-request-fourier-*-aarch64.pkg.tar.* - printf 'y\ny\ny\n' | pacman -S marfrit/ffmpeg-v4l2-request-fourier + export DEBIAN_FRONTEND=noninteractive + retry apt-get update -qq + # Debian libav*-dev is ABI-compatible with the fourier ffmpeg + # fork at the header level; mpv link-binds against system + # libav at build time, runtime dlopen picks up the fourier + # libs if installed. The previous [marfrit] pre-install of + # ffmpeg-v4l2-request-fourier under pacman is unnecessary + # under apt: stock Debian libav*-dev provides the trixie + # ABI mpv-fourier's binary will encounter. + retry apt-get install -y --no-install-recommends \ + build-essential git meson ninja-build pkg-config python3-docutils \ + ladspa-sdk wayland-protocols libvulkan-dev libwayland-dev \ + libasound2-dev desktop-file-utils libc6-dev hicolor-icon-theme \ + libjack-jackd2-dev liblcms2-dev libarchive-dev libass-dev \ + libbluray-dev libcdio-dev libcdio-paranoia-dev libdisplay-info-dev \ + libdrm-dev libdvdnav-dev libdvdread-dev libegl-dev libgl-dev \ + libglvnd-dev libjpeg-dev libplacebo-dev libpulse-dev libsixel-dev \ + libva-dev libvdpau-dev libx11-dev libxext-dev libxkbcommon-dev \ + libxpresent-dev libxrandr-dev libxss-dev libxv-dev libluajit-5.1-dev \ + libmujs-dev libpipewire-0.3-dev librubberband-dev libsdl2-dev \ + libopenal-dev libuchardet-dev libvapoursynth-dev liblzma-dev \ + libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libswresample-dev \ + zlib1g-dev \ + curl ca-certificates openssh-client rsync dpkg-dev - name: install hertz deploy ssh key if: steps.skip-check.outputs.skip != '1'