git: 9b76bc3d82c5 - main - net-im/kaidan: Update to 0.11.0

From: Jason E. Hale <jhale_at_FreeBSD.org>
Date: Sun, 16 Feb 2025 10:52:59 UTC
The branch main has been updated by jhale:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9b76bc3d82c55628723de4df49d5e44c7ea2eccd

commit 9b76bc3d82c55628723de4df49d5e44c7ea2eccd
Author:     Jason E. Hale <jhale@FreeBSD.org>
AuthorDate: 2025-02-16 10:47:20 +0000
Commit:     Jason E. Hale <jhale@FreeBSD.org>
CommitDate: 2025-02-16 10:52:52 +0000

    net-im/kaidan: Update to 0.11.0
    
    Kaidan now only builds with Qt6/KF6 with this release.
---
 net-im/kaidan/Makefile                             | 28 +++++++++++-----------
 net-im/kaidan/distinfo                             |  6 ++---
 .../patch-src_singleapp_singleapplication.cpp      | 28 ++++++++++++++++++++++
 net-im/kaidan/pkg-plist                            |  3 ++-
 4 files changed, 47 insertions(+), 18 deletions(-)

diff --git a/net-im/kaidan/Makefile b/net-im/kaidan/Makefile
index 8712e99982a6..73bedb018193 100644
--- a/net-im/kaidan/Makefile
+++ b/net-im/kaidan/Makefile
@@ -1,6 +1,5 @@
 PORTNAME=	kaidan
-DISTVERSION=	0.10.1
-PORTREVISION=	1
+DISTVERSION=	0.11.0
 CATEGORIES=	net-im kde
 MASTER_SITES=	KDE/unstable/${PORTNAME}/${DISTVERSION}
 
@@ -11,20 +10,21 @@ WWW=		https://apps.kde.org/kaidan/
 LICENSE=	GPLv3+
 LICENSE_FILE=	${WRKSRC}/LICENSES/GPL-3.0-or-later.txt
 
-BUILD_DEPENDS=	kquickimageeditor-qt5>0:graphics/kquickimageeditor@qt5
-LIB_DEPENDS=	libQXmppQt5.so:net-im/qxmpp@qt5 \
-		libZXing.so:textproc/zxing-cpp
-RUN_DEPENDS=	kquickimageeditor-qt5>0:graphics/kquickimageeditor@qt5
+BUILD_DEPENDS=	kquickimageeditor-qt6>0:graphics/kquickimageeditor@qt6
+LIB_DEPENDS=	libQXmppQt6.so:net-im/qxmpp \
+		libicuuc.so:devel/icu \
+		libxkbcommon.so:x11/libxkbcommon
+RUN_DEPENDS=	kquickimageeditor-qt6>0:graphics/kquickimageeditor@qt6
 
-USES=		cmake compiler:c++11-lang desktop-file-utils kde:5 pkgconfig \
-		qt:5 tar:xz xorg
-USE_KDE=	completion config coreaddons jobwidgets kio kirigami-addons \
-		kirigami2 notifications qqc2-desktop-style service solid \
-		widgetsaddons windowsystem \
+USES=		cmake compiler:c++23-lang desktop-file-utils gl kde:6 \
+		pkgconfig qt:6 tar:xz xorg
+USE_GL=		gl opengl # GLX
+USE_KDE=	completion config coreaddons crash jobwidgets kio \
+		kirigami-addons kirigami2 notifications prison \
+		qqc2-desktop-style service solid widgetsaddons \
 		ecm:build
-USE_QT=		concurrent core dbus declarative gui location multimedia network \
-		quickcontrols2 sql svg widgets xml \
-		buildtools:build qmake:build
+USE_QT=		base declarative location multimedia positioning svg \
+		tools:build
 USE_XORG=	x11
 
 .include <bsd.port.mk>
