From: mhmdanas <mhmdanas@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] exiv2: update to 0.28.0.
Date: Wed, 01 Nov 2023 18:26:22 +0100 [thread overview]
Message-ID: <20231101172622.tojB7GJCZRiUOVhOv8-geY3RGd3f5sFmPEG6JZ-XKaQ@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-46838@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 1855 bytes --]
There is an updated pull request by mhmdanas against master on the void-packages repository
https://github.com/mhmdanas/void-packages exiv2-0.28.0
https://github.com/void-linux/void-packages/pull/46838
exiv2: update to 0.28.0.
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **briefly**
TODO:
- [x] Fix `gwenview`'s failed checks (not really fixed but the exact same tests fail on master as well)
@Johnnynator ufraw has been [unmaintained since December 2016](https://sourceforge.net/p/ufraw/discussion/434060/thread/30b4249b/), and it doesn't build with this PR; here are the options:
- remove the package entirely
- replace it with the newer [nufraw](https://sourceforge.net/projects/nufraw/), which already has [an exiv 0.28.x patch floating around](https://aur.archlinux.org/cgit/aur.git/tree/exiv2-error.patch?h=nufraw)
- patch it to build with this PR
What do you think?
<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->
<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- aarch64-musl
- armv7l
- armv6l-musl
-->
A patch file from https://github.com/void-linux/void-packages/pull/46838.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-exiv2-0.28.0-46838.patch --]
[-- Type: text/x-diff, Size: 61425 bytes --]
From c24ded872bb81ede65102d92b828d9575252b4f9 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Mon, 23 Oct 2023 01:20:09 +0100
Subject: [PATCH 01/22] inih: add `libINIReader.so.0` common/shlibs entry.
---
common/shlibs | 1 +
1 file changed, 1 insertion(+)
diff --git a/common/shlibs b/common/shlibs
index 9036a675c1ae5..8f03a38a16789 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3905,6 +3905,7 @@ libnotcurses++.so.3 notcurses-3.0.5_1
libnotcurses-ffi.so.3 notcurses-3.0.5_1
libevemu.so.3 evemu-2.7.0_1
libinih.so.0 inih-52_1
+libINIReader.so.0 inih-57_1
libpcaudio.so.0 pcaudiolib-1.1_1
libdcerpc-samr.so.0 samba-4.13.2_1
libdcerpc-server-core.so.0 samba-4.13.2_1
From 3cb90b2a57497f5e65cbfa759bacceee267febf6 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:12 +0100
Subject: [PATCH 02/22] exiv2: update to 0.28.0.
---
common/shlibs | 2 +-
srcpkgs/exiv2/patches/fix-tests.diff | 31 ++++++++++++++++++++++++++++
srcpkgs/exiv2/template | 14 ++++++++-----
3 files changed, 41 insertions(+), 6 deletions(-)
create mode 100644 srcpkgs/exiv2/patches/fix-tests.diff
diff --git a/common/shlibs b/common/shlibs
index 8f03a38a16789..0b1d0c89d3e51 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -555,7 +555,7 @@ libgimpcolor-2.0.so.0 libgimp-2.10.0_1
libgimpmodule-2.0.so.0 libgimp-2.10.0_1
libgmic.so.3 gmic-3.1.6_1
libcgmic.so.3 gmic-3.1.6_1
-libexiv2.so.27 exiv2-0.27_1
+libexiv2.so.28 exiv2-0.28.0_1
libKF5Holidays.so.5 kholidays-5.47.0_1
libPhabricatorHelpers.so.5 purpose-5.48.0_1
libKF5PurposeWidgets.so.5 purpose-5.48.0_1
diff --git a/srcpkgs/exiv2/patches/fix-tests.diff b/srcpkgs/exiv2/patches/fix-tests.diff
new file mode 100644
index 0000000000000..3eb7adc1635f3
--- /dev/null
+++ b/srcpkgs/exiv2/patches/fix-tests.diff
@@ -0,0 +1,31 @@
+diff --git a/tests/tiff_test/test_tag_compare.py b/tests/tiff_test/test_tag_compare.py
+index a8538bd2..974d1a9a 100644
+--- a/tests/tiff_test/test_tag_compare.py
++++ b/tests/tiff_test/test_tag_compare.py
+@@ -28,8 +28,8 @@ class OutputTagExtract(metaclass=system_tests.CaseMeta):
+ tmp = line.split()
+
+ exif, image, tag = tmp[0].split('.')
+- self.assertEquals(exif, "Exif")
+- self.assertEquals(image, "Image")
++ self.assertEqual(exif, "Exif")
++ self.assertEqual(image, "Image")
+
+ data.append({
+ "tag": tag,
+@@ -87,13 +87,13 @@ class OutputTagExtract(metaclass=system_tests.CaseMeta):
+ """
+ for pa_elem, pS_elem in zip(self.pa_data, self.pS_data):
+ for key in ["tag", "type", "len"]:
+- self.assertEquals(pa_elem[key], pS_elem[key])
++ self.assertEqual(pa_elem[key], pS_elem[key])
+
+ if pa_elem["tag"] in [
+ "ImageWidth", "ImageLength", "BitsPerSample",
+ "DocumentName", "ImageDescription", "StripOffsets",
+ "SamplesPerPixel", "StripByteCounts"]:
+- self.assertEquals(pa_elem["val"], pS_elem["val"])
++ self.assertEqual(pa_elem["val"], pS_elem["val"])
+
+ def compare_stdout(self, i, command, got_stdout, expected_stdout):
+ super().compare_stdout(i, command, got_stdout, expected_stdout)
diff --git a/srcpkgs/exiv2/template b/srcpkgs/exiv2/template
index 49985fe82cc14..876b253541d00 100644
--- a/srcpkgs/exiv2/template
+++ b/srcpkgs/exiv2/template
@@ -1,17 +1,17 @@
# Template file for 'exiv2'
pkgname=exiv2
-version=0.27.6
+version=0.28.0
revision=1
build_style=cmake
configure_args="-DEXIV2_BUILD_SAMPLES=OFF -DEXIV2_ENABLE_BMFF=ON"
-makedepends="zlib-devel expat-devel"
-checkdepends="gtest-devel"
+makedepends="zlib-devel brotli-devel expat-devel inih-devel"
+checkdepends="gtest-devel python3"
short_desc="Image metadata manipulation"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="GPL-2.0-or-later"
homepage="https://www.exiv2.org"
distfiles="https://github.com/Exiv2/exiv2/releases/download/v${version}/exiv2-${version}-Source.tar.gz"
-checksum=4c192483a1125dc59a3d70b30d30d32edace9e14adf52802d2f853abf72db8a6
+checksum=89af3b5ef7277753ef7a7b5374ae017c6b9e304db3b688f1948e73e103491f3d
if [ -n "$XBPS_CHECK_PKGS" ]; then
configure_args+=" -DEXIV2_BUILD_UNIT_TESTS=ON"
@@ -21,6 +21,11 @@ if [ -n "$XBPS_CCACHE" ]; then
configure_args+=" -DBUILD_WITH_CCACHE=ON"
fi
+pre_check() {
+ # https://github.com/Exiv2/exiv2/issues/2762
+ rm -f tests/bugfixes/github/test_issue_2427.py
+}
+
exiv2-devel_package() {
depends="${makedepends} ${sourcepkg}-${version}_${revision}"
short_desc+=" - development files"
@@ -28,7 +33,6 @@ exiv2-devel_package() {
vmove usr/include
vmove usr/lib/cmake
vmove usr/lib/pkgconfig
- vmove "usr/lib/*.a"
vmove "usr/lib/*.so"
}
}
From c770db7b4c73e4a05854124fed22690af0553595 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:37 +0100
Subject: [PATCH 03/22] ART: revbump for exiv2-0.28.0.
---
srcpkgs/ART/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/ART/template b/srcpkgs/ART/template
index b6c47fc6c4cdf..94c7aa0378061 100644
--- a/srcpkgs/ART/template
+++ b/srcpkgs/ART/template
@@ -1,7 +1,7 @@
# Template file for 'ART'
pkgname=ART
version=1.20.2
-revision=1
+revision=2
build_style=cmake
hostmakedepends="pkg-config"
makedepends="fftw-devel gtkmm-devel lensfun-devel
From 0d3804c726646adf7e379cbe692d26d242e6e580 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:38 +0100
Subject: [PATCH 04/22] darktable: revbump for exiv2-0.28.0.
---
srcpkgs/darktable/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/darktable/template b/srcpkgs/darktable/template
index 60415a34dc018..3d35571239a93 100644
--- a/srcpkgs/darktable/template
+++ b/srcpkgs/darktable/template
@@ -1,7 +1,7 @@
# Template file for 'darktable'
pkgname=darktable
version=4.4.2
-revision=2
+revision=3
# upstream only supports these archs:
archs="x86_64* aarch64* ppc64le*"
build_style=cmake
From 7e8d45a2e180cd2036b1c81054e20689d00b5a06 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:38 +0100
Subject: [PATCH 05/22] digikam: revbump for exiv2-0.28.0.
---
srcpkgs/digikam/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/digikam/template b/srcpkgs/digikam/template
index 206185f565488..4784bf7d62a8e 100644
--- a/srcpkgs/digikam/template
+++ b/srcpkgs/digikam/template
@@ -1,7 +1,7 @@
# Template file for 'digikam'
pkgname=digikam
version=8.1.0
-revision=1
+revision=2
build_style=cmake
configure_args="-DBUILD_TESTING=OFF"
hostmakedepends="extra-cmake-modules gettext pkg-config bison flex qt5-qmake
From 27a5d8f2a60ae766ad1be21809edb672abb319b8 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:38 +0100
Subject: [PATCH 06/22] geeqie: revbump for exiv2-0.28.0.
---
srcpkgs/geeqie/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/geeqie/template b/srcpkgs/geeqie/template
index b5f958f854c1b..b494bc149e957 100644
--- a/srcpkgs/geeqie/template
+++ b/srcpkgs/geeqie/template
@@ -1,7 +1,7 @@
# Template file for 'geeqie'
pkgname=geeqie
version=2.1
-revision=1
+revision=2
build_style=meson
hostmakedepends="pkg-config gettext xxd gdk-pixbuf-devel glib-devel"
makedepends="gtk+3-devel glib-devel lcms2-devel exiv2-devel libheif-devel
From 096ef0a8962dcae5f6c4de4d702858a861a50189 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:38 +0100
Subject: [PATCH 07/22] gthumb: revbump for exiv2-0.28.0.
---
srcpkgs/gthumb/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/gthumb/template b/srcpkgs/gthumb/template
index c8e19f0dedb61..732d5e1c6089f 100644
--- a/srcpkgs/gthumb/template
+++ b/srcpkgs/gthumb/template
@@ -1,7 +1,7 @@
# Template file for 'gthumb'
pkgname=gthumb
version=3.12.3
-revision=1
+revision=2
build_style=meson
hostmakedepends="gettext pkg-config itstool glib-devel"
makedepends="webkit2gtk-devel json-glib-devel libsecret-devel librsvg-devel
From fb9c21d01088e0f7aa4ca4fe99fa5497c34f6e45 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:38 +0100
Subject: [PATCH 08/22] gwenview: revbump for exiv2-0.28.0.
---
srcpkgs/gwenview/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/gwenview/template b/srcpkgs/gwenview/template
index 73d450a458c4d..eb876cfadcfe8 100644
--- a/srcpkgs/gwenview/template
+++ b/srcpkgs/gwenview/template
@@ -1,7 +1,7 @@
# Template file for 'gwenview'
pkgname=gwenview
version=23.08.2
-revision=1
+revision=2
build_style=cmake
build_helper=qemu
hostmakedepends="extra-cmake-modules pkg-config qt5-qmake qt5-host-tools
From 803aa9fc8cd0eda481b635a9633ac0ef52368c9d Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:38 +0100
Subject: [PATCH 09/22] hugin: revbump for exiv2-0.28.0.
---
srcpkgs/hugin/patches/exiv2-0.28.patch | 77 ++++++++++++++++++++++++++
srcpkgs/hugin/template | 2 +-
2 files changed, 78 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/hugin/patches/exiv2-0.28.patch
diff --git a/srcpkgs/hugin/patches/exiv2-0.28.patch b/srcpkgs/hugin/patches/exiv2-0.28.patch
new file mode 100644
index 0000000000000..49f0518117020
--- /dev/null
+++ b/srcpkgs/hugin/patches/exiv2-0.28.patch
@@ -0,0 +1,77 @@
+Patch-Source: https://gitlab.archlinux.org/archlinux/packaging/packages/hugin/-/blob/main/exiv2-0.28.patch
+diff -r 79cd11a7a66f src/hugin_base/panodata/Exiv2Helper.cpp
+--- a/src/hugin_base/panodata/Exiv2Helper.cpp Wed May 24 19:13:20 2023 +0200
++++ b/src/hugin_base/panodata/Exiv2Helper.cpp Mon Jun 05 00:31:19 2023 +0200
+@@ -40,7 +40,7 @@
+ Exiv2::ExifData::iterator itr = exifData.findKey(Exiv2::ExifKey(keyName));
+ if (itr != exifData.end() && itr->count())
+ {
+- value = itr->toLong();
++ value = itr->toUint32();
+ return true;
+ }
+ else
+@@ -165,7 +165,7 @@
+ {
+ if(it!=exifData.end() && it->count())
+ {
+- return it->toLong();
++ return it->toUint32();
+ }
+ return 0;
+ };
+@@ -600,4 +600,4 @@
+ };
+
+ }; //namespace Exiv2Helper
+-}; //namespace HuginBase
+\ No newline at end of file
++}; //namespace HuginBase
+diff -r 79cd11a7a66f src/hugin_base/panodata/SrcPanoImage.cpp
+--- a/src/hugin_base/panodata/SrcPanoImage.cpp Wed May 24 19:13:20 2023 +0200
++++ b/src/hugin_base/panodata/SrcPanoImage.cpp Mon Jun 05 00:31:19 2023 +0200
+@@ -384,7 +384,7 @@
+ pos = xmpData.findKey(Exiv2::XmpKey("Xmp.GPano.CroppedAreaImageWidthPixels"));
+ if (pos != xmpData.end())
+ {
+- croppedWidth = pos->toLong();
++ croppedWidth = pos->toUint32();
+ }
+ else
+ {
+@@ -394,7 +394,7 @@
+ pos = xmpData.findKey(Exiv2::XmpKey("Xmp.GPano.CroppedAreaImageHeightPixels"));
+ if (pos != xmpData.end())
+ {
+- croppedHeight = pos->toLong();
++ croppedHeight = pos->toUint32();
+ }
+ else
+ {
+@@ -408,7 +408,7 @@
+ double hfov = 0;
+ if (pos != xmpData.end())
+ {
+- hfov = 360 * croppedWidth / (double)pos->toLong();
++ hfov = 360 * croppedWidth / (double)pos->toUint32();
+ }
+ else
+ {
+@@ -419,7 +419,7 @@
+ pos = xmpData.findKey(Exiv2::XmpKey("Xmp.GPano.FullPanoHeightPixels"));
+ if (pos != xmpData.end())
+ {
+- fullHeight = pos->toLong();
++ fullHeight = pos->toUint32();
+ }
+ else
+ {
+@@ -430,7 +430,7 @@
+ pos = xmpData.findKey(Exiv2::XmpKey("Xmp.GPano.CroppedAreaTopPixels"));
+ if (pos != xmpData.end())
+ {
+- cropTop = pos->toLong();
++ cropTop = pos->toUint32();
+ }
+ else
+ {
diff --git a/srcpkgs/hugin/template b/srcpkgs/hugin/template
index f96d2f6e27d42..ce71f6e4cbb2d 100644
--- a/srcpkgs/hugin/template
+++ b/srcpkgs/hugin/template
@@ -1,7 +1,7 @@
# Template file for 'hugin'
pkgname=hugin
version=2022.0.0
-revision=10
+revision=11
build_style=cmake
build_helper=cmake-wxWidgets-gtk3
pycompile_dirs="usr/share/hugin/data/plugins usr/share/hugin/data/plugins-templates"
From ecb668d882d5e51f45a26666473251717ca0b6c3 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:38 +0100
Subject: [PATCH 10/22] kfilemetadata5: revbump for exiv2-0.28.0.
---
srcpkgs/kfilemetadata5/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/kfilemetadata5/template b/srcpkgs/kfilemetadata5/template
index 00f7a98cf6399..e294ae5af947c 100644
--- a/srcpkgs/kfilemetadata5/template
+++ b/srcpkgs/kfilemetadata5/template
@@ -1,7 +1,7 @@
# Template file for 'kfilemetadata5'
pkgname=kfilemetadata5
version=5.111.0
-revision=1
+revision=2
build_style=cmake
hostmakedepends="kcoreaddons extra-cmake-modules pkg-config qt5-host-tools qt5-qmake
gettext kcoreaddons python3"
From 710c8361aa0e2e5f40a075533e5c68c726573b7f Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:39 +0100
Subject: [PATCH 11/22] krename: revbump for exiv2-0.28.0.
---
srcpkgs/krename/patches/e7dd767a.patch | 90 ++++++++++++++++++++++++++
srcpkgs/krename/template | 2 +-
2 files changed, 91 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/krename/patches/e7dd767a.patch
diff --git a/srcpkgs/krename/patches/e7dd767a.patch b/srcpkgs/krename/patches/e7dd767a.patch
new file mode 100644
index 0000000000000..a0ef428ce46b1
--- /dev/null
+++ b/srcpkgs/krename/patches/e7dd767a.patch
@@ -0,0 +1,90 @@
+Patch-Source: https://invent.kde.org/utilities/krename/-/commit/e7dd767a
+From e7dd767a9a1068ee1fe1502c4d619b57d3b12add Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Fri, 26 May 2023 23:23:10 +0200
+Subject: [PATCH] Fix build with >=exiv2-0.28, raise minimum to 0.27
+
+- enables use of EXIV2_TEST_VERSION macro
+- exiv2 headers cleanup
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ CMakeLists.txt | 6 +-----
+ config-krename.h.cmake | 3 ---
+ src/exiv2plugin.cpp | 17 +++++------------
+ 3 files changed, 6 insertions(+), 20 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0bda8ac..72e7297 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -56,13 +56,9 @@ set_package_properties(Taglib PROPERTIES
+ TYPE OPTIONAL)
+
+ # Find exiv2
+-find_package(LibExiv2 0.13) # AccessMode was added in 0.13
++find_package(LibExiv2 0.27) # EXIV2_TEST_VERSION was added in 0.27
+ set_package_properties(LibExiv2 PROPERTIES TYPE OPTIONAL)
+
+-if (LibExiv2_VERSION VERSION_GREATER_EQUAL "0.27")
+- set(HAVE_LIBEXIV2_0_27 TRUE)
+-endif()
+-
+ # Find podofo
+ find_package(PoDoFo)
+ set_package_properties(PoDoFo PROPERTIES
+diff --git a/config-krename.h.cmake b/config-krename.h.cmake
+index 76c3d30..862e40b 100644
+--- a/config-krename.h.cmake
++++ b/config-krename.h.cmake
+@@ -6,9 +6,6 @@
+ /* have Exiv2 */
+ #cmakedefine01 HAVE_EXIV2
+
+-/* Defined if we have libexiv2 >= 0.27 */
+-#cmakedefine HAVE_LIBEXIV2_0_27
+-
+ /* have PoDoFo */
+ #cmakedefine01 HAVE_PODOFO
+
+diff --git a/src/exiv2plugin.cpp b/src/exiv2plugin.cpp
+index 5694d8c..25e8869 100644
+--- a/src/exiv2plugin.cpp
++++ b/src/exiv2plugin.cpp
+@@ -3,20 +3,9 @@
+
+ #include "exiv2plugin.h"
+
+-#include "../config-krename.h"
+-
+ #include <KLocalizedString>
+
+-#include <exiv2/error.hpp>
+-#include <exiv2/exif.hpp>
+-#include <exiv2/image.hpp>
+-#include <exiv2/iptc.hpp>
+-#ifdef HAVE_LIBEXIV2_0_27
+- #include <exiv2/xmp_exiv2.hpp>
+-#else
+- #include <exiv2/xmp.hpp>
+-#endif
+-#include <exiv2/tags.hpp>
++#include <exiv2/exiv2.hpp>
+
+ #include "batchrenamer.h"
+ #include "tokenhelpdialog.h"
+@@ -381,7 +370,11 @@ QString Exiv2Plugin::processFile(BatchRenamer *b, int index, const QString &file
+ std::string strFilename(asc.constData(), asc.length());
+
+ try {
++#if EXIV2_TEST_VERSION(0,28,0)
++ Image::UniquePtr image = Exiv2::ImageFactory::open(strFilename);
++#else
+ Image::AutoPtr image = Exiv2::ImageFactory::open(strFilename);
++#endif
+ if (image.get() != nullptr && image->good()) {
+ image->readMetadata();
+
+--
+GitLab
+
diff --git a/srcpkgs/krename/template b/srcpkgs/krename/template
index 66023163e3293..df5535007714a 100644
--- a/srcpkgs/krename/template
+++ b/srcpkgs/krename/template
@@ -1,7 +1,7 @@
# Template file for 'krename'
pkgname=krename
version=5.0.2
-revision=1
+revision=2
build_style=cmake
hostmakedepends="extra-cmake-modules gettext kcoreaddons pkg-config qt5-host-tools qt5-qmake"
makedepends="exiv2-devel freetype-devel kjs-devel kparts-devel libpodofo-devel
From 86e47a7365d59ef2ae477e4dc591e0a8954786d2 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:39 +0100
Subject: [PATCH 12/22] krita: revbump for exiv2-0.28.0.
---
srcpkgs/krita/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/krita/template b/srcpkgs/krita/template
index a4d3de04b049f..b479e0db798ee 100644
--- a/srcpkgs/krita/template
+++ b/srcpkgs/krita/template
@@ -1,7 +1,7 @@
# Template file for 'krita'
pkgname=krita
version=5.2.0
-revision=1
+revision=2
build_style=cmake
configure_args="-Wno-dev -DBUILD_TESTING=OFF"
hostmakedepends="extra-cmake-modules gettext pkg-config python3
From 19f8c98058c10e2fc1a7a2abaedcf7ae04668c14 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:39 +0100
Subject: [PATCH 13/22] libextractor: revbump for exiv2-0.28.0.
---
srcpkgs/libextractor/patches/exiv2-0.28.patch | 286 ++++++++++++++++++
srcpkgs/libextractor/template | 2 +-
2 files changed, 287 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/libextractor/patches/exiv2-0.28.patch
diff --git a/srcpkgs/libextractor/patches/exiv2-0.28.patch b/srcpkgs/libextractor/patches/exiv2-0.28.patch
new file mode 100644
index 0000000000000..270a626d8ab06
--- /dev/null
+++ b/srcpkgs/libextractor/patches/exiv2-0.28.patch
@@ -0,0 +1,286 @@
+Patch-Source: https://gitlab.archlinux.org/archlinux/packaging/packages/libextractor/-/blob/main/exiv2-0.28.patch
+diff --git a/src/plugins/exiv2_extractor.cc b/src/plugins/exiv2_extractor.cc
+index 78f9bda..d32ed6a 100644
+--- a/src/plugins/exiv2_extractor.cc
++++ b/src/plugins/exiv2_extractor.cc
+@@ -90,7 +90,11 @@ virtual int close ();
+ * @param rcount number of bytes to read
+ * @return buffer with data read, empty buffer (!) on failure (!)
+ */
++#if EXIV2_TEST_VERSION (0,28,0)
++virtual Exiv2::DataBuf read (size_t rcount);
++#else
+ virtual Exiv2::DataBuf read (long rcount);
++#endif
+
+ /**
+ * Read up to 'rcount' bytes into 'buf'.
+@@ -99,8 +103,17 @@ virtual Exiv2::DataBuf read (long rcount);
+ * @param rcount size of 'buf'
+ * @return number of bytes read successfully, 0 on failure (!)
+ */
++#if EXIV2_TEST_VERSION (0,28,0)
++virtual size_t read (Exiv2::byte *buf,
++ size_t rcount);
++#else
+ virtual long read (Exiv2::byte *buf,
+ long rcount);
++#endif
++
++#if EXIV2_TEST_VERSION (0,28,0)
++virtual void populateFakeData();
++#endif
+
+ /**
+ * Read a single character.
+@@ -117,8 +130,13 @@ virtual int getb ();
+ * @param wcount how many bytes to write
+ * @return -1 (always fails)
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++virtual size_t write (const Exiv2::byte *data,
++ size_t wcount);
++#else
+ virtual long write (const Exiv2::byte *data,
+ long wcount);
++#endif
+
+ /**
+ * Write to stream.
+@@ -126,7 +144,11 @@ virtual long write (const Exiv2::byte *data,
+ * @param src stream to copy
+ * @return -1 (always fails)
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++virtual size_t write (Exiv2::BasicIo &src);
++#else
+ virtual long write (Exiv2::BasicIo &src);
++#endif
+
+ /**
+ * Write a single byte.
+@@ -172,7 +194,11 @@ virtual int munmap ();
+ *
+ * @return -1 on error
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++virtual size_t tell (void) const;
++#else
+ virtual long int tell (void) const;
++#endif
+
+ /**
+ * Return overall size of the file.
+@@ -213,7 +239,11 @@ virtual bool eof () const;
+ *
+ * @throws error
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++virtual const std::string& path () const noexcept;
++#else
+ virtual std::string path () const;
++#endif
+
+ #ifdef EXV_UNICODE_PATH
+ /**
+@@ -230,7 +260,11 @@ virtual std::wstring wpath () const;
+ *
+ * @throws error
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++virtual Exiv2::BasicIo::UniquePtr temporary () const;
++#else
+ virtual Exiv2::BasicIo::AutoPtr temporary () const;
++#endif
+
+ };
+
+@@ -266,7 +300,11 @@ ExtractorIO::close ()
+ * @return buffer with data read, empty buffer (!) on failure (!)
+ */
+ Exiv2::DataBuf
++#if EXIV2_TEST_VERSION (0,28,0)
++ExtractorIO::read (size_t rcount)
++#else
+ ExtractorIO::read (long rcount)
++#endif
+ {
+ void *data;
+ ssize_t ret;
+@@ -284,9 +322,15 @@ ExtractorIO::read (long rcount)
+ * @param rcount size of 'buf'
+ * @return number of bytes read successfully, 0 on failure (!)
+ */
++#if EXIV2_TEST_VERSION (0,28,0)
++size_t
++ExtractorIO::read (Exiv2::byte *buf,
++ size_t rcount)
++#else
+ long
+ ExtractorIO::read (Exiv2::byte *buf,
+ long rcount)
++#endif
+ {
+ void *data;
+ ssize_t ret;
+@@ -305,6 +349,12 @@ ExtractorIO::read (Exiv2::byte *buf,
+ return got;
+ }
+
++#if EXIV2_TEST_VERSION (0,28,0)
++void ExtractorIO::populateFakeData()
++{
++ return;
++}
++#endif
+
+ /**
+ * Read a single character.
+@@ -319,7 +369,9 @@ ExtractorIO::getb ()
+ const unsigned char *r;
+
+ if (1 != ec->read (ec->cls, &data, 1))
+-#if EXIV2_TEST_VERSION (0,27,0)
++#if EXIV2_TEST_VERSION(0,28,0)
++ throw Exiv2::Error (Exiv2::ErrorCode::kerDecodeLangAltQualifierFailed);
++#elif EXIV2_TEST_VERSION (0,27,0)
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
+ #else
+ throw Exiv2::BasicError<char> (42 /* error code */);
+@@ -336,9 +388,15 @@ ExtractorIO::getb ()
+ * @param wcount how many bytes to write
+ * @return -1 (always fails)
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++size_t
++ExtractorIO::write (const Exiv2::byte *data,
++ size_t wcount)
++#else
+ long
+ ExtractorIO::write (const Exiv2::byte *data,
+ long wcount)
++#endif
+ {
+ return -1;
+ }
+@@ -350,7 +408,11 @@ ExtractorIO::write (const Exiv2::byte *data,
+ * @param src stream to copy
+ * @return -1 (always fails)
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++size_t
++#else
+ long
++#endif
+ ExtractorIO::write (Exiv2::BasicIo &src)
+ {
+ return -1;
+@@ -378,7 +440,9 @@ ExtractorIO::putb (Exiv2::byte data)
+ void
+ ExtractorIO::transfer (Exiv2::BasicIo& src)
+ {
+-#if EXIV2_TEST_VERSION (0,27,0)
++#if EXIV2_TEST_VERSION(0,28,0)
++ throw Exiv2::Error (Exiv2::ErrorCode::kerDecodeLangAltQualifierFailed);
++#elif EXIV2_TEST_VERSION (0,27,0)
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
+ #else
+ throw Exiv2::BasicError<char> (42 /* error code */);
+@@ -427,7 +491,9 @@ ExtractorIO::seek (long offset,
+ Exiv2::byte *
+ ExtractorIO::mmap (bool isWritable)
+ {
+-#if EXIV2_TEST_VERSION (0,27,0)
++#if EXIV2_TEST_VERSION (0,28,0)
++ throw Exiv2::Error (Exiv2::ErrorCode::kerDecodeLangAltQualifierFailed);
++#elif EXIV2_TEST_VERSION (0,27,0)
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
+ #else
+ throw Exiv2::BasicError<char> (42 /* error code */);
+@@ -452,7 +518,11 @@ ExtractorIO::munmap ()
+ *
+ * @return -1 on error
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++size_t
++#else
+ long int
++#endif
+ ExtractorIO::tell (void) const
+ {
+ return (long) ec->seek (ec->cls, 0, SEEK_CUR);
+@@ -516,10 +586,17 @@ ExtractorIO::eof () const
+ *
+ * @throws error
+ */
++#if EXIV2_TEST_VERSION (0,28,0)
++const std::string&
++ExtractorIO::path () const noexcept
++#else
+ std::string
+ ExtractorIO::path () const
++#endif
+ {
+-#if EXIV2_TEST_VERSION (0,27,0)
++#if EXIV2_TEST_VERSION (0,28,0)
++ throw Exiv2::Error (Exiv2::ErrorCode::kerDecodeLangAltQualifierFailed);
++#elif EXIV2_TEST_VERSION (0,27,0)
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
+ #else
+ throw Exiv2::BasicError<char> (42 /* error code */);
+@@ -536,7 +613,9 @@ ExtractorIO::path () const
+ std::wstring
+ ExtractorIO::wpath () const
+ {
+-#if EXIV2_TEST_VERSION (0,27,0)
++#if EXIV2_TEST_VERSION (0,28,0)
++ throw Exiv2::Error (Exiv2::ErrorCode::kerDecodeLangAltQualifierFailed);
++#elif EXIV2_TEST_VERSION (0,27,0)
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
+ #else
+ throw Exiv2::BasicError<char> (42 /* error code */);
+@@ -552,11 +631,17 @@ ExtractorIO::wpath () const
+ *
+ * @throws error
+ */
++#if EXIV2_TEST_VERSION(0,28,0)
++Exiv2::BasicIo::UniquePtr
++#else
+ Exiv2::BasicIo::AutoPtr
++#endif
+ ExtractorIO::temporary () const
+ {
+ fprintf (stderr, "throwing temporary error\n");
+-#if EXIV2_TEST_VERSION (0,27,0)
++#if EXIV2_TEST_VERSION(0,28,0)
++ throw Exiv2::Error (Exiv2::ErrorCode::kerDecodeLangAltQualifierFailed);
++#elif EXIV2_TEST_VERSION (0,27,0)
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
+ #else
+ throw Exiv2::BasicError<char> (42 /* error code */);
+@@ -737,8 +822,13 @@ EXTRACTOR_exiv2_extract_method (struct EXTRACTOR_ExtractContext *ec)
+ #if ! EXIV2_TEST_VERSION (0,24,0)
+ Exiv2::LogMsg::setLevel (Exiv2::LogMsg::mute);
+ #endif
++#if EXIV2_TEST_VERSION(0,28,0)
++ std::unique_ptr<Exiv2::BasicIo> eio (new ExtractorIO (ec));
++ Exiv2::Image::UniquePtr image = Exiv2::ImageFactory::open (std::move(eio));
++#else
+ std::auto_ptr<Exiv2::BasicIo> eio (new ExtractorIO (ec));
+ Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open (eio);
++#endif
+ if (0 == image.get ())
+ return;
+ image->readMetadata ();
+@@ -822,7 +912,11 @@ EXTRACTOR_exiv2_extract_method (struct EXTRACTOR_ExtractContext *ec)
+ ADDXMP ("Xmp.lr.hierarchicalSubject", EXTRACTOR_METATYPE_SUBJECT);
+ }
+ }
++#if EXIV2_TEST_VERSION (0,28,0)
++ catch (const Exiv2::Error& e)
++#else
+ catch (const Exiv2::AnyError& e)
++#endif
+ {
+ #if DEBUG
+ std::cerr << "Caught Exiv2 exception '" << e << "'\n";
diff --git a/srcpkgs/libextractor/template b/srcpkgs/libextractor/template
index ddd4790f93e88..bfcea979a308c 100644
--- a/srcpkgs/libextractor/template
+++ b/srcpkgs/libextractor/template
@@ -1,7 +1,7 @@
# Template file for 'libextractor'
pkgname=libextractor
version=1.11
-revision=2
+revision=3
build_style=gnu-configure
configure_args="--disable-static"
hostmakedepends="pkg-config"
From ffff9172b168a9a5cbef1b8bbc6619c091ed6c86 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:39 +0100
Subject: [PATCH 14/22] libgexiv2: update to 0.14.2.
---
srcpkgs/libgexiv2/template | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/srcpkgs/libgexiv2/template b/srcpkgs/libgexiv2/template
index 23780e5397dc4..91dbcaa9aca52 100644
--- a/srcpkgs/libgexiv2/template
+++ b/srcpkgs/libgexiv2/template
@@ -1,19 +1,19 @@
# Template file for 'libgexiv2'
pkgname=libgexiv2
-version=0.14.0
-revision=3
+version=0.14.2
+revision=1
build_style=meson
build_helper="gir"
-configure_args="-Dintrospection=$(vopt_if gir true false)
- -Dvapi=$(vopt_if vala true false)"
+configure_args="$(vopt_bool gir introspection) $(vopt_bool vala vapi)"
hostmakedepends="pkg-config glib-devel $(vopt_if vala 'vala') python3-gobject"
makedepends="libglib-devel exiv2-devel"
short_desc="GObject-based wrapper around the Exiv2 library"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="GPL-2.0-or-later"
homepage="https://wiki.gnome.org/Projects/gexiv2"
-distfiles="${GNOME_SITE}/gexiv2/${version%.*}/${pkgname/lib/}-${version}.tar.xz"
-checksum=e58279a6ff20b6f64fa499615da5e9b57cf65ba7850b72fafdf17221a9d6d69e
+changelog="https://gitlab.gnome.org/GNOME/gexiv2/-/raw/master/NEWS"
+distfiles="${GNOME_SITE}/gexiv2/${version%.*}/gexiv2-${version}.tar.xz"
+checksum=2a0c9cf48fbe8b3435008866ffd40b8eddb0667d2212b42396fdf688e93ce0be
build_options="gir vala"
build_options_default="gir vala"
@@ -23,7 +23,7 @@ libgexiv2-devel_package() {
short_desc+=" - development files"
pkg_install() {
vmove usr/include
- vmove usr/lib/*.so
+ vmove "usr/lib/*.so"
vmove usr/lib/pkgconfig
if [ "$build_option_vala" ]; then
vmove usr/share/vala
From fd0e905656e5bb90b5d58bc4c5180d424b55ee2e Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:39 +0100
Subject: [PATCH 15/22] libkexiv25: update to 23.08.2.
---
srcpkgs/libkexiv25/template | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/libkexiv25/template b/srcpkgs/libkexiv25/template
index b439a42ef2b97..4d7f9600572ea 100644
--- a/srcpkgs/libkexiv25/template
+++ b/srcpkgs/libkexiv25/template
@@ -1,6 +1,6 @@
# Template file for 'libkexiv25'
pkgname=libkexiv25
-version=23.04.0
+version=23.08.2
revision=1
build_style=cmake
configure_args="-DBUILD_TESTING=OFF"
@@ -11,7 +11,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-2.0-or-later"
homepage="https://invent.kde.org/graphics/libkexiv2"
distfiles="${KDE_SITE}/release-service/${version}/src/libkexiv2-${version}.tar.xz"
-checksum=18d3eed06df9d1e31d8434ed9887e305aba176d0856e19a8cd3bdb555b80d391
+checksum=d06e36a408bf2e846a18056a1f15e61d981fa2a1fceb81f7c15136604319d033
libkexiv25-devel_package() {
short_desc+=" - development files"
From 5b521eed1195e26ac1f2825a421c9ed0ac1493b3 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:39 +0100
Subject: [PATCH 16/22] nomacs: update to 3.17.2287.
---
srcpkgs/nomacs/template | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/srcpkgs/nomacs/template b/srcpkgs/nomacs/template
index c52cd54e294db..956bd21ebb129 100644
--- a/srcpkgs/nomacs/template
+++ b/srcpkgs/nomacs/template
@@ -1,7 +1,8 @@
# Template file for 'nomacs'
pkgname=nomacs
-version=3.16.224
-revision=5
+version=3.17.2287
+revision=1
+_plugins_ver=3.17.2285
build_wrksrc=ImageLounge
build_style=cmake
configure_args="-DCMAKE_BUILD_TYPE=None -DENABLE_TRANSLATIONS=1
@@ -13,5 +14,13 @@ short_desc="Simple yet powerful Qt imageviewer"
maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-3.0-or-later"
homepage="https://github.com/nomacs/nomacs"
-distfiles="https://github.com/nomacs/nomacs/archive/${version}.tar.gz"
-checksum=bbc7e9048026ef9e0d2b64902c88050f17a679ef3d3c009de2c3b7de5d1d217c
+distfiles="https://github.com/nomacs/nomacs/archive/${version}.tar.gz
+ https://github.com/novomesk/nomacs-plugins/archive/refs/tags/${_plugins_ver}.tar.gz>plugins.tar.gz"
+checksum="6905ea615358f84a0c83d5b1b7077871dea0526ec667500a1951448cb845a92c
+ 946b2d754be9ecca5cb155f7ecc5dcafb164f6c3dcc7bf5c3c0610d3b47774aa"
+skip_extraction="plugins.tar.gz"
+
+post_extract() {
+ cd ${build_wrksrc}
+ vsrcextract -C plugins "plugins.tar.gz"
+}
From 99075796b9f5817b6fe88fa95de3c6e8b503ae4c Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:40 +0100
Subject: [PATCH 17/22] pdf2djvu: revbump for exiv2-0.28.0.
---
srcpkgs/pdf2djvu/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/pdf2djvu/template b/srcpkgs/pdf2djvu/template
index ef7433c0c98ae..5a6f3ddf4ed35 100644
--- a/srcpkgs/pdf2djvu/template
+++ b/srcpkgs/pdf2djvu/template
@@ -1,7 +1,7 @@
# Template file for 'pdf2djvu'
pkgname=pdf2djvu
version=0.9.19
-revision=4
+revision=5
build_style=gnu-configure
hostmakedepends="pkg-config djvulibre gettext"
makedepends="djvulibre-devel poppler-devel libgraphicsmagick-devel exiv2-devel libuuid-devel"
From 8359c0be8f4dc078f30bbb53c7ae9859f31d60c4 Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:40 +0100
Subject: [PATCH 18/22] phototonic: revbump for exiv2-0.28.0.
---
srcpkgs/phototonic/patches/exiv2-0.28.patch | 135 ++++++++++++++++++++
srcpkgs/phototonic/template | 2 +-
2 files changed, 136 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/phototonic/patches/exiv2-0.28.patch
diff --git a/srcpkgs/phototonic/patches/exiv2-0.28.patch b/srcpkgs/phototonic/patches/exiv2-0.28.patch
new file mode 100644
index 0000000000000..1c75b628dab33
--- /dev/null
+++ b/srcpkgs/phototonic/patches/exiv2-0.28.patch
@@ -0,0 +1,135 @@
+From 923a3fc14de0b779a45696c5f0aef34c74d84f13 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 28 May 2023 18:54:10 +0200
+Subject: [PATCH] Fix build with exiv2-0.28
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ ImageViewer.cpp | 9 +++++++++
+ MetadataCache.cpp | 8 ++++++++
+ Phototonic.cpp | 4 ++++
+ Tags.cpp | 8 ++++++++
+ ThumbsViewer.cpp | 4 ++++
+ 5 files changed, 33 insertions(+)
+
+diff --git a/ImageViewer.cpp b/ImageViewer.cpp
+index 357d223..df3ac43 100644
+--- a/ImageViewer.cpp
++++ b/ImageViewer.cpp
+@@ -945,7 +945,11 @@ void ImageViewer::keyMoveEvent(int direction) {
+ }
+
+ void ImageViewer::saveImage() {
++#if EXIV2_TEST_VERSION(0,28,0)
++ Exiv2::Image::UniquePtr image;
++#else
+ Exiv2::Image::AutoPtr image;
++#endif
+ bool exifError = false;
+
+ if (newImage) {
+@@ -985,8 +989,13 @@ void ImageViewer::saveImage() {
+ }
+
+ void ImageViewer::saveImageAs() {
++#if EXIV2_TEST_VERSION(0,28,0)
++ Exiv2::Image::UniquePtr exifImage;
++ Exiv2::Image::UniquePtr newExifImage;
++#else
+ Exiv2::Image::AutoPtr exifImage;
+ Exiv2::Image::AutoPtr newExifImage;
++#endif
+ bool exifError = false;
+
+ setCursorHiding(false);
+diff --git a/MetadataCache.cpp b/MetadataCache.cpp
+index 524ae74..5ddd4c8 100644
+--- a/MetadataCache.cpp
++++ b/MetadataCache.cpp
+@@ -64,7 +64,11 @@ void MetadataCache::clear() {
+ }
+
+ bool MetadataCache::loadImageMetadata(const QString &imageFullPath) {
++#if EXIV2_TEST_VERSION(0,28,0)
++ Exiv2::Image::UniquePtr exifImage;
++#else
+ Exiv2::Image::AutoPtr exifImage;
++#endif
+ QSet<QString> tags;
+ long orientation = 0;
+
+@@ -78,7 +82,11 @@ bool MetadataCache::loadImageMetadata(const QString &imageFullPath) {
+ try {
+ Exiv2::ExifData &exifData = exifImage->exifData();
+ if (!exifData.empty()) {
++#if EXIV2_TEST_VERSION(0,28,0)
++ orientation = exifData["Exif.Image.Orientation"].value().toUint32();
++#else
+ orientation = exifData["Exif.Image.Orientation"].value().toLong();
++#endif
+ }
+ } catch (Exiv2::Error &error) {
+ qWarning() << "Failed to read Exif metadata";
+diff --git a/Phototonic.cpp b/Phototonic.cpp
+index 6cc95b3..bd5497d 100644
+--- a/Phototonic.cpp
++++ b/Phototonic.cpp
+@@ -3151,7 +3151,11 @@ void Phototonic::removeMetadata() {
+
+ if (ret == MessageBox::Yes) {
+ for (int file = 0; file < fileList.size(); ++file) {
++#if EXIV2_TEST_VERSION(0,28,0)
++ Exiv2::Image::UniquePtr image;
++#else
+ Exiv2::Image::AutoPtr image;
++#endif
+ try {
+ image = Exiv2::ImageFactory::open(fileList[file].toStdString());
+ image->clearMetadata();
+diff --git a/Tags.cpp b/Tags.cpp
+index 84eea16..a62da9d 100644
+--- a/Tags.cpp
++++ b/Tags.cpp
+@@ -136,7 +136,11 @@ void ImageTags::addTag(QString tagName, bool tagChecked) {
+
+ bool ImageTags::writeTagsToImage(QString &imageFileName, QSet<QString> &newTags) {
+ QSet<QString> imageTags;
++#if EXIV2_TEST_VERSION(0,28,0)
++ Exiv2::Image::UniquePtr exifImage;
++#else
+ Exiv2::Image::AutoPtr exifImage;
++#endif
+
+ try {
+ exifImage = Exiv2::ImageFactory::open(imageFileName.toStdString());
+@@ -160,7 +164,11 @@ bool ImageTags::writeTagsToImage(QString &imageFileName, QSet<QString> &newTags)
+ QSetIterator<QString> newTagsIt(newTags);
+ while (newTagsIt.hasNext()) {
+ QString tag = newTagsIt.next();
++#if EXIV2_TEST_VERSION(0,28,0)
++ Exiv2::Value::UniquePtr value = Exiv2::Value::create(Exiv2::string);
++#else
+ Exiv2::Value::AutoPtr value = Exiv2::Value::create(Exiv2::string);
++#endif
+ value->read(tag.toStdString());
+ Exiv2::IptcKey key("Iptc.Application2.Keywords");
+ newIptcData.add(key, value.get());
+diff --git a/ThumbsViewer.cpp b/ThumbsViewer.cpp
+index 77a6189..4a11475 100644
+--- a/ThumbsViewer.cpp
++++ b/ThumbsViewer.cpp
+@@ -210,7 +210,11 @@ void ThumbsViewer::updateImageInfoViewer(QString imageFullPath) {
+ infoView->addEntry(key, val);
+ }
+
++#if EXIV2_TEST_VERSION(0,28,0)
++ Exiv2::Image::UniquePtr exifImage;
++#else
+ Exiv2::Image::AutoPtr exifImage;
++#endif
+ try {
+ exifImage = Exiv2::ImageFactory::open(imageFullPath.toStdString());
+ exifImage->readMetadata();
+--
+2.40.1
+
diff --git a/srcpkgs/phototonic/template b/srcpkgs/phototonic/template
index 77ae8bf6a4406..4af006cb7da41 100644
--- a/srcpkgs/phototonic/template
+++ b/srcpkgs/phototonic/template
@@ -1,7 +1,7 @@
# Template file for 'phototonic'
pkgname=phototonic
version=2.1
-revision=3
+revision=4
build_style=qmake
hostmakedepends="pkg-config qt5-qmake qt5-host-tools"
makedepends="qt5-svg-devel exiv2-devel"
From 9677bc84cd49885c0422c230011c5447ccc542ea Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:40 +0100
Subject: [PATCH 19/22] qimgv: revbump for exiv2-0.28.0.
---
srcpkgs/qimgv/patches/exiv2-0.28.patch | 16 ++++++++++++++++
srcpkgs/qimgv/template | 2 +-
2 files changed, 17 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/qimgv/patches/exiv2-0.28.patch
diff --git a/srcpkgs/qimgv/patches/exiv2-0.28.patch b/srcpkgs/qimgv/patches/exiv2-0.28.patch
new file mode 100644
index 0000000000000..11f37b5ae2be3
--- /dev/null
+++ b/srcpkgs/qimgv/patches/exiv2-0.28.patch
@@ -0,0 +1,16 @@
+Patch-Source: https://git.alpinelinux.org/aports/tree/community/qimgv/exiv2-0.28.patch
+diff --git a/qimgv/sourcecontainers/documentinfo.cpp b/qimgv/sourcecontainers/documentinfo.cpp
+index 98a68f7..c062474 100644
+--- a/qimgv/sourcecontainers/documentinfo.cpp
++++ b/qimgv/sourcecontainers/documentinfo.cpp
+@@ -271,10 +271,6 @@ void DocumentInfo::loadExifTags() {
+ //std::cout << "Caught Exiv2 exception '" << e.what() << "'\n";
+ return;
+ }
+- catch (Exiv2::BasicError<CharType> e) {
+- //std::cout << "Caught BasicError Exiv2 exception '" << e.what() << "'\n";
+- return;
+- }
+ #endif
+ }
+
diff --git a/srcpkgs/qimgv/template b/srcpkgs/qimgv/template
index 7eb30db33992c..dd341dfe1bfce 100644
--- a/srcpkgs/qimgv/template
+++ b/srcpkgs/qimgv/template
@@ -1,7 +1,7 @@
# Template file for 'qimgv'
pkgname=qimgv
version=1.0.2
-revision=2
+revision=3
build_style=cmake
configure_args="$(vopt_if video -DVIDEO_SUPPORT=ON -DVIDEO_SUPPORT=OFF)
$(vopt_if scale -DOPENCV_SUPPORT=ON -DOPENCV_SUPPORT=OFF)
From a0245ef55794b36923a6f915bb108463b65a0d3e Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:40 +0100
Subject: [PATCH 20/22] SIR: revbump for exiv2-0.28.0.
---
srcpkgs/SIR/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/SIR/template b/srcpkgs/SIR/template
index 113077acad354..c6da4c26b6c71 100644
--- a/srcpkgs/SIR/template
+++ b/srcpkgs/SIR/template
@@ -1,7 +1,7 @@
# Template file for 'SIR'
pkgname=SIR
version=3.2.2
-revision=1
+revision=2
build_style=cmake
hostmakedepends="pkg-config"
makedepends="exiv2-devel qt5-svg-devel qt5-tools-devel"
From a0026ff29d58fdd9039a2622b9e3091518531c0f Mon Sep 17 00:00:00 2001
From: Mohammed Anas <triallax@tutanota.com>
Date: Wed, 18 Oct 2023 19:18:40 +0100
Subject: [PATCH 21/22] viewnior: revbump for exiv2-0.28.0.
---
srcpkgs/viewnior/patches/exiv2-0.28.patch | 147 ++++++++++++++++++++++
srcpkgs/viewnior/template | 2 +-
2 files changed, 148 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/viewnior/patches/exiv2-0.28.patch
diff --git a/srcpkgs/viewnior/patches/exiv2-0.28.patch b/srcpkgs/viewnior/patches/exiv2-0.28.patch
new file mode 100644
index 0000000000000..71459dee15768
--- /dev/null
+++ b/srcpkgs/viewnior/patches/exiv2-0.28.patch
@@ -0,0 +1,147 @@
+Patch-Source: https://gitlab.archlinux.org/archlinux/packaging/packages/viewnior/-/blob/f206ce6c22a3ec5f1f9ea1bde4077584f80458dd/exiv2-0.28.patch
+--
+From b6bb81a1b46e911d15bbf9a730972523de177705 Mon Sep 17 00:00:00 2001
+From: tastytea <tastytea@tastytea.de>
+Date: Tue, 16 May 2023 10:54:40 +0200
+Subject: [PATCH 1/2] change exiv2 AutoPtr to unique_ptr
+
+exiv2-0.28.0 removed Exiv2::Image::AutoPtr and added
+Exiv2::Image::UniquePtr instead. since it's a typedef for
+std::unique_ptr<Image>, i'm using that directly instead of adding a
+condition on the exiv2 version.
+---
+ src/uni-exiv2.cpp | 21 +++++++++++----------
+ 1 file changed, 11 insertions(+), 10 deletions(-)
+
+diff --git a/src/uni-exiv2.cpp b/src/uni-exiv2.cpp
+index 0d14b9f..77064c2 100644
+--- a/src/uni-exiv2.cpp
++++ b/src/uni-exiv2.cpp
+@@ -22,12 +22,13 @@
+
+ #include <exiv2/exiv2.hpp>
+ #include <iostream>
++#include <memory>
+
+ #include "uni-exiv2.hpp"
+
+ #define ARRAY_SIZE(array) (sizeof array/sizeof(array[0]))
+
+-static Exiv2::Image::AutoPtr cached_image;
++static std::unique_ptr<Exiv2::Image> cached_image;
+
+ extern "C"
+ void
+@@ -35,8 +36,8 @@ uni_read_exiv2_map(const char *uri, void (*callback)(const char*, const char*, v
+ {
+ Exiv2::LogMsg::setLevel(Exiv2::LogMsg::mute);
+ try {
+- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(uri);
+- if ( image.get() == 0 ) {
++ std::unique_ptr<Exiv2::Image> image = Exiv2::ImageFactory::open(uri);
++ if (image == nullptr) {
+ return;
+ }
+
+@@ -91,14 +92,14 @@ uni_read_exiv2_to_cache(const char *uri)
+ {
+ Exiv2::LogMsg::setLevel(Exiv2::LogMsg::mute);
+
+- if ( cached_image.get() != NULL ) {
++ if (cached_image != nullptr) {
+ cached_image->clearMetadata();
+- cached_image.reset(NULL);
++ cached_image.reset(nullptr);
+ }
+
+ try {
+ cached_image = Exiv2::ImageFactory::open(uri);
+- if ( cached_image.get() == 0 ) {
++ if (cached_image == nullptr) {
+ return 1;
+ }
+
+@@ -116,13 +117,13 @@ uni_write_exiv2_from_cache(const char *uri)
+ {
+ Exiv2::LogMsg::setLevel(Exiv2::LogMsg::mute);
+
+- if ( cached_image.get() == NULL ) {
++ if (cached_image == nullptr) {
+ return 1;
+ }
+
+ try {
+- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(uri);
+- if ( image.get() == 0 ) {
++ std::unique_ptr<Exiv2::Image> image = Exiv2::ImageFactory::open(uri);
++ if (image == nullptr) {
+ return 2;
+ }
+
+@@ -130,7 +131,7 @@ uni_write_exiv2_from_cache(const char *uri)
+ image->writeMetadata();
+
+ cached_image->clearMetadata();
+- cached_image.reset(NULL);
++ cached_image.reset(nullptr);
+
+ return 0;
+ } catch (Exiv2::AnyError& e) {
+
+From 47d0b98cb46526aa8aa035bebcabc14a11fa57ee Mon Sep 17 00:00:00 2001
+From: tastytea <tastytea@tastytea.de>
+Date: Tue, 16 May 2023 11:17:00 +0200
+Subject: [PATCH 2/2] add support for exiv-0.28.0 errors
+
+exiv2-0.28.0 changed Exiv2::AnyError to Exiv2::Error.
+---
+ src/uni-exiv2.cpp | 15 ++++++++++++---
+ 1 file changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/src/uni-exiv2.cpp b/src/uni-exiv2.cpp
+index 77064c2..567a50f 100644
+--- a/src/uni-exiv2.cpp
++++ b/src/uni-exiv2.cpp
+@@ -28,6 +28,15 @@
+
+ #define ARRAY_SIZE(array) (sizeof array/sizeof(array[0]))
+
++#define EXIV_ERROR Exiv2::AnyError
++#ifdef EXIV2_VERSION
++ #ifdef EXIV2_TEST_VERSION
++ #if EXIV2_TEST_VERSION(0,28,0)
++ #define EXIV_ERROR Exiv2::Error
++ #endif
++ #endif
++#endif
++
+ static std::unique_ptr<Exiv2::Image> cached_image;
+
+ extern "C"
+@@ -81,7 +90,7 @@ uni_read_exiv2_map(const char *uri, void (*callback)(const char*, const char*, v
+ }
+ }
+ }
+- } catch (Exiv2::AnyError& e) {
++ } catch (EXIV_ERROR& e) {
+ std::cerr << "Exiv2: '" << e << "'\n";
+ }
+ }
+@@ -104,7 +113,7 @@ uni_read_exiv2_to_cache(const char *uri)
+ }
+
+ cached_image->readMetadata();
+- } catch (Exiv2::AnyError& e) {
++ } catch (EXIV_ERROR& e) {
+ std::cerr << "Exiv2: '" << e << "'\n";
+ }
+
+@@ -134,7 +143,7 @@ uni_write_exiv2_from_cache(const char *uri)
+ cached_image.reset(nullptr);
+
+ return 0;
+- } catch (Exiv2::AnyError& e) {
++ } catch (EXIV_ERROR& e) {
+ std::cerr << "Exiv2: '" << e << "'\n";
+ }
+
diff --git a/srcpkgs/viewnior/template b/srcpkgs/viewnior/template
index ea1e528a8651f..4c73226662ca0 100644
--- a/srcpkgs/viewnior/template
+++ b/srcpkgs/viewnior/template
@@ -1,7 +1,7 @@
# Template file for 'viewnior'
pkgname=viewnior
version=1.8
-revision=1
+revision=2
build_style=meson
hostmakedepends="pkg-config intltool glib-devel gettext-devel"
makedepends="gtk+-devel exiv2-devel"
From d0d0844d750308425919615a2795ae897f9cf193 Mon Sep 17 00:00:00 2001
From: John <me@johnnynator.dev>
Date: Mon, 23 Oct 2023 19:06:34 +0200
Subject: [PATCH 22/22] New package: nufraw-0.43.3
Co-authored-by: Mohammed Anas <triallax@tutanota.com>
---
srcpkgs/nufraw-gimp | 1 +
.../patches/0001-nufraw-glib-2.70.patch | 20 +++++++
srcpkgs/nufraw/patches/exiv-0.28.x.diff | 59 +++++++++++++++++++
srcpkgs/nufraw/template | 47 +++++++++++++++
srcpkgs/removed-packages/template | 8 ++-
srcpkgs/ufraw | 1 +
srcpkgs/ufraw-gimp | 2 +-
.../ufraw/patches/001-no-gimp-remote.patch | 12 ----
srcpkgs/ufraw/patches/002-fix_abs_int.patch | 11 ----
.../ufraw/patches/03_fix-unsigned-char.patch | 14 -----
srcpkgs/ufraw/patches/exiv-0.27.patch | 25 --------
srcpkgs/ufraw/patches/glib-2.68.patch | 30 ----------
srcpkgs/ufraw/patches/iostream.patch | 13 ----
srcpkgs/ufraw/template | 38 ------------
14 files changed, 134 insertions(+), 147 deletions(-)
create mode 120000 srcpkgs/nufraw-gimp
create mode 100644 srcpkgs/nufraw/patches/0001-nufraw-glib-2.70.patch
create mode 100644 srcpkgs/nufraw/patches/exiv-0.28.x.diff
create mode 100644 srcpkgs/nufraw/template
create mode 120000 srcpkgs/ufraw
delete mode 100644 srcpkgs/ufraw/patches/001-no-gimp-remote.patch
delete mode 100644 srcpkgs/ufraw/patches/002-fix_abs_int.patch
delete mode 100644 srcpkgs/ufraw/patches/03_fix-unsigned-char.patch
delete mode 100644 srcpkgs/ufraw/patches/exiv-0.27.patch
delete mode 100644 srcpkgs/ufraw/patches/glib-2.68.patch
delete mode 100644 srcpkgs/ufraw/patches/iostream.patch
delete mode 100644 srcpkgs/ufraw/template
diff --git a/srcpkgs/nufraw-gimp b/srcpkgs/nufraw-gimp
new file mode 120000
index 0000000000000..0bd1459b2a16f
--- /dev/null
+++ b/srcpkgs/nufraw-gimp
@@ -0,0 +1 @@
+nufraw
\ No newline at end of file
diff --git a/srcpkgs/nufraw/patches/0001-nufraw-glib-2.70.patch b/srcpkgs/nufraw/patches/0001-nufraw-glib-2.70.patch
new file mode 100644
index 0000000000000..41f10bfbafa1f
--- /dev/null
+++ b/srcpkgs/nufraw/patches/0001-nufraw-glib-2.70.patch
@@ -0,0 +1,20 @@
+diff -ru nufraw/uf_glib.h nufraw/uf_glib.h
+--- nufraw/uf_glib.h 2022-02-23 09:03:44.700472919 +0100
++++ nufraw/uf_glib.h 2022-02-23 09:04:50.260308805 +0100
+@@ -13,13 +13,13 @@
+ #ifndef _UF_GLIB_H
+ #define _UF_GLIB_H
+
++#include <glib.h>
++#include <glib/gstdio.h>
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+
+-#include <glib.h>
+-#include <glib/gstdio.h>
+-
+ // g_win32_locale_filename_from_utf8 is needed only on win32
+ #ifdef _WIN32
+ #define uf_win32_locale_filename_from_utf8(__some_string__) \
diff --git a/srcpkgs/nufraw/patches/exiv-0.28.x.diff b/srcpkgs/nufraw/patches/exiv-0.28.x.diff
new file mode 100644
index 0000000000000..6c23359bf706c
--- /dev/null
+++ b/srcpkgs/nufraw/patches/exiv-0.28.x.diff
@@ -0,0 +1,59 @@
+Patch taken from AUR package: https://aur.archlinux.org/cgit/aur.git/tree/exiv2-error.patch?h=nufraw&id=29e467f2c297fcd0f36548642d6d2cab6428d08f
+diff --git a/nufraw_exiv2.cc b/nufraw_exiv2.cc
+index 2de4cc3..45aea87 100644
+--- a/nufraw_exiv2.cc
++++ b/nufraw_exiv2.cc
+@@ -54,7 +54,7 @@ extern "C" int nufraw_exif_read_input(nufraw_data *uf)
+ uf->inputExifBuf = NULL;
+ uf->inputExifBufLen = 0;
+
+- Exiv2::Image::AutoPtr image;
++ Exiv2::Image::UniquePtr image;
+ if (uf->unzippedBuf != NULL) {
+ image = Exiv2::ImageFactory::open(
+ (const Exiv2::byte*)uf->unzippedBuf, uf->unzippedBufLen);
+@@ -135,7 +135,7 @@ extern "C" int nufraw_exif_read_input(nufraw_data *uf)
+ nufraw_message(NUFRAW_SET_LOG, "%s\n", stderror.str().c_str());
+
+ return NUFRAW_SUCCESS;
+- } catch (Exiv2::AnyError& e) {
++ } catch (Exiv2::Error& e) {
+ std::cerr.rdbuf(savecerr);
+ std::string s(e.what());
+ nufraw_message(NUFRAW_SET_WARNING, "%s\n", s.c_str());
+@@ -156,7 +156,7 @@ static Exiv2::ExifData nufraw_prepare_exifdata(nufraw_data *uf)
+ if ((pos = exifData.findKey(Exiv2::ExifKey("Exif.Image.Orientation")))
+ != exifData.end()) {
+ nufraw_message(NUFRAW_SET_LOG, "Resetting %s from '%d' to '1'\n",
+- pos->key().c_str(), pos->value().toLong());
++ pos->key().c_str(), pos->value().toInt64());
+ pos->setValue("1"); /* 1 = Normal orientation */
+ }
+ }
+@@ -327,7 +327,7 @@ extern "C" int nufraw_exif_prepare_output(nufraw_data *uf)
+ nufraw_message(NUFRAW_SET_LOG, "%s\n", stderror.str().c_str());
+
+ return NUFRAW_SUCCESS;
+- } catch (Exiv2::AnyError& e) {
++ } catch (Exiv2::Error& e) {
+ std::cerr.rdbuf(savecerr);
+ std::string s(e.what());
+ nufraw_message(NUFRAW_SET_WARNING, "%s\n", s.c_str());
+@@ -347,7 +347,7 @@ extern "C" int nufraw_exif_write(nufraw_data *uf)
+
+ char *filename =
+ uf_win32_locale_filename_from_utf8(uf->conf->outputFilename);
+- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(filename);
++ Exiv2::Image::UniquePtr image = Exiv2::ImageFactory::open(filename);
+ uf_win32_locale_filename_free(filename);
+ assert(image.get() != 0);
+
+@@ -367,7 +367,7 @@ extern "C" int nufraw_exif_write(nufraw_data *uf)
+ nufraw_message(NUFRAW_SET_LOG, "%s\n", stderror.str().c_str());
+
+ return NUFRAW_SUCCESS;
+- } catch (Exiv2::AnyError& e) {
++ } catch (Exiv2::Error& e) {
+ std::cerr.rdbuf(savecerr);
+ std::string s(e.what());
+ nufraw_message(NUFRAW_SET_WARNING, "%s\n", s.c_str());
diff --git a/srcpkgs/nufraw/template b/srcpkgs/nufraw/template
new file mode 100644
index 0000000000000..3e5d7d190b335
--- /dev/null
+++ b/srcpkgs/nufraw/template
@@ -0,0 +1,47 @@
+# Template file for 'nufraw'
+pkgname=nufraw
+version=0.43.3
+revision=1
+_ver="${version%.*}-${version##*.}"
+build_style=gnu-configure
+configure_args="--enable-contrast --enable-mime --enable-openmp --with-gimp
+ --enable-extras"
+hostmakedepends="pkg-config automake libtool"
+makedepends="exiv2-devel gimp-devel glib-devel gtkimageview-devel lcms2-devel lensfun-devel
+ jasper-devel"
+depends="desktop-file-utils"
+short_desc="Utility to read and manipulate raw images from digital cameras"
+maintainer="John <me@johnnynator.dev>"
+license="GPL-2.0-or-later"
+homepage="https://sourceforge.net/projects/nufraw/"
+distfiles="${SOURCEFORGE_SITE}/nufraw/nufraw-${_ver}.tar.gz"
+checksum=2c7dcc1590993ec267b3112562b2433010d6f94f6acc6506c76aa29cf8c6c32c
+
+pre_configure() {
+ autoreconf -fi
+}
+
+pre_build() {
+ mv nufraw.desktop{.desktop,}
+ chmod +x generate_schemas.sh
+}
+
+nufraw-gimp_package() {
+ depends="${sourcepkg}>=${version}_${revision}"
+ short_desc+=" - gimp plugin"
+ pkg_install() {
+ vmove usr/lib/gimp
+ }
+}
+
+ufraw_package() {
+ depends="${sourcepkg}>=${version}_${revision}"
+ build_style=meta
+ short_desc+=" (transitional dummy package)"
+}
+
+ufraw-gimp_package() {
+ depends="nufraw-gimp>=${version}_${revision}"
+ build_style=meta
+ short_desc+=" - gimp plugin (transitional dummy package)"
+}
diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index abedf26f739b6..f3d81a8afe04c 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,6 +1,6 @@
# Template file for 'removed-packages'
pkgname=removed-packages
-version=0.1.20231019
+version=0.1.20231101
revision=1
build_style=meta
short_desc="Uninstalls packages removed from repository"
@@ -590,8 +590,8 @@ replaces="
python3-Flask-Assets<=0.12_9
python3-Flask-Mail<=0.9.1_5
python3-Flask-OAuthlib<=0.9.6_4
- python3-Flask-Script<=2.0.6_7
python3-Flask-SQLAlchemy<=2.5.1_4
+ python3-Flask-Script<=2.0.6_7
python3-Flask-User<=1.0.2.2_6
python3-SPARQLWrapper<=1.8.4_4
python3-aiohttp-cors2<=0.7.0_3
@@ -642,8 +642,8 @@ replaces="
raul-devel<=0.8.0_6
raul<=0.8.0_6
redkite<=1.3.1_1
- rem<=2.10.0_1
rem-devel<=2.10.0_1
+ rem<=2.10.0_1
reminiscence<=0.4.6_1
rkt-stage1-coreos<=1.30.0_3
rkt-stage1-fly<=1.30.0_3
@@ -675,6 +675,8 @@ replaces="
traverso<=0.49.6_2
ttyload-git<=20141117_4
tuxc<=1.1_3
+ ufraw-gimp<=0.22_5
+ ufraw<=0.22_5
unicorn-python<=1.0.2_2
upwork<=5.6.10.0_1
urlmatch-git<=20141116_2
diff --git a/srcpkgs/ufraw b/srcpkgs/ufraw
new file mode 120000
index 0000000000000..0bd1459b2a16f
--- /dev/null
+++ b/srcpkgs/ufraw
@@ -0,0 +1 @@
+nufraw
\ No newline at end of file
diff --git a/srcpkgs/ufraw-gimp b/srcpkgs/ufraw-gimp
index 967dc902dd02b..0bd1459b2a16f 120000
--- a/srcpkgs/ufraw-gimp
+++ b/srcpkgs/ufraw-gimp
@@ -1 +1 @@
-ufraw
\ No newline at end of file
+nufraw
\ No newline at end of file
diff --git a/srcpkgs/ufraw/patches/001-no-gimp-remote.patch b/srcpkgs/ufraw/patches/001-no-gimp-remote.patch
deleted file mode 100644
index ca4f4beb6240f..0000000000000
--- a/srcpkgs/ufraw/patches/001-no-gimp-remote.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Don't use gimp-remote since gimp 2.4 already includes gimp-remote functionality
---- a/ufraw_conf.c
-+++ b/ufraw_conf.c
-@@ -137,7 +137,7 @@
- #elif HAVE_GIMP_2_4
- "gimp", /* remoteGimpCommand */
- #else
-- "gimp-remote", /* remoteGimpCommand */
-+ "gimp", /* remoteGimpCommand */
- #endif
-
- /* EXIF data */
diff --git a/srcpkgs/ufraw/patches/002-fix_abs_int.patch b/srcpkgs/ufraw/patches/002-fix_abs_int.patch
deleted file mode 100644
index 6fc552769c9f8..0000000000000
--- a/srcpkgs/ufraw/patches/002-fix_abs_int.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/dcraw.cc 2015-06-16 05:58:38.000000000 +0200
-+++ b/dcraw.cc 2018-02-04 14:46:54.489951076 +0100
-@@ -9242,7 +9242,7 @@
- if (make[0] == 'O') {
- i = find_green (12, 32, 1188864, 3576832);
- c = find_green (12, 32, 2383920, 2387016);
-- if (abs(i) < abs(c)) {
-+ if (abs((int)i) < abs((int)c)) {
- SWAP(i,c);
- load_flags = 24;
- }
diff --git a/srcpkgs/ufraw/patches/03_fix-unsigned-char.patch b/srcpkgs/ufraw/patches/03_fix-unsigned-char.patch
deleted file mode 100644
index 8690f87ca7d59..0000000000000
--- a/srcpkgs/ufraw/patches/03_fix-unsigned-char.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Source: written by John Paul Adrian Glaubitz for Debian
-Upstream: https://sourceforge.net/p/ufraw/bugs/417
-Reason: fixes a compilation failure on arm architectures
---- a/dcraw.cc
-+++ b/dcraw.cc
-@@ -2285,7 +2285,7 @@ void CLASS quicktake_100_load_raw()
-
- void CLASS kodak_radc_load_raw()
- {
-- static const char src[] = {
-+ static const signed char src[] = {
- 1,1, 2,3, 3,4, 4,2, 5,7, 6,5, 7,6, 7,8,
- 1,0, 2,1, 3,3, 4,4, 5,2, 6,7, 7,6, 8,5, 8,8,
- 2,1, 2,3, 3,0, 3,2, 3,4, 4,6, 5,5, 6,7, 6,8,
diff --git a/srcpkgs/ufraw/patches/exiv-0.27.patch b/srcpkgs/ufraw/patches/exiv-0.27.patch
deleted file mode 100644
index b5b4140fff8ed..0000000000000
--- a/srcpkgs/ufraw/patches/exiv-0.27.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/ufraw_exiv2.cc 2015-06-16 05:58:38.000000000 +0200
-+++ b/ufraw_exiv2.cc 2018-12-29 22:51:23.291894430 +0100
-@@ -15,9 +15,7 @@
- #include "ufraw.h"
-
- #ifdef HAVE_EXIV2
--#include <exiv2/image.hpp>
--#include <exiv2/easyaccess.hpp>
--#include <exiv2/exif.hpp>
-+#include <exiv2/exiv2.hpp>
- #include <sstream>
- #include <cassert>
-
-@@ -67,7 +65,11 @@
- if (exifData.empty()) {
- std::string error(uf->filename);
- error += ": No Exif data found in the file";
-+#if EXIV2_TEST_VERSION(0,27,0)
-+ throw Exiv2::Error(Exiv2::kerErrorMessage, error);
-+#else
- throw Exiv2::Error(1, error);
-+#endif
- }
-
- /* List of tag names taken from exiv2's printSummary() in actions.cpp */
diff --git a/srcpkgs/ufraw/patches/glib-2.68.patch b/srcpkgs/ufraw/patches/glib-2.68.patch
deleted file mode 100644
index 5b61468f118aa..0000000000000
--- a/srcpkgs/ufraw/patches/glib-2.68.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From c56f8be3caf1cf3d9a5c80597bdbaf1325faacc0 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= <sergio@serjux.com>
-Date: Tue, 13 Apr 2021 23:45:39 +0100
-Subject: [PATCH] Fix build against glib-2.68 fixes #10
-
----
- uf_glib.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/uf_glib.h b/uf_glib.h
-index 21c10b19..56cd6971 100644
---- a/uf_glib.h
-+++ b/uf_glib.h
-@@ -13,13 +13,13 @@
- #ifndef _UF_GLIB_H
- #define _UF_GLIB_H
-
-+#include <glib.h>
-+#include <glib/gstdio.h>
-+
- #ifdef __cplusplus
- extern "C" {
- #endif
-
--#include <glib.h>
--#include <glib/gstdio.h>
--
- // g_win32_locale_filename_from_utf8 is needed only on win32
- #ifdef _WIN32
- #define uf_win32_locale_filename_from_utf8(__some_string__) \
diff --git a/srcpkgs/ufraw/patches/iostream.patch b/srcpkgs/ufraw/patches/iostream.patch
deleted file mode 100644
index 6d15869f63db8..0000000000000
--- a/srcpkgs/ufraw/patches/iostream.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-ufraw_exiv2.cc:343:10: note: 'std::cerr' is defined in header '<iostream>'
-ufraw_exiv2.cc:365:14: error: 'cerr' is not a member of 'std'
-
---- a/ufraw_exiv2.cc
-+++ b/ufraw_exiv2.cc
-@@ -17,6 +17,7 @@
- #ifdef HAVE_EXIV2
- #include <exiv2/exiv2.hpp>
- #include <sstream>
-+#include <iostream>
- #include <cassert>
-
- /*
diff --git a/srcpkgs/ufraw/template b/srcpkgs/ufraw/template
deleted file mode 100644
index ceddcacacefb2..0000000000000
--- a/srcpkgs/ufraw/template
+++ /dev/null
@@ -1,38 +0,0 @@
-# Template file for 'ufraw'
-pkgname=ufraw
-version=0.22
-revision=5
-build_style=gnu-configure
-configure_args="--enable-contrast --enable-mime --enable-openmp --with-gimp
- $(vopt_enable extras)"
-hostmakedepends="pkg-config dcraw gettext"
-makedepends="exiv2-devel gimp-devel glib-devel gtkimageview-devel lcms2-devel lensfun-devel
- jasper-devel"
-depends="desktop-file-utils"
-short_desc="Utility to read and manipulate raw images from digital cameras"
-maintainer="John <me@johnnynator.dev>"
-license="GPL-2.0-or-later"
-homepage="http://ufraw.sourceforge.net/"
-distfiles="${SOURCEFORGE_SITE}/ufraw/ufraw/ufraw-${version}/ufraw-${version}.tar.gz"
-checksum=f7abd28ce587db2a74b4c54149bd8a2523a7ddc09bedf4f923246ff0ae09a25e
-
-build_options="extras"
-
-post_patch() {
- vsed -e 's/default(none)//g' \
- -i dcraw_indi.c \
- -i dcraw_api.cc \
- -i ufraw_ufraw.c \
- -i ufraw_developer.c
- vsed -i -e '/DATADIRNAME=/s/=.*/=share/' configure
- vsed -i -e "s,^localedir =.*,localedir = /usr/share/locale," \
- po/Makefile.in.in
-}
-
-ufraw-gimp_package() {
- depends="${sourcepkg}>=${version}_${revision}"
- short_desc+=" - gimp plugin"
- pkg_install() {
- vmove usr/lib/gimp
- }
-}
next prev parent reply other threads:[~2023-11-01 17:26 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-23 0:10 [PR PATCH] " mhmdanas
2023-10-23 0:20 ` [PR PATCH] [Updated] " mhmdanas
2023-11-01 17:23 ` mhmdanas
2023-11-01 17:26 ` mhmdanas [this message]
2023-11-01 18:11 ` mhmdanas
2023-11-02 19:42 ` biopsin
2023-11-03 20:00 ` [PR PATCH] [Updated] " mhmdanas
2023-11-03 20:18 ` mhmdanas
2023-11-04 21:57 ` [PR PATCH] [Updated] " mhmdanas
2023-11-06 20:17 ` mhmdanas
2023-11-06 20:18 ` mhmdanas
2023-11-06 20:19 ` mhmdanas
2023-11-06 20:20 ` mhmdanas
2023-11-12 13:04 ` biopsin
2023-11-12 15:01 ` mhmdanas
2023-11-12 22:54 ` [PR PATCH] [Updated] " mhmdanas
2023-11-12 22:55 ` exiv2: update to 0.28.1 mhmdanas
2023-11-13 0:00 ` [PR PATCH] [Updated] " mhmdanas
2023-11-15 17:40 ` mhmdanas
2023-11-15 17:57 ` mhmdanas
2023-11-16 15:12 ` [PR REVIEW] " sh1r4s3
2023-11-16 15:56 ` mhmdanas
2023-11-16 16:43 ` sh1r4s3
2023-11-16 21:50 ` [PR PATCH] [Updated] " mhmdanas
2023-11-16 21:51 ` [PR REVIEW] " mhmdanas
2023-11-18 15:57 ` [PR PATCH] [Updated] " mhmdanas
2023-11-18 21:41 ` [PR PATCH] [Merged]: " classabbyamp
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231101172622.tojB7GJCZRiUOVhOv8-geY3RGd3f5sFmPEG6JZ-XKaQ@z \
--to=mhmdanas@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).