From a470ec3fc333077cee56144627aebebb42cd1e35 Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 29 Jun 2024 06:13:43 +0800 Subject: [PATCH 1/7] ci: drop debian buster Debian Buster is reaching EOL at the end of this month. We are no longer buiding server packages for this debian version, and its gcc is too old to support required simd intrinsics --- .github/workflows/build.yaml | 2 +- .github/workflows/publish.yaml | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 6bd9edaaea..c47600da6d 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -22,7 +22,7 @@ jobs: uses: ./.github/workflows/_meta.yaml with: distro: 'debian' - codenames: '["buster", "bullseye", "bookworm"]' + codenames: '["bullseye", "bookworm"]' architectures: '["amd64", "arm64", "armhf"]' release: false diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 41461a95da..e8ae9c1007 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -10,7 +10,7 @@ jobs: uses: ./.github/workflows/_meta.yaml with: distro: 'debian' - codenames: '["buster", "bullseye", "bookworm"]' + codenames: '["bullseye", "bookworm"]' architectures: '["amd64", "arm64", "armhf"]' release: true secrets: @@ -72,7 +72,6 @@ jobs: max-parallel: 1 matrix: arrays: [ - {distro: 'debian', codename: 'buster'}, {distro: 'debian', codename: 'bullseye'}, {distro: 'debian', codename: 'bookworm'}, {distro: 'ubuntu', codename: 'focal'}, From 5bdce2f440ed63514bf93983adfb5750a3869f5f Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 29 Jun 2024 06:22:29 +0800 Subject: [PATCH 2/7] ci: use kernel.org gnu mirro The GNU main site and ftpmirror.gnu.org is not reliable and usually fails. Use the more stable Linux Kernel mirror instead. --- builder/images/macos/01-gettext.sh | 2 +- builder/scripts.d/25-gmp.sh | 2 +- docker-build-win64.sh | 4 ++-- docker-build.sh | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/builder/images/macos/01-gettext.sh b/builder/images/macos/01-gettext.sh index 257e177ade..7afad5007d 100644 --- a/builder/images/macos/01-gettext.sh +++ b/builder/images/macos/01-gettext.sh @@ -1,6 +1,6 @@ #!/bin/bash ffbuild_macbase() { - wget https://ftpmirror.gnu.org/gettext/gettext-0.22.5.tar.gz -O gettext.tar.gz + wget https://mirrors.kernel.org/gnu/gettext/gettext-0.22.5.tar.gz -O gettext.tar.gz tar xvf gettext.tar.gz cd gettext-0.22.5 ./configure --disable-silent-rules --disable-shared --enable-static --with-included-glib --with-included-libcroco --with-included-libunistring --with-included-libxml --with-emacs --with-lispdir="$FFBUILD_PREFIX"/share --disable-java --disable-csharp --without-git --without-cvs --without-xz --with-included-gettext --prefix="$FFBUILD_PREFIX" diff --git a/builder/scripts.d/25-gmp.sh b/builder/scripts.d/25-gmp.sh index 8d1be48986..3b89145572 100755 --- a/builder/scripts.d/25-gmp.sh +++ b/builder/scripts.d/25-gmp.sh @@ -2,7 +2,7 @@ SCRIPT_VERSION="6.3.0" SCRIPT_SHA512="e85a0dab5195889948a3462189f0e0598d331d3457612e2d3350799dba2e244316d256f8161df5219538eb003e4b5343f989aaa00f96321559063ed8c8f29fd2" -SCRIPT_URL="https://ftp.gnu.org/gnu/gmp/gmp-${SCRIPT_VERSION}.tar.xz" +SCRIPT_URL="https://mirrors.kernel.org/gnu/gmp/gmp-${SCRIPT_VERSION}.tar.xz" ffbuild_enabled() { return 0 diff --git a/docker-build-win64.sh b/docker-build-win64.sh index bf91405083..e3b2e1af2d 100755 --- a/docker-build-win64.sh +++ b/docker-build-win64.sh @@ -31,7 +31,7 @@ popd mkdir iconv pushd iconv iconv_ver="1.17" -iconv_link="https://ftp.gnu.org/pub/gnu/libiconv/libiconv-${iconv_ver}.tar.gz" +iconv_link="https://mirrors.kernel.org/gnu/libiconv/libiconv-${iconv_ver}.tar.gz" wget ${iconv_link} -O iconv.tar.gz tar xaf iconv.tar.gz pushd libiconv-${iconv_ver} @@ -104,7 +104,7 @@ popd mkdir gmp pushd gmp gmp_ver="6.3.0" -gmp_link="https://ftp.gnu.org/gnu/gmp/gmp-${gmp_ver}.tar.xz" +gmp_link="https://mirrors.kernel.org/gnu/gmp/gmp-${gmp_ver}.tar.xz" wget ${gmp_link} -O gmp.tar.gz tar xaf gmp.tar.gz pushd gmp-${gmp_ver} diff --git a/docker-build.sh b/docker-build.sh index 608d96bf45..106fc26e2f 100755 --- a/docker-build.sh +++ b/docker-build.sh @@ -37,7 +37,7 @@ prepare_extra_common() { mkdir iconv pushd iconv iconv_ver="1.17" - iconv_link="https://ftp.gnu.org/pub/gnu/libiconv/libiconv-${iconv_ver}.tar.gz" + iconv_link="https://mirrors.kernel.org/gnu/libiconv/libiconv-${iconv_ver}.tar.gz" wget ${iconv_link} -O iconv.tar.gz tar xaf iconv.tar.gz pushd libiconv-${iconv_ver} From f09a0a349c75f433ec42ae719c1c24ecbd3bec27 Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 29 Jun 2024 06:25:15 +0800 Subject: [PATCH 3/7] ci: pin harfbuzz commit for windows image build harfbuzz dropped autoconf build in 9.0. Use the spcific commit we are using for dependency before we are ready to switch to menson. --- docker-build-win64.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-build-win64.sh b/docker-build-win64.sh index e3b2e1af2d..736ac733f9 100755 --- a/docker-build-win64.sh +++ b/docker-build-win64.sh @@ -197,6 +197,7 @@ popd # HARFBUZZ git clone --depth=1 https://github.com/harfbuzz/harfbuzz.git pushd harfbuzz +git checkout bc90b29b37fe3809f9e48aa7be08fbf2208e481a ./autogen.sh \ --prefix=${FF_DEPS_PREFIX} \ --host=${FF_TOOLCHAIN} \ From d4e81d3360f4f242aea23a39d083bd7dca04c10f Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 29 Jun 2024 07:06:16 +0800 Subject: [PATCH 4/7] ci: pull full repo for harfbuzz --- docker-build-win64.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-build-win64.sh b/docker-build-win64.sh index 736ac733f9..19cccca12e 100755 --- a/docker-build-win64.sh +++ b/docker-build-win64.sh @@ -195,7 +195,7 @@ popd popd # HARFBUZZ -git clone --depth=1 https://github.com/harfbuzz/harfbuzz.git +git clone https://github.com/harfbuzz/harfbuzz.git pushd harfbuzz git checkout bc90b29b37fe3809f9e48aa7be08fbf2208e481a ./autogen.sh \ From 1cc326421abb0b6b170a2436fc0328ef1e6064fb Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 29 Jun 2024 07:06:51 +0800 Subject: [PATCH 5/7] ci: use google & github mirror for libiconv --- builder/scripts.d/20-libiconv.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/builder/scripts.d/20-libiconv.sh b/builder/scripts.d/20-libiconv.sh index f2083e22d9..7c0833387d 100755 --- a/builder/scripts.d/20-libiconv.sh +++ b/builder/scripts.d/20-libiconv.sh @@ -1,6 +1,6 @@ #!/bin/bash -SCRIPT_REPO="https://git.savannah.gnu.org/git/libiconv.git" +SCRIPT_REPO="https://skia.googlesource.com/third_party/libiconv" SCRIPT_COMMIT="v1.17" SCRIPT_TAGFILTER="v?.*" @@ -17,7 +17,7 @@ ffbuild_dockerbuild() { cat < ./.gitmodules [subcheckout "gnulib"] - url = https://git.savannah.gnu.org/git/gnulib.git + url = https://github.com/coreutils/gnulib.git path = gnulib EOF From efc31adac4ab6bbb2a407cfc5920be293fbc66a5 Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 29 Jun 2024 13:28:40 +0800 Subject: [PATCH 6/7] Apply suggestions from code review Co-authored-by: Nyanmisaka --- docker-build-win64.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docker-build-win64.sh b/docker-build-win64.sh index 19cccca12e..2819658872 100755 --- a/docker-build-win64.sh +++ b/docker-build-win64.sh @@ -195,9 +195,10 @@ popd popd # HARFBUZZ +harfbuzz_commit="bc90b29b37fe3809f9e48aa7be08fbf2208e481a" git clone https://github.com/harfbuzz/harfbuzz.git pushd harfbuzz -git checkout bc90b29b37fe3809f9e48aa7be08fbf2208e481a +git checkout ${harfbuzz_commit} ./autogen.sh \ --prefix=${FF_DEPS_PREFIX} \ --host=${FF_TOOLCHAIN} \ From cafffc21e47f7aef97cd3eaff7cb44046b0bc129 Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 29 Jun 2024 13:32:45 +0800 Subject: [PATCH 7/7] ci: remove debian buster --- build | 12 +++--------- build.yaml | 3 --- docker-build.sh | 3 --- 3 files changed, 3 insertions(+), 15 deletions(-) diff --git a/build b/build index 7b5e1ba5a3..e68a99c2a7 100755 --- a/build +++ b/build @@ -4,10 +4,9 @@ usage() { echo -e "Build Jellyfin FFMPEG deb packages" echo -e " $0 " echo -e "Releases: Arches:" - echo -e " * buster * amd64" - echo -e " * bullseye * armhf" - echo -e " * bookworm * arm64" - echo -e " * focal" + echo -e " * bullseye * amd64" + echo -e " * bookworm * armhf" + echo -e " * focal * arm64" echo -e " * jammy" echo -e " * noble" } @@ -19,11 +18,6 @@ fi cli_release="${1}" case ${cli_release} in - 'buster') - release="debian:buster" - gcc_version="8" - llvm_version="13" - ;; 'bullseye') release="debian:bullseye" gcc_version="10" diff --git a/build.yaml b/build.yaml index 043909c703..0e7bc834df 100644 --- a/build.yaml +++ b/build.yaml @@ -3,9 +3,6 @@ name: "jellyfin-ffmpeg" version: "6.0.1-7" packages: - - buster-amd64 - - buster-armhf - - buster-arm64 - bullseye-amd64 - bullseye-armhf - bullseye-arm64 diff --git a/docker-build.sh b/docker-build.sh index 106fc26e2f..4e9ffcbfcd 100755 --- a/docker-build.sh +++ b/docker-build.sh @@ -596,9 +596,6 @@ prepare_extra_amd64() { # LIBPLACEBO pl_ver="v6.338.2" - if [[ $( lsb_release -c -s ) == "buster" ]]; then - pl_ver="v5.264.1" - fi pushd ${SOURCE_DIR} git clone -b ${pl_ver} --recursive --depth=1 https://github.com/haasn/libplacebo.git sed -i 's|env: python_env,||g' libplacebo/src/vulkan/meson.build