ci/cd: package for Debian 13 instead of Debian 12
The Debian container moves from bookworm to trixie. Two packages were renamed in trixie and their old names are now transitional dummies: pkg-config is provided by pkgconf, and libgl1-mesa-dev split into libgl-dev + libglvnd-dev. The CI and CD Debian dependency lists stay byte-for-byte identical. trixie ships libva 2.22, which has the vaMapBuffer2 FFmpeg 8 expects, so only openKylin still needs the bundled vcpkg libva copies.
This commit is contained in:
@@ -10,7 +10,7 @@ permissions:
|
||||
contents: write
|
||||
|
||||
# One matrix, seven platforms, the same environments CI tests in (see
|
||||
# .github/workflows/ci.yml): Debian 12 / Fedora 43 / Arch / openKylin x64
|
||||
# .github/workflows/ci.yml): Debian 13 / Fedora 43 / Arch / openKylin x64
|
||||
# and arm64 containers plus the macOS and Windows hosts. Every package is
|
||||
# built from scratch — no FFmpeg/cargo caches: a restored tree has
|
||||
# masked packaging problems before (stale ports, missing tools), and a
|
||||
@@ -36,7 +36,7 @@ jobs:
|
||||
runner: warp-ubuntu-latest-x64-32x
|
||||
triplet: x64-linux
|
||||
artifact: linux-debian
|
||||
container: '{"image":"debian:12","options":"--shm-size=8g"}'
|
||||
container: '{"image":"debian:13","options":"--shm-size=8g"}'
|
||||
- name: Fedora
|
||||
platform: linux
|
||||
distro: fedora
|
||||
@@ -170,11 +170,11 @@ jobs:
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y \
|
||||
build-essential clang libclang-dev cmake pkg-config nasm \
|
||||
build-essential clang libclang-dev cmake pkgconf nasm \
|
||||
git curl zip unzip tar python3 dpkg-dev \
|
||||
libpipewire-0.3-dev libspa-0.2-dev libjack-jackd2-dev \
|
||||
libasound2-dev libpulse-dev libsndfile1-dev \
|
||||
libgl1-mesa-dev libgl1-mesa-dri mesa-vulkan-drivers \
|
||||
libgl-dev libglvnd-dev libgl1-mesa-dri mesa-vulkan-drivers \
|
||||
libvulkan-dev libxkbcommon-dev libxkbcommon-x11-dev xvfb libdrm-dev \
|
||||
icc-profiles-free gdb file librsvg2-bin patchelf fonts-dejavu-core \
|
||||
autoconf autoconf-archive automake libtool
|
||||
|
||||
@@ -16,7 +16,7 @@ permissions:
|
||||
contents: read
|
||||
|
||||
# One matrix, seven platforms: the three Linux-family packaging distros
|
||||
# (Debian 12, Fedora 43, Arch), openKylin on x64 and arm64, macOS and
|
||||
# (Debian 13, Fedora 43, Arch), openKylin on x64 and arm64, macOS and
|
||||
# Windows. The environments match .github/workflows/cd.yml exactly (same
|
||||
# container images, same dependency lists, same runner sizes), so a
|
||||
# "passes CI, fails CD" dependency drift is caught here first.
|
||||
@@ -41,7 +41,7 @@ jobs:
|
||||
arch: x64
|
||||
runner: warp-ubuntu-latest-x64-8x
|
||||
triplet: x64-linux
|
||||
container: '{"image":"debian:12","options":"--shm-size=8g"}'
|
||||
container: '{"image":"debian:13","options":"--shm-size=8g"}'
|
||||
- name: Fedora
|
||||
platform: linux
|
||||
distro: fedora
|
||||
@@ -173,11 +173,11 @@ jobs:
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y \
|
||||
build-essential clang libclang-dev cmake pkg-config nasm \
|
||||
build-essential clang libclang-dev cmake pkgconf nasm \
|
||||
git curl zip unzip tar python3 dpkg-dev \
|
||||
libpipewire-0.3-dev libspa-0.2-dev libjack-jackd2-dev \
|
||||
libasound2-dev libpulse-dev libsndfile1-dev \
|
||||
libgl1-mesa-dev libgl1-mesa-dri mesa-vulkan-drivers \
|
||||
libgl-dev libglvnd-dev libgl1-mesa-dri mesa-vulkan-drivers \
|
||||
libvulkan-dev libxkbcommon-dev libxkbcommon-x11-dev xvfb libdrm-dev \
|
||||
icc-profiles-free gdb file librsvg2-bin patchelf fonts-dejavu-core \
|
||||
autoconf autoconf-archive automake libtool
|
||||
|
||||
+1
-1
@@ -151,7 +151,7 @@ Distribution packages are built in containers (no host dependencies
|
||||
beyond Docker/Podman):
|
||||
|
||||
```sh
|
||||
tooling/package/build-deb.sh # Debian 12 → .deb
|
||||
tooling/package/build-deb.sh # Debian 13 → .deb
|
||||
tooling/package/build-rpm.sh # Fedora 41 → .rpm
|
||||
tooling/package/build-pkg.sh # Arch Linux → .pkg.tar.zst
|
||||
```
|
||||
|
||||
+1
-1
@@ -133,7 +133,7 @@ Windows 构建目标是 **x86_64-pc-windows-gnu**,使用 MSYS2 自带 Rust;
|
||||
发行版包在容器中构建(宿主机只需要 Docker/Podman):
|
||||
|
||||
```sh
|
||||
tooling/package/build-deb.sh # Debian 12 → .deb
|
||||
tooling/package/build-deb.sh # Debian 13 → .deb
|
||||
tooling/package/build-rpm.sh # Fedora 41 → .rpm
|
||||
tooling/package/build-pkg.sh # Arch Linux → .pkg.tar.zst
|
||||
```
|
||||
|
||||
@@ -59,8 +59,9 @@ install -m644 assets/i18n/*.yaml "$STAGING/usr/share/oak/i18n/"
|
||||
cp -a assets/icons/. "$STAGING/usr/share/oak/icons/"
|
||||
|
||||
# vcpkg's libva/libva-drm are shared libraries that FFmpeg links
|
||||
# dynamically. Debian 12 / openKylin carry an older libva than FFmpeg 8
|
||||
# expects (vaMapBuffer2), so ship vcpkg's copies next to the app and give
|
||||
# dynamically. openKylin carries an older libva than FFmpeg 8 expects
|
||||
# (vaMapBuffer2; Debian 13's 2.22 is new enough), so ship vcpkg's copies
|
||||
# next to the app and give
|
||||
# the executables a relative RUNPATH (`$ORIGIN`) — a system libva can then
|
||||
# not shadow them. `VCPKG_LIB` is the vcpkg_installed/<triplet>/lib dir
|
||||
# (CD passes it; a local build without it just skips the bundle).
|
||||
|
||||
Reference in New Issue
Block a user