From 523eac90ec94409fe5596e6e512db2df9263747d Mon Sep 17 00:00:00 2001
From: Kevin Mihelich <kevin@archlinuxarm.org>
Date: Thu, 21 Mar 2024 23:33:46 +0000
Subject: [PATCH] extra/gstreamer to 1.24.0-3

---
 extra/gstreamer/.SRCINFO |  4 ++--
 extra/gstreamer/PKGBUILD | 13 ++++++++++---
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/extra/gstreamer/.SRCINFO b/extra/gstreamer/.SRCINFO
index 5cfbc2105..a9f7c100b 100644
--- a/extra/gstreamer/.SRCINFO
+++ b/extra/gstreamer/.SRCINFO
@@ -1,7 +1,7 @@
 pkgbase = gstreamer
 	pkgdesc = Multimedia graph framework
 	pkgver = 1.24.0
-	pkgrel = 1
+	pkgrel = 3
 	url = https://gstreamer.freedesktop.org/
 	arch = x86_64
 	license = LGPL-2.1-or-later
@@ -139,7 +139,7 @@ pkgbase = gstreamer
 	source = https://gstreamer.freedesktop.org/src/gstreamer-docs/gstreamer-docs-1.24.0.tar.xz.asc
 	source = 0001-HACK-meson-Disable-broken-tests.patch
 	validpgpkeys = D637032E45B8C6585B9456565D2EEE6F6F349D7C
-	b2sums = SKIP
+	b2sums = dcd85b0b2e6a785fba6fd44bdab3bbf42a5a64ecb55d978d09d57a4a79e895396444eae0bc29771d48fa9a3947b445c33ede496b558150b685985d0aa481c498
 	b2sums = 506088437f614f17a24402f70605d0a3831a597bec27c486763418d1ddce7dfa2370eac95e83dd82e1e2e856aaf0050ccf4b4e06a78a2664627236df762bde74
 	b2sums = SKIP
 	b2sums = afe47af956fe50ab2d77dba5d1e84649f63443a816ad7a0d0c0a37f2f46e1da3473472bd1183843b37dd3c0c61ee496b3d246df5de35e5df960a09bcac7eb48f
diff --git a/extra/gstreamer/PKGBUILD b/extra/gstreamer/PKGBUILD
index 76d36df58..57dd172fb 100644
--- a/extra/gstreamer/PKGBUILD
+++ b/extra/gstreamer/PKGBUILD
@@ -34,7 +34,7 @@ pkgname=(
   gstreamer-docs
 )
 pkgver=1.24.0
-pkgrel=1
+pkgrel=3
 pkgdesc="Multimedia graph framework"
 url="https://gstreamer.freedesktop.org/"
 arch=(x86_64)
@@ -86,7 +86,7 @@ source=(
   "https://gstreamer.freedesktop.org/src/gstreamer-docs/gstreamer-docs-$pkgver.tar.xz"{,.asc}
   0001-HACK-meson-Disable-broken-tests.patch
 )
-b2sums=('SKIP'
+b2sums=('dcd85b0b2e6a785fba6fd44bdab3bbf42a5a64ecb55d978d09d57a4a79e895396444eae0bc29771d48fa9a3947b445c33ede496b558150b685985d0aa481c498'
         '506088437f614f17a24402f70605d0a3831a597bec27c486763418d1ddce7dfa2370eac95e83dd82e1e2e856aaf0050ccf4b4e06a78a2664627236df762bde74'
         'SKIP'
         'afe47af956fe50ab2d77dba5d1e84649f63443a816ad7a0d0c0a37f2f46e1da3473472bd1183843b37dd3c0c61ee496b3d246df5de35e5df960a09bcac7eb48f')
@@ -97,6 +97,10 @@ validpgpkeys=(
 prepare() {
   cd gstreamer
 
+  # https://gitlab.archlinux.org/archlinux/packaging/packages/gst-plugins-base/-/issues/1
+  # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6384
+  git cherry-pick -n 93255efece907fdec28366aea6f474af051a1ed0
+
   # Disable broken tests
   git apply -3 ../0001-HACK-meson-Disable-broken-tests.patch
 }
@@ -152,6 +156,9 @@ build() {
     -D gst-editing-services:validate=disabled
   )
 
+  # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3197
+  export GI_SCANNER_DISABLE_CACHE=1
+
   arch-meson gstreamer build "${meson_options[@]}"
   meson configure build  # Print config
   meson compile -C build
@@ -163,7 +170,7 @@ check() (
 
   # Flaky due to timeouts
   xvfb-run -s '-nolisten local' \
-    meson test -C build --print-errorlogs -t 3
+    meson test -C build --print-errorlogs -t 5
 )
 
 _install() {