diff --git a/net-im/kaidan/distinfo b/net-im/kaidan/distinfo
index 51ef33b77466..36aaf231bbb8 100644
--- a/net-im/kaidan/distinfo
+++ b/net-im/kaidan/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1737528542
-SHA256 (kaidan-0.10.1.tar.xz) = d28ec1cb9bdd44f4b73c23c651b1adfa233981f6d7b1c760e8a7a72c1cdc6f16
-SIZE (kaidan-0.10.1.tar.xz) = 3064212
+TIMESTAMP = 1739685884
+SHA256 (kaidan-0.11.0.tar.xz) = 3feef43d66ff5c30ae81894a7343da1856ca84b0177b8a07922f193ca33776a2
+SIZE (kaidan-0.11.0.tar.xz) = 874168
diff --git a/net-im/kaidan/files/patch-src_singleapp_singleapplication.cpp b/net-im/kaidan/files/patch-src_singleapp_singleapplication.cpp
new file mode 100644
index 000000000000..9cde19b22775
--- /dev/null
+++ b/net-im/kaidan/files/patch-src_singleapp_singleapplication.cpp
@@ -0,0 +1,28 @@
+Using the default PosixRealtime semaphores causes the application to exit
+upon start. SingleApplication is third party to kaidan. This needs more
+investigation.
+
+SingleApplication: Unable to create block.
+SingleApplication:  QSharedMemory::UnknownError "QSharedMemoryPrivate::initKey:
+unable to set key on lock (QSystemSemaphore::handle: unknown error: Invalid argument)"
+
+--- src/singleapp/singleapplication.cpp.orig	2025-02-15 10:18:43 UTC
++++ src/singleapp/singleapplication.cpp
+@@ -69,7 +69,7 @@ SingleApplication::SingleApplication(int &argc, char *
+     // By explicitly attaching it and then deleting it we make sure that the
+     // memory is deleted even after the process has crashed on Unix.
+ #if QT_VERSION >= QT_VERSION_CHECK(6, 6, 0)
+-    d->memory = new QSharedMemory(QNativeIpcKey(d->blockServerName));
++    d->memory = new QSharedMemory(QNativeIpcKey(d->blockServerName, QNativeIpcKey::Type::SystemV));
+ #else
+     d->memory = new QSharedMemory(d->blockServerName);
+ #endif
+@@ -78,7 +78,7 @@ SingleApplication::SingleApplication(int &argc, char *
+ #endif
+     // Guarantee thread safe behaviour with a shared memory block.
+ #if QT_VERSION >= QT_VERSION_CHECK(6, 6, 0)
+-    d->memory = new QSharedMemory(QNativeIpcKey(d->blockServerName));
++    d->memory = new QSharedMemory(QNativeIpcKey(d->blockServerName, QNativeIpcKey::Type::SystemV));
+ #else
+     d->memory = new QSharedMemory(d->blockServerName);
+ #endif
diff --git a/net-im/kaidan/pkg-plist b/net-im/kaidan/pkg-plist
index ea1e909864be..19c5e3c07812 100644
--- a/net-im/kaidan/pkg-plist
+++ b/net-im/kaidan/pkg-plist
@@ -26,7 +26,7 @@ share/icons/hicolor/scalable/apps/kaidan.svg
 %%DATADIR%%/providers-completion.json.license
 %%DATADIR%%/providers.json
 %%DATADIR%%/providers.json.license
-share/knotifications5/kaidan.notifyrc
+share/knotifications6/kaidan.notifyrc
 share/locale/ar/LC_MESSAGES/kaidan_qt.qm
 share/locale/ca/LC_MESSAGES/kaidan_qt.qm
 share/locale/ca@valencia/LC_MESSAGES/kaidan_qt.qm
@@ -66,3 +66,4 @@ share/locale/uk/LC_MESSAGES/kaidan_qt.qm
 share/locale/zh_CN/LC_MESSAGES/kaidan_qt.qm
 share/locale/zh_TW/LC_MESSAGES/kaidan_qt.qm
 share/metainfo/im.kaidan.kaidan.appdata.xml
+share/qlogging-categories6/kaidan.categories