diff --git a/_service b/_service
index 773bb4f..27996a0 100644
--- a/_service
+++ b/_service
@@ -1,9 +1,19 @@
+
-
- https
- download.gnome.org
- sources/gdk-pixbuf/2.42/gdk-pixbuf-2.42.12.tar.xz
-
-
+
+ git
+ https://gitlab.gnome.org/GNOME/gdk-pixbuf.git
+ 2.42.12
+ @PARENT_TAG@+@TAG_OFFSET@
+ v?(.*)\+0
+ \1
+
+
+
+
+ *.tar
+ zst
+
+
diff --git a/gdk-pixbuf-2.42.12.obscpio b/gdk-pixbuf-2.42.12.obscpio
new file mode 100644
index 0000000..07f34ea
--- /dev/null
+++ b/gdk-pixbuf-2.42.12.obscpio
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8d8a345c63d963def5038877eb6b71428bbe692f4acedbbf3ef488ebe98111b3
+size 25067533
diff --git a/gdk-pixbuf-2.42.12.zip b/gdk-pixbuf-2.42.12.zip
deleted file mode 100644
index eda63db..0000000
--- a/gdk-pixbuf-2.42.12.zip
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:83504138e2302916a0f5627e28b7f7505e0559a6dcf7c5bd320a68e27ab20e69
-size 7798780
diff --git a/gdk-pixbuf-jpeg-slow.patch b/gdk-pixbuf-jpeg-slow.patch
new file mode 100644
index 0000000..1023ac0
--- /dev/null
+++ b/gdk-pixbuf-jpeg-slow.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/meson.build b/tests/meson.build
+index 37810666..eff43cc3 100644
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -81,7 +81,7 @@ installed_tests = {
+ 'suites': ['io'],
+ },
+ 'pixbuf-jpeg': {
+- 'suites': ['format'],
++ 'suites': ['format', 'slow'],
+ 'skip': not enabled_loaders.contains('jpeg'),
+ },
+ 'pixbuf-dpi': {
diff --git a/gdk-pixbuf.changes b/gdk-pixbuf.changes
index f368030..ab077c0 100644
--- a/gdk-pixbuf.changes
+++ b/gdk-pixbuf.changes
@@ -1,3 +1,20 @@
+-------------------------------------------------------------------
+Thu May 16 13:30:50 UTC 2024 - Dominique Leuenberger
+
+- Enable test suite on x86_64 (other arches seem too flaky for now):
+ + Add %check section and call %meson_test
+ + Add gdk-pixbuf-jpeg-slow.patch: allow pixbuf-jpeg to run for
+ more than 30s, by marking it as a slow test
+ (glgo#GNOME/gdk-pixbuf!174).
+
+-------------------------------------------------------------------
+Thu May 16 11:26:04 UTC 2024 - Dominique Leuenberger
+
+- Migrate package to a regular obs_scm service, no longer password
+ protecting a zip file. The originally reported bsc#1159337 seems
+ no longer be applicable and we prefer the easier route.
+- Drop unzip BuildRequires and pre_checkin.sh script.
+
-------------------------------------------------------------------
Wed May 15 11:49:20 UTC 2024 - Dominique Leuenberger
diff --git a/gdk-pixbuf.obsinfo b/gdk-pixbuf.obsinfo
new file mode 100644
index 0000000..0e8a6f4
--- /dev/null
+++ b/gdk-pixbuf.obsinfo
@@ -0,0 +1,4 @@
+name: gdk-pixbuf
+version: 2.42.12
+mtime: 1715739341
+commit: e4315fb8553776e13d39e3f2e0ea8792db61720c
diff --git a/gdk-pixbuf.spec b/gdk-pixbuf.spec
index df790b8..78157e8 100644
--- a/gdk-pixbuf.spec
+++ b/gdk-pixbuf.spec
@@ -26,16 +26,13 @@ Summary: An image loading library
License: LGPL-2.1-or-later
Group: Development/Libraries/GNOME
URL: https://www.gnome.org/
-
-# A file from the test suite is correctly identified by clamav to be a
-# malicious BC.Gif.Exploit.Agent-1425366.Agent. This is an intentional part of
-# the test suite to ensure it has no negative side effects. Change the Source0
-# from tar.xz to zip to bypass clamav scanning on SLE.
-Source0: %{name}-%{version}.zip
+Source0: %{name}-%{version}.tar.zst
Source1: macros.gdk-pixbuf
Source2: README.SUSE
Source3: gdk-pixbuf-rpmlintrc
Source99: baselibs.conf
+# PATCH-FIX-UPSTREAM gdk-pixbuf-jpeg-slow.patch -- https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/merge_requests/174
+Patch0: gdk-pixbuf-jpeg-slow.patch
BuildRequires: docbook-xsl-stylesheets
BuildRequires: docutils
@@ -43,7 +40,6 @@ BuildRequires: libjpeg-devel
BuildRequires: libtiff-devel
BuildRequires: meson >= 0.55.3
BuildRequires: pkgconfig
-BuildRequires: unzip
BuildRequires: xsltproc
BuildRequires: pkgconfig(gi-docgen)
BuildRequires: pkgconfig(glib-2.0) >= 2.56.0
@@ -131,12 +127,8 @@ This package contains the development files for gdk-pixbuf.
%lang_package
%prep
-%setup -c -T -q
-unzip -P gecko %{SOURCE0}
-%if "%{_lib}" == "lib64"
+%autosetup -p1
cp -a %{SOURCE2} .
-%endif
-%autopatch -p1
%build
%meson \
@@ -172,6 +164,11 @@ cp %{SOURCE1} %{buildroot}%{_rpmmacrodir}
%endif
%define _gdk_pixbuf_query_loaders_update_cache %{_gdk_pixbuf_query_loaders} --update-cache
+%ifarch x86_64
+%check
+%meson_test
+%endif
+
%post -n libgdk_pixbuf-2_0-0
/sbin/ldconfig
%if 0
diff --git a/pre_checkin.sh b/pre_checkin.sh
deleted file mode 100644
index 2fc5ff0..0000000
--- a/pre_checkin.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-# To update the package:
-## 1. update the version tags in _service
-## 2. run `osc service ra`; # get the upstream release, and set the version string in spec
-## 3. run `./pre_checkin.sh`; # generate the zip file
-## 4. edit changelog and commit the change # the tar.xz file generated by the step 2 is not necessarily to commit
-
-EXTRACTDIR=$(mktemp -d);
-BASENAME=$(grep ^Name\: gdk-pixbuf.spec | cut -d: -f2 | sed 's/[[:space:]]//g');
-VERSION=$(grep ^Version\: gdk-pixbuf.spec | cut -d: -f2 | sed 's/[[:space:]]//g');
-
-tar xvfJ $BASENAME-$VERSION.tar.xz -C $EXTRACTDIR;
-pushd $EXTRACTDIR/$BASENAME-$VERSION && zip -r -P gecko $BASENAME-$VERSION.zip * && popd && mv $EXTRACTDIR/$BASENAME-$VERSION/$BASENAME-$VERSION.zip .;
-rm -fr $EXTRACTDIR && rm -fr $BASENAME-$VERSION.tar.xz;