firefox-fourier: fix patches layout — ship arch-*.patch + reference patches/
The PKGBUILD has been structurally broken since at least the 150.0.1
import: source array referenced patches at top level ('0001-...patch')
but the actual files live in patches/ — makepkg searched for them in
the package root and failed before doing any work. The arch-0002/3/4
upstream toolchain patches (clang 22, glibc 2.43, Rust 1.95) weren't
shipped in the repo at all.
Caught when boltzmann tried to build 150.0.1-2 (PR #9 follow-up); fails
at the source-staging phase with:
==> ERROR: arch-0002-Bug-2033279-Make-enable-rust-simd-work-with-Rust-1.9.patch
was not found in the build directory and is not a URL.
Why nobody noticed: firefox-fourier has no Gitea Actions job (too heavy
for the runner pool). The shipped 150.0.1-1 .pkg.tar.zst was produced
by hand-staging files; the PKGBUILD itself never reproduced from a
clean checkout.
This commit:
- Moves all source-array patch references under patches/ to match the
on-disk layout (same convention as chromium-fourier).
- Updates prepare() paths accordingly.
- Adds arch-0002/3/4 patches fetched verbatim from
https://gitlab.archlinux.org/archlinux/packaging/packages/firefox
(raw/main/{0002,0003,0004}-...patch). Renamed with arch- prefix in
the repo to avoid namespace collision with the local 0001..0005.
- Adds the previously-omitted 0005-rdd-sandbox-v4l2-media-ctl.patch
to the source array + prepare(); this is the patch that broadens
the RDD sandbox so /dev/media* and /dev/video* ioctls reach the
decoder child (README §1 enumerates it as load-bearing for the HW
path). It was present in patches/ but not wired up.
Dry-run verified all 8 patches apply cleanly against firefox-150.0.1
source (some hunks offset by ≤3 lines, no conflicts).
pkgrel 2 -> 3.
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
|
||||
pkgname=firefox-fourier
|
||||
pkgver=150.0.1
|
||||
pkgrel=2
|
||||
pkgrel=3
|
||||
pkgdesc='Firefox with V4L2 stateless HW video decode unlocked for mainline Linux Rockchip'
|
||||
arch=('aarch64' 'x86_64')
|
||||
url='https://www.mozilla.org/firefox'
|
||||
@@ -79,33 +79,35 @@ source=(
|
||||
# walls. arch-0001 (install-under-remoting) skipped — our launcher
|
||||
# ships under /usr/bin/firefox-fourier with our own wrapper.
|
||||
# https://gitlab.archlinux.org/archlinux/packaging/packages/firefox
|
||||
'arch-0002-Bug-2033279-Make-enable-rust-simd-work-with-Rust-1.9.patch'
|
||||
'arch-0003-Patch-glsl-optimizer-to-build-with-glibc-2.43.patch'
|
||||
'arch-0004-Bug-2023597-Use-wasm32-wasip1-target-for-clang-22.1-.patch'
|
||||
'patches/arch-0002-Bug-2033279-Make-enable-rust-simd-work-with-Rust-1.9.patch'
|
||||
'patches/arch-0003-Patch-glsl-optimizer-to-build-with-glibc-2.43.patch'
|
||||
'patches/arch-0004-Bug-2023597-Use-wasm32-wasip1-target-for-clang-22.1-.patch'
|
||||
# firefox-fourier patches — V4L2 stateless decode unlock.
|
||||
'0001-gfxinfo-v4l2-stateless-fourccs.patch'
|
||||
'0002-libwrapper-hwdevice-ctx-create.patch'
|
||||
'0003-ffmpegvideo-v4l2-request-route.patch'
|
||||
'0004-prefs-v4l2-request.patch'
|
||||
'patches/0001-gfxinfo-v4l2-stateless-fourccs.patch'
|
||||
'patches/0002-libwrapper-hwdevice-ctx-create.patch'
|
||||
'patches/0003-ffmpegvideo-v4l2-request-route.patch'
|
||||
'patches/0004-prefs-v4l2-request.patch'
|
||||
'patches/0005-rdd-sandbox-v4l2-media-ctl.patch'
|
||||
# Vendor-default prefs that gate the patched VAAPI path on RK3399 —
|
||||
# widget.dmabuf.force-enabled etc. See marfrit-packages#8 for evidence.
|
||||
'rockchip-fourier-defaults.js'
|
||||
)
|
||||
sha256sums=('SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP')
|
||||
sha256sums=('SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP')
|
||||
|
||||
prepare() {
|
||||
cd "${srcdir}/firefox-${pkgver}"
|
||||
|
||||
# Toolchain glue (Arch upstream) — apply BEFORE the fourier patches.
|
||||
patch -Np1 -i "${srcdir}/arch-0002-Bug-2033279-Make-enable-rust-simd-work-with-Rust-1.9.patch"
|
||||
patch -Np1 -i "${srcdir}/arch-0003-Patch-glsl-optimizer-to-build-with-glibc-2.43.patch"
|
||||
patch -Np1 -i "${srcdir}/arch-0004-Bug-2023597-Use-wasm32-wasip1-target-for-clang-22.1-.patch"
|
||||
patch -Np1 -i "${srcdir}/patches/arch-0002-Bug-2033279-Make-enable-rust-simd-work-with-Rust-1.9.patch"
|
||||
patch -Np1 -i "${srcdir}/patches/arch-0003-Patch-glsl-optimizer-to-build-with-glibc-2.43.patch"
|
||||
patch -Np1 -i "${srcdir}/patches/arch-0004-Bug-2023597-Use-wasm32-wasip1-target-for-clang-22.1-.patch"
|
||||
|
||||
# Fourier patches — order matters; see ../PLAN.md for rationale.
|
||||
patch -Np1 -i "${srcdir}/0001-gfxinfo-v4l2-stateless-fourccs.patch"
|
||||
patch -Np1 -i "${srcdir}/0002-libwrapper-hwdevice-ctx-create.patch"
|
||||
patch -Np1 -i "${srcdir}/0003-ffmpegvideo-v4l2-request-route.patch"
|
||||
patch -Np1 -i "${srcdir}/0004-prefs-v4l2-request.patch"
|
||||
patch -Np1 -i "${srcdir}/patches/0001-gfxinfo-v4l2-stateless-fourccs.patch"
|
||||
patch -Np1 -i "${srcdir}/patches/0002-libwrapper-hwdevice-ctx-create.patch"
|
||||
patch -Np1 -i "${srcdir}/patches/0003-ffmpegvideo-v4l2-request-route.patch"
|
||||
patch -Np1 -i "${srcdir}/patches/0004-prefs-v4l2-request.patch"
|
||||
patch -Np1 -i "${srcdir}/patches/0005-rdd-sandbox-v4l2-media-ctl.patch"
|
||||
|
||||
cp "${srcdir}/mozconfig" .mozconfig
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user