commit:     eb8ae2842677139e40f7aae643f408bd60e67972
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Sun Jan  5 23:56:08 2025 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Jan  7 22:33:58 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eb8ae284

media-gfx/photoqt: add 4.7

qt5 -> qt6

useflags :
* add barcode with zxing-cpp
* add chromecast with pychromecast (python-single-r1)
* add geolocation with qtlocation/qtpositioning (RDEPEND)
* add lcms
* add vips

imagemagick/graphicsmagick :
* set includedir for graphicsmagick because cmake fails to do it

deps :
* unrar deleted as photoqt can read rar with libarchive.
* add virtual/pkgconfig in BDEPEND

QA :
* SRC_URI : fix redirect

Closes: https://bugs.gentoo.org/934776
Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Closes: https://github.com/gentoo/gentoo/pull/40000
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-gfx/photoqt/Manifest           |   1 +
 media-gfx/photoqt/metadata.xml       |   3 +
 media-gfx/photoqt/photoqt-4.7.ebuild | 103 +++++++++++++++++++++++++++++++++++
 3 files changed, 107 insertions(+)

diff --git a/media-gfx/photoqt/Manifest b/media-gfx/photoqt/Manifest
index 4e6d861d95f5..758f57eae4a9 100644
--- a/media-gfx/photoqt/Manifest
+++ b/media-gfx/photoqt/Manifest
@@ -1 +1,2 @@
 DIST photoqt-3.2.tar.gz 965895 BLAKE2B 
ae1e159401b24a1bede344e4d398dbd6c2ae13fd467a4eac9ef15ea2d15933dc1756325a5a4f305a5f447bfd1a9e2d636e0b9367d0201ca356393c033c4f2f0f
 SHA512 
ab7030d0ed6edf79373b1a99b1b8469cd567f04e5c233a87496084424603d8c241f7b473c22d323f4df8480d3f74918a987d2d590ec5026f1b7ca2c92b5c6bba
+DIST photoqt-4.7.tar.gz 3612004 BLAKE2B 
f4bfd07103e614e3b128668ee7b1dc4767d5c8bd6af4164315e75d537e4054ee2e13fd2f2d8f044669c80bfa31d0651a5a71f07d0947c6b8f1a3088d55123407
 SHA512 
41274b52ece3a905de7c274183b658b40fdc72ee291b008afdfb2c7e8bb49308ac54c66760397359838bcd9470aa0140bd769137d5a72cd1c11bc4b1a7accb66

diff --git a/media-gfx/photoqt/metadata.xml b/media-gfx/photoqt/metadata.xml
index 1b717b781d4d..bbb50e225e0a 100644
--- a/media-gfx/photoqt/metadata.xml
+++ b/media-gfx/photoqt/metadata.xml
@@ -3,9 +3,12 @@
 <pkgmetadata>
        <!-- maintainer-needed -->
        <use>
+               <flag name="barcode">Support for QR and barcodes detection 
using <pkg>media-libs/zxing-cpp</pkg></flag>
+               <flag name="chromecast">Enable Chromecast support using 
<pkg>dev-python/pychromecast</pkg></flag>
                <flag name="devil">Support additional image formats using 
<pkg>media-libs/devil</pkg></flag>
                <flag name="freeimage">Support additional image formats using 
<pkg>media-libs/freeimage</pkg></flag>
                <flag name="mpv">Support for video files using 
<pkg>media-video/mpv</pkg></flag>
+               <flag name="vips">Use <pkg>media-libs/vips</pkg></flag>
        </use>
        <upstream>
                <remote-id type="gitlab">lspies/photoqt</remote-id>

diff --git a/media-gfx/photoqt/photoqt-4.7.ebuild 
b/media-gfx/photoqt/photoqt-4.7.ebuild
new file mode 100644
index 000000000000..3b4f4b7f0d8c
--- /dev/null
+++ b/media-gfx/photoqt/photoqt-4.7.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+ECM_KDEINSTALLDIRS=false
+KFMIN=6.5.0
+inherit ecm optfeature python-single-r1 toolchain-funcs
+
+DESCRIPTION="Simple but powerful Qt-based image viewer"
+HOMEPAGE="https://photoqt.org/";
+SRC_URI="https://photoqt.org/downloads/source/${P}.tar.gz";
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="barcode chromecast devil exif freeimage geolocation graphicsmagick 
+imagemagick lcms mpv pdf raw vips"
+REQUIRED_USE="chromecast? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEPEND="
+       app-arch/libarchive:=
+       dev-libs/pugixml
+       dev-qt/qtbase:6[dbus,concurrent,gui,network,sql,widgets,xml]
+       dev-qt/qtdeclarative:6
+       dev-qt/qtimageformats:6
+       dev-qt/qtmultimedia:6[qml]
+       dev-qt/qtsvg:6
+       barcode? ( media-libs/zxing-cpp:= )
+       chromecast? (
+               ${PYTHON_DEPS}
+               $(python_gen_cond_dep 'dev-python/pychromecast')
+       )
+       devil? ( media-libs/devil )
+       exif? ( media-gfx/exiv2:=[bmff] )
+       freeimage? ( media-libs/freeimage )
+       imagemagick? (
+               !graphicsmagick? ( media-gfx/imagemagick:=[cxx] )
+               graphicsmagick? ( media-gfx/graphicsmagick:=[cxx] )
+       )
+       lcms? ( media-libs/lcms:2 )
+       mpv? ( media-video/mpv:=[libmpv] )
+       pdf? ( app-text/poppler[qt6] )
+       raw? ( media-libs/libraw:= )
+       vips? (
+               dev-libs/glib:2
+               media-libs/vips:=
+       )
+"
+RDEPEND="
+       ${COMMON_DEPEND}
+       geolocation? (
+               dev-qt/qtlocation:6
+               dev-qt/qtpositioning:6[qml]
+       )
+"
+DEPEND="
+       ${COMMON_DEPEND}
+       vips? ( x11-base/xorg-proto )
+"
+BDEPEND="
+       dev-qt/qttools:6[linguist]
+       virtual/pkgconfig
+       chromecast? ( ${PYTHON_DEPS} )
+"
+
+pkg_setup() {
+       use chromecast && python-single-r1_pkg_setup
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DCHROMECAST=$(usex chromecast)
+               -DDEVIL=$(usex devil)
+               -DEXIV2=$(usex exif)
+               -DEXIV2_ENABLE_BMFF=$(usex exif)
+               -DFREEIMAGE=$(usex freeimage)
+               -DGRAPHICSMAGICK=$(usex graphicsmagick $(usex imagemagick))
+               -DIMAGEMAGICK=$(usex imagemagick $(usex !graphicsmagick))
+               -DLCMS2=$(usex lcms)
+               -DLOCATION=$(usex geolocation)
+               -DVIDEO_MPV=$(usex mpv)
+               -DPOPPLER=$(usex pdf)
+               -DRAW=$(usex raw)
+               -DRESVG=OFF # qt5 only
+               -DLIBVIPS=$(usex vips)
+               -DZXING=$(usex barcode)
+       )
+
+       if use imagemagick && use graphicsmagick; then
+               mycmakeargs+=(
+                       -DMAGICK++_INCLUDE_DIR=$($(tc-getPKG_CONFIG) 
--variable=includedir GraphicsMagick++)
+               )
+       fi
+
+       ecm_src_configure
+}
+
+pkg_postinst() {
+       optfeature "additional image formats like AVIF, EPS, HEIF/HEIC, PSD, 
etc." kde-frameworks/kimageformats
+       ecm_pkg_postinst
+}

Reply via email to