From 217815b0af27079f6b74cc7e5ca3ea05e53b0b15 Mon Sep 17 00:00:00 2001 From: "Jason E. Hale" Date: Tue, 24 Jun 2025 07:02:06 -0400 Subject: [PATCH] security/gpgme: Update to 2.0.0 Upstream has split most of the bindings out into separate projects with this release, so the child ports that were previously providing various bindings are now autonomous and have new origins. The python bindings should have been called py-gpg for many years now, since 'gpg' is the actual module name, so this also corrects that issue. security/gpgme-cpp -> security/gpgmepp security/gpgme-qt -> security/qgpgme security/py-gpgme -> security/py-gpg gpgmepp and qgpgme have been converted to CMake. py-gpg is now a "fun" autotools and FreeBSD ports system hybrid. Gpgme, itself, still uses autotools, but with much less parenting (patching) to do for its emancipated children. Adjust several ports to fix API incompatibility with upstream patches and with some of my own. Adjust all consumers to use the new port origins of the former child ports. https://dev.gnupg.org/T7673 --- MOVED | 4 + deskutils/akonadi-import-wizard/Makefile | 4 +- deskutils/akonadiconsole/Makefile | 4 +- deskutils/akregator/Makefile | 4 +- deskutils/grantlee-editor/Makefile | 4 +- deskutils/kaddressbook/Makefile | 4 +- deskutils/kdepim-addons/Makefile | 4 +- deskutils/kmail-account-wizard/Makefile | 4 +- deskutils/kmail/Makefile | 4 +- deskutils/mbox-importer/Makefile | 4 +- deskutils/pim-data-exporter/Makefile | 4 +- editors/libreoffice/Makefile | 2 +- finance/kmymoney/Makefile | 2 +- finance/ledger/Makefile | 2 +- graphics/poppler/Makefile | 2 +- mail/py-alot/Makefile | 2 +- misc/librepo/Makefile | 2 +- net-im/gajim/Makefile | 2 +- net-im/profanity/files/patch-src_pgp_gpg.c | 15 +++ net/akonadi-contacts/Makefile | 4 +- net/kget/Makefile | 8 +- net/kget/distinfo | 6 +- net/mailcommon/Makefile | 4 +- net/messagelib/Makefile | 4 +- net/samba416/Makefile | 2 +- net/samba419/Makefile | 2 +- net/samba420/Makefile | 2 +- security/Makefile | 6 +- security/gpa/files/patch-src_gpacontext.c | 70 ++++++++++++ security/gpa/files/patch-src_gpacontext.h | 13 +++ security/gpgme-cpp/Makefile | 11 -- security/gpgme-qt/Makefile | 13 --- security/gpgme/Makefile | 105 +----------------- security/gpgme/distinfo | 6 +- security/gpgme/files/patch-configure | 23 +--- .../gpgme/files/patch-lang_python_Makefile.in | 29 ----- security/gpgme/pkg-plist | 4 +- security/gpgmepp/Makefile | 18 +++ security/gpgmepp/distinfo | 3 + security/gpgmepp/pkg-descr | 2 + security/{gpgme-cpp => gpgmepp}/pkg-plist | 10 +- security/kleopatra/Makefile | 9 +- security/kleopatra/distinfo | 8 +- security/libkleo/Makefile | 4 +- security/pecl-gnupg/files/patch-gnupg.c | 41 +++++++ security/pinentry/Makefile | 2 +- security/py-gpg/Makefile | 43 +++++++ security/py-gpg/distinfo | 3 + security/py-gpg/files/patch-configure.ac | 19 ++++ security/py-gpg/files/patch-pyproject.toml | 13 +++ security/py-gpg/pkg-descr | 3 + security/py-gpgme/Makefile | 16 --- security/py-gpgme/pkg-plist | 89 --------------- security/qgpgme/Makefile | 55 +++++++++ security/qgpgme/distinfo | 3 + security/qgpgme/pkg-descr | 15 +++ security/{gpgme-qt => qgpgme}/pkg-plist | 8 +- security/seahorse/Makefile | 3 + security/seahorse/distinfo | 4 +- sysutils/dnf/Makefile | 2 +- sysutils/kf5-kwallet/Makefile | 4 +- sysutils/kf6-kwallet/Makefile | 2 +- sysutils/plasma-pass/Makefile | 4 +- 63 files changed, 423 insertions(+), 345 deletions(-) create mode 100644 net-im/profanity/files/patch-src_pgp_gpg.c create mode 100644 security/gpa/files/patch-src_gpacontext.c create mode 100644 security/gpa/files/patch-src_gpacontext.h delete mode 100644 security/gpgme-cpp/Makefile delete mode 100644 security/gpgme-qt/Makefile delete mode 100644 security/gpgme/files/patch-lang_python_Makefile.in create mode 100644 security/gpgmepp/Makefile create mode 100644 security/gpgmepp/distinfo create mode 100644 security/gpgmepp/pkg-descr rename security/{gpgme-cpp => gpgmepp}/pkg-plist (86%) create mode 100644 security/pecl-gnupg/files/patch-gnupg.c create mode 100644 security/py-gpg/Makefile create mode 100644 security/py-gpg/distinfo create mode 100644 security/py-gpg/files/patch-configure.ac create mode 100644 security/py-gpg/files/patch-pyproject.toml create mode 100644 security/py-gpg/pkg-descr delete mode 100644 security/py-gpgme/Makefile delete mode 100644 security/py-gpgme/pkg-plist create mode 100644 security/qgpgme/Makefile create mode 100644 security/qgpgme/distinfo create mode 100644 security/qgpgme/pkg-descr rename security/{gpgme-qt => qgpgme}/pkg-plist (94%) diff --git a/MOVED b/MOVED index c8f5f83fb800..3eeaa11adec6 100644 --- a/MOVED +++ b/MOVED @@ -4556,3 +4556,7 @@ devel/py-atomicwrites||2025-06-23|Has expired: Upstream repository has been arch devel/py-pytest-runner||2025-06-23|Has expired: pytest-runner depends on deprecated features of setuptools x11-toolkits/scenefx03|x11-toolkits/scenefx04|2025-06-24|No consumers in ports net/ziina|net/zmate|2025-06-24|Renamed upstream +security/py-gpgme|security/py-gpg|2025-06-24|Gpgme Python bindings have been split into a separate project +security/gpgme-cpp|security/gpgmepp|2025-06-24|Gpgme C++ bindings have been split into a separate project +security/gpgme-qt@qt5|security/qgpgme@qt5|2025-06-24|Gpgme Qt5 bindings have been split into a separate project +security/gpgme-qt@qt6|security/qgpgme@qt6|2025-06-24|Gpgme Qt6 bindings have been split into a separate project diff --git a/deskutils/akonadi-import-wizard/Makefile b/deskutils/akonadi-import-wizard/Makefile index 7b8d9314730c..465468fecc15 100644 --- a/deskutils/akonadi-import-wizard/Makefile +++ b/deskutils/akonadi-import-wizard/Makefile @@ -9,8 +9,8 @@ WWW= https://www.kde.org/ LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 \ + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 \ libqt6keychain.so:security/qtkeychain@qt6 USES= cmake compiler:c++11-lib gettext kde:6 qt:6 tar:xz diff --git a/deskutils/akonadiconsole/Makefile b/deskutils/akonadiconsole/Makefile index b3d688f6d308..4fc34239fcff 100644 --- a/deskutils/akonadiconsole/Makefile +++ b/deskutils/akonadiconsole/Makefile @@ -11,8 +11,8 @@ LICENSE= LGPL21 LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 \ + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 \ libical.so:devel/libical \ libxapian.so:databases/xapian-core diff --git a/deskutils/akregator/Makefile b/deskutils/akregator/Makefile index fd73aa92a1ae..0ec164dc9abe 100644 --- a/deskutils/akregator/Makefile +++ b/deskutils/akregator/Makefile @@ -11,8 +11,8 @@ LICENSE= LGPL21 LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib desktop-file-utils gettext kde:6 qt:6 \ tar:xz xorg diff --git a/deskutils/grantlee-editor/Makefile b/deskutils/grantlee-editor/Makefile index f06926d5a040..fa585766ce81 100644 --- a/deskutils/grantlee-editor/Makefile +++ b/deskutils/grantlee-editor/Makefile @@ -11,8 +11,8 @@ LICENSE= LGPL21 LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib gettext kde:6 qt:6 tar:xz xorg USE_KDE= archive attica auth codecs completion config configwidgets \ diff --git a/deskutils/kaddressbook/Makefile b/deskutils/kaddressbook/Makefile index 0c9b271d0c97..062b743fa138 100644 --- a/deskutils/kaddressbook/Makefile +++ b/deskutils/kaddressbook/Makefile @@ -9,8 +9,8 @@ WWW= https://www.kde.org/ LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib desktop-file-utils gettext kde:6 qt:6 \ tar:xz xorg diff --git a/deskutils/kdepim-addons/Makefile b/deskutils/kdepim-addons/Makefile index 1279fdfca7f0..40d4775ab1fe 100644 --- a/deskutils/kdepim-addons/Makefile +++ b/deskutils/kdepim-addons/Makefile @@ -13,8 +13,8 @@ RUN_DEPENDS= markdown:textproc/discount LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgme.so:security/gpgme-qt@qt5 + libgpgmepp.so:security/gpgmepp \ + libqgpgme.so:security/qgpgme@qt5 USES= cmake compiler:c++11-lib gettext kde:6 pkgconfig qt:6 tar:xz \ xorg diff --git a/deskutils/kmail-account-wizard/Makefile b/deskutils/kmail-account-wizard/Makefile index 6279d005c53c..f2894620c0a7 100644 --- a/deskutils/kmail-account-wizard/Makefile +++ b/deskutils/kmail-account-wizard/Makefile @@ -9,8 +9,8 @@ WWW= https://www.kde.org/ LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib desktop-file-utils gettext gl kde:6 \ qt:6 shared-mime-info tar:xz diff --git a/deskutils/kmail/Makefile b/deskutils/kmail/Makefile index 3bac666f92c5..d4ee907329b5 100644 --- a/deskutils/kmail/Makefile +++ b/deskutils/kmail/Makefile @@ -11,8 +11,8 @@ LICENSE= LGPL21 LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 \ + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 \ libqt6keychain.so:security/qtkeychain@qt6 RUN_DEPENDS= accountwizard:deskutils/kmail-account-wizard \ diff --git a/deskutils/mbox-importer/Makefile b/deskutils/mbox-importer/Makefile index 4de17c47171b..b0dccf6ad709 100644 --- a/deskutils/mbox-importer/Makefile +++ b/deskutils/mbox-importer/Makefile @@ -9,8 +9,8 @@ WWW= https://www.kde.org/ LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib desktop-file-utils gettext kde:6 qt:6 \ tar:xz diff --git a/deskutils/pim-data-exporter/Makefile b/deskutils/pim-data-exporter/Makefile index dd3d08ae51a6..013d3073ba1d 100644 --- a/deskutils/pim-data-exporter/Makefile +++ b/deskutils/pim-data-exporter/Makefile @@ -9,8 +9,8 @@ WWW= https://www.kde.org/ LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib gettext kde:6 qt:6 tar:xz xorg USE_KDE= archive auth bookmarks codecs completion config configwidgets \ diff --git a/editors/libreoffice/Makefile b/editors/libreoffice/Makefile index 55db5949c9ce..0638b1c7981b 100644 --- a/editors/libreoffice/Makefile +++ b/editors/libreoffice/Makefile @@ -61,7 +61,7 @@ LIB_DEPENDS= libapr-1.so:devel/apr1 \ libpagemaker-0.0.so:print/libpagemaker \ libassuan.so:security/libassuan \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ + libgpgmepp.so:security/gpgmepp \ libargon2.so:security/libargon2 \ libgpg-error.so:security/libgpg-error \ libnss3.so:security/nss \ diff --git a/finance/kmymoney/Makefile b/finance/kmymoney/Makefile index 2efb9386054d..bab160f080cd 100644 --- a/finance/kmymoney/Makefile +++ b/finance/kmymoney/Makefile @@ -40,7 +40,7 @@ CALENDAR_DESC= iCalendar exporter CALENDAR_LIB_DEPENDS= libical.so:devel/libical CALENDAR_CMAKE_BOOL= ENABLE_LIBICAL -GNUPG_LIB_DEPENDS= libgpgmepp.so:security/gpgme-cpp +GNUPG_LIB_DEPENDS= libgpgmepp.so:security/gpgmepp GNUPG_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Gpgmepp \ CMAKE_DISABLE_FIND_PACKAGE_KF5Gpgmepp diff --git a/finance/ledger/Makefile b/finance/ledger/Makefile index ceb2bcd6a178..0144a686a9d3 100644 --- a/finance/ledger/Makefile +++ b/finance/ledger/Makefile @@ -25,7 +25,7 @@ OPTIONS_DEFINE= GNUPG PYTHON OPTIONS_SUB= yes GNUPG_LIB_DEPENDS= libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp + libgpgmepp.so:security/gpgmepp GNUPG_CMAKE_BOOL= USE_GPGME PYTHON_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}boost-libs>0:devel/boost-python-libs@${PY_FLAVOR} diff --git a/graphics/poppler/Makefile b/graphics/poppler/Makefile index 12a976699b4f..7d8a32c99963 100644 --- a/graphics/poppler/Makefile +++ b/graphics/poppler/Makefile @@ -103,7 +103,7 @@ OPENJPEG_CMAKE_OFF= -DENABLE_LIBOPENJPEG:STRING="none" GNUPG_CMAKE_BOOL= ENABLE_GPGME GNUPG_LIB_DEPENDS= libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp + libgpgmepp.so:security/gpgmepp post-install: .if ${_SLAVE_PORT} == glib diff --git a/mail/py-alot/Makefile b/mail/py-alot/Makefile index dac58d63911e..d45e0beca6d0 100644 --- a/mail/py-alot/Makefile +++ b/mail/py-alot/Makefile @@ -12,7 +12,7 @@ LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}notmuch>=0.27:mail/py-notmuch@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}gpgme>0:security/py-gpgme@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}configobj>4.7.0:devel/py-configobj@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}python-magic>0:devel/py-python-magic@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}twisted>=18.4.0:devel/py-twisted@${PY_FLAVOR} \ diff --git a/misc/librepo/Makefile b/misc/librepo/Makefile index 13919daf79ab..26c0bd16914a 100644 --- a/misc/librepo/Makefile +++ b/misc/librepo/Makefile @@ -15,7 +15,7 @@ LIB_DEPENDS= libassuan.so:security/libassuan \ libgpgme.so:security/gpgme TEST_DEPENDS= bash:shells/bash \ check>0:devel/check \ - ${PYTHON_PKGNAMEPREFIX}gpgme>0:security/py-gpgme@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}xattr>0:devel/py-xattr@${PY_FLAVOR} USES= cpe gettext-runtime gnome cmake:testing localbase:ldflags pkgconfig python shebangfix ssl diff --git a/net-im/gajim/Makefile b/net-im/gajim/Makefile index 2eb509b54755..e22e0cabac80 100644 --- a/net-im/gajim/Makefile +++ b/net-im/gajim/Makefile @@ -43,6 +43,6 @@ OPTIONS_DEFAULT=DBUS OPENGPG OPENGPG_DESC= GPG encryption per XEP-0373 DBUS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dbus>=0.82.2:devel/py-dbus@${PY_FLAVOR} -OPENGPG_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpgme>0:security/py-gpgme@${PY_FLAVOR} +OPENGPG_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR} .include diff --git a/net-im/profanity/files/patch-src_pgp_gpg.c b/net-im/profanity/files/patch-src_pgp_gpg.c new file mode 100644 index 000000000000..6a7e79214fc9 --- /dev/null +++ b/net-im/profanity/files/patch-src_pgp_gpg.c @@ -0,0 +1,15 @@ +The gpgme_attr_t enums and their functions, which have been marked deprecated +since 2003, were removed in GpgME 2.0.0. The individual result structures +should be used instead. + +--- src/pgp/gpg.c.orig 2023-07-14 05:39:30 UTC ++++ src/pgp/gpg.c +@@ -683,7 +683,7 @@ p_gpg_decrypt(const char* const cipher) + error = gpgme_get_key(ctx, recipient->keyid, &key, 1); + + if (!error && key) { +- const char* addr = gpgme_key_get_string_attr(key, GPGME_ATTR_EMAIL, NULL, 0); ++ const char* addr = key->uids->email; + if (addr) { + g_string_append(recipients_str, addr); + } diff --git a/net/akonadi-contacts/Makefile b/net/akonadi-contacts/Makefile index 1c53cc0f5661..3b53bdf2a613 100644 --- a/net/akonadi-contacts/Makefile +++ b/net/akonadi-contacts/Makefile @@ -10,8 +10,8 @@ LICENSE= LGPL21 LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib gettext kde:6 qt:6 tar:xz xorg USE_KDE= auth codecs completion config configwidgets coreaddons \ diff --git a/net/kget/Makefile b/net/kget/Makefile index 4d0103bd916f..4130bd76c34b 100644 --- a/net/kget/Makefile +++ b/net/kget/Makefile @@ -2,6 +2,10 @@ PORTNAME= kget DISTVERSION= ${KDE_APPLICATIONS_VERSION} CATEGORIES= net kde kde-applications +PATCH_SITES= https://invent.kde.org/network/kget/-/commit/ +PATCHFILES+= 6254c0cefa17fe82f44842bc21f5e5c241f66aec.patch:-p1 # Prep for Qgpgme 2.0.0 +PATCHFILES+= a9aa30e58ca3281285a3ba64d1da6c22fe0ab31a.patch:-p1 # Prep for Qgpgme 2.0.0 + MAINTAINER= kde@FreeBSD.org COMMENT= KDE download manager @@ -12,9 +16,9 @@ LIB_DEPENDS= libKTorrent6.so:net-p2p/libktorrent \ libgmp.so:math/gmp \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ + libgpgmepp.so:security/gpgmepp \ libqca-qt6.so:devel/qca@qt6 \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lang desktop-file-utils gettext kde:6 \ qt:6 shebangfix sqlite tar:xz xorg diff --git a/net/kget/distinfo b/net/kget/distinfo index 9bf521d866d2..56a18fccf9a8 100644 --- a/net/kget/distinfo +++ b/net/kget/distinfo @@ -1,3 +1,7 @@ -TIMESTAMP = 1749036885 +TIMESTAMP = 1750435664 SHA256 (KDE/release-service/25.04.2/kget-25.04.2.tar.xz) = c6c9d107bdffbc2d19855f298c5634a341a82d6ca3e1b430ce608c7c10d580c1 SIZE (KDE/release-service/25.04.2/kget-25.04.2.tar.xz) = 4853484 +SHA256 (KDE/release-service/25.04.2/6254c0cefa17fe82f44842bc21f5e5c241f66aec.patch) = 76dc24ccdc5c62024165aa00967480bc0640714bca00b86bf634b4b375cdb610 +SIZE (KDE/release-service/25.04.2/6254c0cefa17fe82f44842bc21f5e5c241f66aec.patch) = 1221 +SHA256 (KDE/release-service/25.04.2/a9aa30e58ca3281285a3ba64d1da6c22fe0ab31a.patch) = 186b2bc25e6fbfe5eb86c8b0c13a518539f94232726dc262cfbc81479149fa74 +SIZE (KDE/release-service/25.04.2/a9aa30e58ca3281285a3ba64d1da6c22fe0ab31a.patch) = 1483 diff --git a/net/mailcommon/Makefile b/net/mailcommon/Makefile index 400452af446c..39eeba4bb688 100644 --- a/net/mailcommon/Makefile +++ b/net/mailcommon/Makefile @@ -12,8 +12,8 @@ BUILD_DEPENDS= ${LOCALBASE}/include/boost/range/algorithm.hpp:devel/boost-libs LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib gettext kde:6 qt:6 tar:xz xorg USE_KDE= archive auth codecs completion config configwidgets coreaddons \ diff --git a/net/messagelib/Makefile b/net/messagelib/Makefile index 0cb1a4fc7ad3..7af31cf1db3e 100644 --- a/net/messagelib/Makefile +++ b/net/messagelib/Makefile @@ -14,9 +14,9 @@ BUILD_DEPENDS= ${LOCALBASE}/include/boost/range/algorithm.hpp:devel/boost-libs LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ + libgpgmepp.so:security/gpgmepp \ libqca-qt6.so:devel/qca@qt6 \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lib cpe gettext kde:6 qt:6 tar:xz \ xorg diff --git a/net/samba416/Makefile b/net/samba416/Makefile index 1e96dd4e303f..f87b5d88253d 100644 --- a/net/samba416/Makefile +++ b/net/samba416/Makefile @@ -379,7 +379,7 @@ FAM_CONFIGURE_WITH= fam GPGME_CONFIGURE_WITH= gpgme GPGME_LIB_DEPENDS= libgpgme.so:security/gpgme -GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpgme>=1.14.0:security/py-gpgme@${PY_FLAVOR} +GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR} GSSAPI_BUILTIN_USES= bison GSSAPI_BUILTIN_BUILD_DEPENDS= p5-JSON>=4.0:converters/p5-JSON diff --git a/net/samba419/Makefile b/net/samba419/Makefile index a225810e0271..1f416c1aba07 100644 --- a/net/samba419/Makefile +++ b/net/samba419/Makefile @@ -364,7 +364,7 @@ FAM_CONFIGURE_WITH= fam GPGME_CONFIGURE_WITH= gpgme GPGME_LIB_DEPENDS= libgpgme.so:security/gpgme -GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpgme>=1.14.0:security/py-gpgme@${PY_FLAVOR} +GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR} GSSAPI_BUILTIN_USES= bison GSSAPI_BUILTIN_BUILD_DEPENDS= p5-JSON>=4.0:converters/p5-JSON diff --git a/net/samba420/Makefile b/net/samba420/Makefile index 182c270f5a29..456cadd47dee 100644 --- a/net/samba420/Makefile +++ b/net/samba420/Makefile @@ -366,7 +366,7 @@ FAM_CONFIGURE_WITH= fam GPGME_CONFIGURE_WITH= gpgme GPGME_LIB_DEPENDS= libgpgme.so:security/gpgme -GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpgme>=1.14.0:security/py-gpgme@${PY_FLAVOR} +GPGME_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR} GSSAPI_BUILTIN_USES= bison GSSAPI_BUILTIN_BUILD_DEPENDS= p5-JSON>=4.0:converters/p5-JSON diff --git a/security/Makefile b/security/Makefile index ddae4dbefef7..46547e92bf04 100644 --- a/security/Makefile +++ b/security/Makefile @@ -204,8 +204,7 @@ SUBDIR += gpg-tui SUBDIR += gpgdir SUBDIR += gpgme - SUBDIR += gpgme-cpp - SUBDIR += gpgme-qt + SUBDIR += gpgmepp SUBDIR += gsa SUBDIR += gsad SUBDIR += gsasl @@ -953,7 +952,7 @@ SUBDIR += py-google-auth SUBDIR += py-google-auth-httplib2 SUBDIR += py-google-auth-oauthlib - SUBDIR += py-gpgme + SUBDIR += py-gpg SUBDIR += py-gpsoauth SUBDIR += py-greenbone-feed-sync SUBDIR += py-gssapi @@ -1101,6 +1100,7 @@ SUBDIR += py-zkg SUBDIR += py-zxcvbn SUBDIR += pygost + SUBDIR += qgpgme SUBDIR += qt-sudo SUBDIR += qtkeychain SUBDIR += quantis-kmod diff --git a/security/gpa/files/patch-src_gpacontext.c b/security/gpa/files/patch-src_gpacontext.c new file mode 100644 index 000000000000..6b41a8f4cc80 --- /dev/null +++ b/security/gpa/files/patch-src_gpacontext.c @@ -0,0 +1,70 @@ +The trustlist feature, which only worked for a short period in 2003, was +removed in GpgME 2.0.0. + +--- src/gpacontext.c.orig 2022-11-14 07:04:19 UTC ++++ src/gpacontext.c +@@ -38,8 +38,6 @@ static void gpa_context_next_key (GpaContext *context, + static void gpa_context_start (GpaContext *context); + static void gpa_context_done (GpaContext *context, gpg_error_t err); + static void gpa_context_next_key (GpaContext *context, gpgme_key_t key); +-static void gpa_context_next_trust_item (GpaContext *context, +- gpgme_trust_item_t item); + static void gpa_context_progress (GpaContext *context, int current, int total); + + /* The GPGME I/O callbacks */ +@@ -65,7 +63,6 @@ enum + START, + DONE, + NEXT_KEY, +- NEXT_TRUST_ITEM, + PROGRESS, + LAST_SIGNAL + }; +@@ -113,7 +110,6 @@ gpa_context_class_init (GpaContextClass *klass) + klass->start = gpa_context_start; + klass->done = gpa_context_done; + klass->next_key = gpa_context_next_key; +- klass->next_trust_item = gpa_context_next_trust_item; + klass->progress = gpa_context_progress; + + /* Signals */ +@@ -143,15 +139,6 @@ gpa_context_class_init (GpaContextClass *klass) + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); +- signals[NEXT_TRUST_ITEM] = +- g_signal_new ("next_trust_item", +- G_TYPE_FROM_CLASS (object_class), +- G_SIGNAL_RUN_FIRST, +- G_STRUCT_OFFSET (GpaContextClass, next_trust_item), +- NULL, NULL, +- g_cclosure_marshal_VOID__POINTER, +- G_TYPE_NONE, 1, +- G_TYPE_POINTER); + signals[PROGRESS] = + g_signal_new ("progress", + G_TYPE_FROM_CLASS (object_class), +@@ -496,10 +483,6 @@ gpa_context_event_cb (void *data, gpgme_event_io_t typ + case GPGME_EVENT_NEXT_KEY: + g_signal_emit (context, signals[NEXT_KEY], 0, type_data); + break; +- case GPGME_EVENT_NEXT_TRUSTITEM: +- g_signal_emit (context, signals[NEXT_TRUST_ITEM], 0, +- type_data); +- break; + default: + /* Ignore unsupported event types */ + break; +@@ -527,12 +510,6 @@ gpa_context_next_key (GpaContext *context, gpgme_key_t + + static void + gpa_context_next_key (GpaContext *context, gpgme_key_t key) +-{ +- /* Do nothing yet */ +-} +- +-static void +-gpa_context_next_trust_item (GpaContext *context, gpgme_trust_item_t item) + { + /* Do nothing yet */ + } diff --git a/security/gpa/files/patch-src_gpacontext.h b/security/gpa/files/patch-src_gpacontext.h new file mode 100644 index 000000000000..7b7d6eba5dc6 --- /dev/null +++ b/security/gpa/files/patch-src_gpacontext.h @@ -0,0 +1,13 @@ +The trustlist feature, which only worked for a short period in 2003, was +removed in GpgME 2.0.0. + +--- src/gpacontext.h.orig 2018-10-16 19:58:08 UTC ++++ src/gpacontext.h +@@ -63,7 +63,6 @@ struct _GpaContextClass { + void (*start) (GpaContext *context); + void (*done) (GpaContext *context, gpg_error_t err); + void (*next_key) (GpaContext *context, gpgme_key_t key); +- void (*next_trust_item) (GpaContext *context, gpgme_trust_item_t item); + void (*progress) (GpaContext *context, int current, int total); + }; + diff --git a/security/gpgme-cpp/Makefile b/security/gpgme-cpp/Makefile deleted file mode 100644 index e24db4919c02..000000000000 --- a/security/gpgme-cpp/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -PORTREVISION= 0 -PKGNAMESUFFIX= -${_GPGME_BINDING} - -COMMENT= Gpgme C++ bindings - -MASTERDIR= ${.CURDIR:H:H}/security/gpgme -PLIST= ${.CURDIR}/pkg-plist - -_GPGME_BINDING= cpp - -.include "${MASTERDIR}/Makefile" diff --git a/security/gpgme-qt/Makefile b/security/gpgme-qt/Makefile deleted file mode 100644 index f683b6a005dd..000000000000 --- a/security/gpgme-qt/Makefile +++ /dev/null @@ -1,13 +0,0 @@ -PORTREVISION= 0 - -COMMENT= Gpgme Qt${FLAVOR:S|qt||} bindings - -LICENSE= GPLv2+ -LICENSE_FILE= ${WRKSRC}/COPYING - -MASTERDIR= ${.CURDIR:H:H}/security/gpgme -PLIST= ${.CURDIR}/pkg-plist - -_GPGME_BINDING= qt - -.include "${MASTERDIR}/Makefile" diff --git a/security/gpgme/Makefile b/security/gpgme/Makefile index ad66bed32308..92bba8a67faa 100644 --- a/security/gpgme/Makefile +++ b/security/gpgme/Makefile @@ -1,6 +1,5 @@ PORTNAME= gpgme -PORTVERSION= 1.24.2 -PORTREVISION?= 0 +PORTVERSION= 2.0.0 CATEGORIES?= security MASTER_SITES= GNUPG/gpgme @@ -16,17 +15,14 @@ LIB_DEPENDS= libassuan.so:security/libassuan \ USES= compiler:c11 cpe gmake libtool localbase:ldflags pathfix tar:bzip2 USE_LDCONFIG= yes +CPE_VENDOR= gnu GNU_CONFIGURE= yes +CONFIGURE_ARGS+=--enable-languages="cl" CFLAGS+= -Wno-suggest-override -Wno-unknown-warning-option INSTALL_TARGET= install-strip TEST_TARGET= check -CPE_VENDOR= gnu - -.if !defined(_GPGME_BINDING) -CONFIGURE_ARGS+=--enable-languages="cl" - INFO= gpgme PORTDOCS= AUTHORS INSTALL NEWS README @@ -49,93 +45,11 @@ TEST_PREVENTS_MSG= TEST option is mainly designed for use with the GNUPG2 option UISERVER_DESC= GnuPG UI server support UISERVER_CONFIGURE_ENABLE= fd-passing -.else -LIB_DEPENDS+= libgpgme.so:security/gpgme -BUILD_WRKSRC= ${WRKSRC}/lang/${_GPGME_BINDING} -INSTALL_WRKSRC= ${WRKSRC}/lang/${_GPGME_BINDING} -TEST_WRKSRC= ${WRKSRC}/lang/${_GPGME_BINDING}/tests - -. if ${_GPGME_BINDING} == "cpp" -USES+= compiler:c++11-lang -CONFIGURE_ARGS+=--enable-languages="cpp" -NO_TEST= yes -. else -OPTIONS_DEFINE+= TEST -. endif - -. if ${_GPGME_BINDING} == "qt" -LIB_DEPENDS+= libgpgmepp.so:security/gpgme-cpp - -FLAVORS= qt5 qt6 -FLAVOR?= ${FLAVORS:[1]} -qt5_PKGNAMESUFFIX= -qt5 -qt6_PKGNAMESUFFIX= -qt6 - -. if ${FLAVOR:U} == "qt5" -USES+= compiler:c++11-lang pkgconfig qt:5 -USE_QT= core \ - buildtools:build -TEST_USE= QT=testlib:build -PLIST_SUB= QGPGME_CMAKE_SUFFIX="" \ - QGPGME_INCLUDE_SUFFIX="${FLAVOR}" \ - QGPGME_LIB_SUFFIX="" -. else -USES+= compiler:c++17-lang pkgconfig qt:6 -USE_CXXSTD= c++17 -USE_QT= base -PLIST_SUB= QGPGME_CMAKE_SUFFIX="Qt${FLAVOR:S|qt||}" \ - QGPGME_INCLUDE_SUFFIX="${FLAVOR}" \ - QGPGME_LIB_SUFFIX="${FLAVOR}" -. endif - -CONFIGURE_ARGS+=--enable-languages="cpp ${FLAVOR}" -DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX} - -OPTIONS_DEFINE+= DOXYGEN -DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen \ - dot:graphics/graphviz -. endif - -. if ${_GPGME_BINDING} == "python" -BUILD_DEPENDS+= swig:devel/swig \ - ${PY_SETUPTOOLS} -USES+= python:3.9+ -USE_PYTHON= flavors -CONFIGURE_ARGS+=--enable-languages="python" -CONFIGURE_ENV+= BSD_PYTHON="${PYTHON_CMD}" \ - BSD_PYTHON_VERSION="${PYTHON_VER}" \ - SWIG="${LOCALBASE}/bin/swig" -PLIST_SUB+= VERSION=${PORTVERSION} -. endif -.endif - -.include post-patch: -.if ${COMPILER_TYPE} == "clang" - @${REINPLACE_CMD} -e 's|mno-direct-extern-access|fno-direct-access-external-data|g' \ - ${WRKSRC}/configure -.endif -.if defined(_GPGME_BINDING) - @${FIND} ${BUILD_WRKSRC} -name "Makefile.in" -type f | ${XARGS} \ - ${REINPLACE_CMD} -e 's|../../../src/libgpgme.la|-lgpgme|g' -. if ${_GPGME_BINDING} == "qt" - @${FIND} ${BUILD_WRKSRC} -name "Makefile.in" -type f | ${XARGS} \ - ${REINPLACE_CMD} -e 's|../../cpp/src/libgpgmepp.la|-lgpgmepp|g' -. endif -.endif @${REINPLACE_CMD} -e 's|^clfilesdir.*|clfilesdir=$$\(libdir\)/common-lisp/gpgme|g' \ ${WRKSRC}/lang/cl/Makefile.in -post-patch-DOXYGEN-off: - @${REINPLACE_CMD} -e '/SUBDIRS/s|doc||' \ - ${WRKSRC}/lang/qt/Makefile.in - -post-patch-TEST-off: - @${REINPLACE_CMD} -e '/SUBDIRS/s|tests||' \ - ${WRKSRC}/lang/python/Makefile.in \ - ${WRKSRC}/lang/qt/Makefile.in - # The gnupg programs will create sockets for the tests in a temporary directory # under /var/run/user/${UID} if it exists. Otherwise, they will try to create # them in the test build directories. To prevent errors in cases where the test @@ -165,17 +79,8 @@ pre-test: pre-build-TEST-on post-test: post-build-TEST-on -.if !defined(_GPGME_BINDING) post-install-DOCS-on: - ${MKDIR} ${STAGEDIR}${DOCSDIR} + @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} -.endif -post-install-DOXYGEN-on: - ${MKDIR} ${STAGEDIR}${DOCSDIR}/html - cd ${WRKSRC}/lang/qt/doc/generated/html && \ - ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}/html - @${FIND} -P ${STAGEDIR}${DOCSDIR} -type f 2>/dev/null | \ - ${SED} -ne 's|^${STAGEDIR}${PREFIX}/||p' >> ${TMPPLIST} - -.include +.include diff --git a/security/gpgme/distinfo b/security/gpgme/distinfo index 3f69026dd7d7..c0c75d7c36e4 100644 --- a/security/gpgme/distinfo +++ b/security/gpgme/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1739544658 -SHA256 (gpgme-1.24.2.tar.bz2) = e11b1a0e361777e9e55f48a03d89096e2abf08c63d84b7017cfe1dce06639581 -SIZE (gpgme-1.24.2.tar.bz2) = 1891804 +TIMESTAMP = 1750274492 +SHA256 (gpgme-2.0.0.tar.bz2) = ddf161d3c41ff6a3fcbaf4be6c6e305ca4ef1cc3f1ecdfce0c8c2a167c0cc36d +SIZE (gpgme-2.0.0.tar.bz2) = 1383911 diff --git a/security/gpgme/files/patch-configure b/security/gpgme/files/patch-configure index 9884bbddbdc4..02ee21a01cff 100644 --- a/security/gpgme/files/patch-configure +++ b/security/gpgme/files/patch-configure @@ -1,27 +1,8 @@ -Hunk 1: -The configure script automatically detects all versions of Python and builds -the bindings for each found version. This is a problem when building outside -of a clean environment since the ports system can only build a package for one -Python flavor at a time. The found versions of Python are overridden by -environment variables set in the port Makefile. - -Hunk 2: Fix path of pkgconfig files passed to gpgrt-config. ---- configure.orig 2023-11-28 15:45:04 UTC +--- configure.orig 2025-06-03 11:26:27 UTC +++ configure -@@ -31428,6 +31428,10 @@ printf "%s\n" "$as_me: WARNING: - - fi - -+ # Override the automatically found Pythons with the selected version from ports. -+ PYTHONS=$BSD_PYTHON -+ PYTHON_VERSIONS=$BSD_PYTHON_VERSION -+ - # Recover some values lost in the second attempt to find Python. - PYTHON="$(echo $PYTHONS | cut -d ' ' -f 1)" - PYTHON_VERSION="$(echo $PYTHON_VERSIONS | cut -d ' ' -f 1)" -@@ -32691,7 +32695,7 @@ fi +@@ -16828,7 +16828,7 @@ fi # Get the prefix of gpgrt-config assuming it's something like: # /bin/gpgrt-config gpgrt_prefix=${GPGRT_CONFIG%/*/*} diff --git a/security/gpgme/files/patch-lang_python_Makefile.in b/security/gpgme/files/patch-lang_python_Makefile.in deleted file mode 100644 index e78760200c2a..000000000000 --- a/security/gpgme/files/patch-lang_python_Makefile.in +++ /dev/null @@ -1,29 +0,0 @@ -First hunk: -The swig executable from devel/swig30 is named 'swig3.0' and the build system -only looks for an executable named 'swig': -unable to execute 'swig': No such file or directory - -Second hunk: -Fix staging and build the *.pyc and *.pyo files - ---- lang/python/Makefile.in.orig 2023-08-21 07:46:32 UTC -+++ lang/python/Makefile.in -@@ -768,7 +768,7 @@ all-local: copystamp - CFLAGS="$(CFLAGS)" \ - srcdir="$(srcdir)" \ - top_builddir="$(top_builddir)" \ -- $$PYTHON setup.py build --verbose --build-base="$$(basename "$${PYTHON}")-gpg" ; \ -+ $$PYTHON setup.py build --verbose --build-base="$$(basename "$${PYTHON}")-gpg" build_ext --swig=$(SWIG) ; \ - done - - python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc: copystamp -@@ -811,7 +811,8 @@ install-exec-local: - build \ - --build-base="$$(basename "$${PYTHON}")-gpg" \ - install \ -- --prefix "$(DESTDIR)$(prefix)" \ -+ -c -O1 --prefix=$(prefix) \ -+ --root=$(DESTDIR) \ - --verbose ; \ - done - diff --git a/security/gpgme/pkg-plist b/security/gpgme/pkg-plist index 9034fa4ef44d..b79e4310fc92 100644 --- a/security/gpgme/pkg-plist +++ b/security/gpgme/pkg-plist @@ -7,8 +7,8 @@ lib/common-lisp/gpgme/gpgme-package.lisp lib/common-lisp/gpgme/gpgme.asd lib/common-lisp/gpgme/gpgme.lisp lib/libgpgme.so -lib/libgpgme.so.11 -lib/libgpgme.so.11.33.2 +lib/libgpgme.so.45 +lib/libgpgme.so.45.0.0 libdata/pkgconfig/gpgme-glib.pc libdata/pkgconfig/gpgme.pc share/aclocal/gpgme.m4 diff --git a/security/gpgmepp/Makefile b/security/gpgmepp/Makefile new file mode 100644 index 000000000000..e82eb6422f32 --- /dev/null +++ b/security/gpgmepp/Makefile @@ -0,0 +1,18 @@ +PORTNAME= gpgmepp +PORTVERSION= 2.0.0 +CATEGORIES= security +MASTER_SITES= GNUPG + +MAINTAINER= jhale@FreeBSD.org +COMMENT= GnuPG Made Easy (GPGME) C++ bindings +WWW= https://gnupg.org/software/gpgme/index.html + +LICENSE= LGPL20+ +LICENSE_FILE= ${WRKSRC}/COPYING.LIB + +LIB_DEPENDS= libgpg-error.so:security/libgpg-error \ + libgpgme.so:security/gpgme + +USES= cmake compiler:c++17-lang pkgconfig tar:xz + +.include diff --git a/security/gpgmepp/distinfo b/security/gpgmepp/distinfo new file mode 100644 index 000000000000..8d7b098d16d2 --- /dev/null +++ b/security/gpgmepp/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1750275911 +SHA256 (gpgmepp-2.0.0.tar.xz) = d4796049c06708a26f3096f748ef095347e1a3c1e570561701fe952c3f565382 +SIZE (gpgmepp-2.0.0.tar.xz) = 118304 diff --git a/security/gpgmepp/pkg-descr b/security/gpgmepp/pkg-descr new file mode 100644 index 000000000000..34f3229a2efb --- /dev/null +++ b/security/gpgmepp/pkg-descr @@ -0,0 +1,2 @@ +GpgMEpp is a C++ wrapper (or C++ bindings) for the GnuPG project's GPGME +(GnuPG Made Easy) library. diff --git a/security/gpgme-cpp/pkg-plist b/security/gpgmepp/pkg-plist similarity index 86% rename from security/gpgme-cpp/pkg-plist rename to security/gpgmepp/pkg-plist index 544a430d2de8..2741334cbc58 100644 --- a/security/gpgme-cpp/pkg-plist +++ b/security/gpgmepp/pkg-plist @@ -31,18 +31,22 @@ include/gpgme++/key.h include/gpgme++/keygenerationresult.h include/gpgme++/keylistresult.h include/gpgme++/notation.h +include/gpgme++/randomresults.h include/gpgme++/result.h include/gpgme++/scdgetinfoassuantransaction.h include/gpgme++/signingresult.h include/gpgme++/statusconsumerassuantransaction.h include/gpgme++/swdbresult.h include/gpgme++/tofuinfo.h -include/gpgme++/trustitem.h include/gpgme++/verificationresult.h include/gpgme++/vfsmountresult.h +lib/cmake/Gpgmepp/FindGpgme.cmake +lib/cmake/Gpgmepp/FindLibGpgError.cmake lib/cmake/Gpgmepp/GpgmeppConfig.cmake lib/cmake/Gpgmepp/GpgmeppConfigVersion.cmake +lib/cmake/Gpgmepp/GpgmeppTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/Gpgmepp/GpgmeppTargets.cmake lib/libgpgmepp.so -lib/libgpgmepp.so.6 -lib/libgpgmepp.so.6.21.2 +lib/libgpgmepp.so.7 +lib/libgpgmepp.so.7.0.0 libdata/pkgconfig/gpgmepp.pc diff --git a/security/kleopatra/Makefile b/security/kleopatra/Makefile index 505df198284c..afa65c5857a7 100644 --- a/security/kleopatra/Makefile +++ b/security/kleopatra/Makefile @@ -2,6 +2,11 @@ PORTNAME= kleopatra DISTVERSION= ${KDE_APPLICATIONS_VERSION} CATEGORIES= security kde kde-applications +PATCH_SITES= https://invent.kde.org/pim/kleopatra/-/commit/ +PATCHFILES+= 10b618703d74618c09b5e2b16e2db9d829aed93b.patch:-p1 # Prep for Qgpgme 2.0.0 +PATCHFILES+= b1f3736de7ed3c2d4f58aa454064a4cd0f423250.patch:-p1 # Prep for Qgpgme 2.0.0 +PATCHFILES+= d4f777ffa137148302ca39d5a2238c01c896605d.patch:-p1 # Prep for Qgpgme 2.0.0 + MAINTAINER= kde@FreeBSD.org COMMENT= Certificate manager for KDE WWW= https://www.kde.org/applications/utilities/kleopatra/ @@ -10,8 +15,8 @@ LIB_DEPENDS= libassuan.so:security/libassuan \ libboost_thread.so:devel/boost-libs \ libgpgme.so:security/gpgme \ libgpg-error.so:security/libgpg-error \ - libgpgmepp.so:security/gpgme-cpp \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libgpgmepp.so:security/gpgmepp \ + libqgpgmeqt6.so:security/qgpgme@qt6 USES= cmake compiler:c++11-lang desktop-file-utils gettext kde:6 \ qt:6 shared-mime-info tar:xz xorg diff --git a/security/kleopatra/distinfo b/security/kleopatra/distinfo index dcac84233c5f..f1f3b98769a3 100644 --- a/security/kleopatra/distinfo +++ b/security/kleopatra/distinfo @@ -1,3 +1,9 @@ -TIMESTAMP = 1749036950 +TIMESTAMP = 1750496363 SHA256 (KDE/release-service/25.04.2/kleopatra-25.04.2.tar.xz) = d155c416103fad173c361ea10f3ea1f6142297cc5be3598e9b062461336a3476 SIZE (KDE/release-service/25.04.2/kleopatra-25.04.2.tar.xz) = 2851360 +SHA256 (KDE/release-service/25.04.2/10b618703d74618c09b5e2b16e2db9d829aed93b.patch) = 75f5c94d85eadad74dcef21f66c019946217a051a9e8b90803d5eceaadb3fcd4 +SIZE (KDE/release-service/25.04.2/10b618703d74618c09b5e2b16e2db9d829aed93b.patch) = 1241 +SHA256 (KDE/release-service/25.04.2/b1f3736de7ed3c2d4f58aa454064a4cd0f423250.patch) = c2796b58683b07eabeae48a517192460c474a1722d7022e796b94df6553d933d +SIZE (KDE/release-service/25.04.2/b1f3736de7ed3c2d4f58aa454064a4cd0f423250.patch) = 1585 +SHA256 (KDE/release-service/25.04.2/d4f777ffa137148302ca39d5a2238c01c896605d.patch) = 0120d812f9a57cbd4a5a2718fbbc9acef090841701cb2c6b4f11a596986840e6 +SIZE (KDE/release-service/25.04.2/d4f777ffa137148302ca39d5a2238c01c896605d.patch) = 1573 diff --git a/security/libkleo/Makefile b/security/libkleo/Makefile index 10b3a01e7a07..ad3c33e5d9fb 100644 --- a/security/libkleo/Makefile +++ b/security/libkleo/Makefile @@ -10,8 +10,8 @@ BUILD_DEPENDS= ${LOCALBASE}/include/boost/range/algorithm.hpp:devel/boost-libs LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 \ - libgpgmepp.so:security/gpgme-cpp + libqgpgmeqt6.so:security/qgpgme@qt6 \ + libgpgmepp.so:security/gpgmepp RUN_DEPENDS= ${LOCALBASE}/bin/gmd5sum:sysutils/coreutils USES= cmake compiler:c++11-lang gettext kde:6 qt:6 tar:xz diff --git a/security/pecl-gnupg/files/patch-gnupg.c b/security/pecl-gnupg/files/patch-gnupg.c new file mode 100644 index 000000000000..fda8f01312fd --- /dev/null +++ b/security/pecl-gnupg/files/patch-gnupg.c @@ -0,0 +1,41 @@ +The trustlist feature has been deprecated in Gpgme since 2003 and was removed +in version 2.0.0. + +--- gnupg.c.orig 2025-06-02 18:54:02 UTC ++++ gnupg.c +@@ -341,7 +341,9 @@ phpc_function_entry gnupg_methods[] = { + PHP_GNUPG_FALIAS(addencryptkey, arginfo_gnupg_key_method) + PHP_GNUPG_FALIAS(adddecryptkey, arginfo_gnupg_key_passphrase_method) + PHP_GNUPG_FALIAS(deletekey, arginfo_gnupg_deletekey_method) ++#if GPGME_VERSION_NUMBER < 0x020000 /* GPGME < 2.0.0 */ + PHP_GNUPG_FALIAS(gettrustlist, arginfo_gnupg_pattern_method) ++#endif + PHP_GNUPG_FALIAS(listsignatures, arginfo_gnupg_keyid_method) + PHP_GNUPG_FALIAS(seterrormode, arginfo_gnupg_errmode_method) + PHPC_FE_END +@@ -483,7 +485,9 @@ static zend_function_entry gnupg_functions[] = { + PHP_FE(gnupg_addencryptkey, arginfo_gnupg_key_function) + PHP_FE(gnupg_adddecryptkey, arginfo_gnupg_key_passphrase_function) + PHP_FE(gnupg_deletekey, arginfo_gnupg_deletekey_function) ++#if GPGME_VERSION_NUMBER < 0x020000 /* GPGME < 2.0.0 */ + PHP_FE(gnupg_gettrustlist, arginfo_gnupg_pattern_function) ++#endif + PHP_FE(gnupg_listsignatures, arginfo_gnupg_keyid_function) + PHP_FE(gnupg_seterrormode, arginfo_gnupg_errmode_function) + PHPC_FE_END +@@ -1936,6 +1940,7 @@ PHP_FUNCTION(gnupg_deletekey) + } + /* }}} */ + ++#if GPGME_VERSION_NUMBER < 0x020000 /* GPGME < 2.0.0 */ + /* {{{ proto array gnupg_gettrustlist(string pattern) + * searching for trust items which match PATTERN + */ +@@ -1980,6 +1985,7 @@ PHP_FUNCTION(gnupg_gettrustlist) + } + } + /* }}} */ ++#endif + + /* {{{ proto array gnupg_listsignatures(string keyid) */ + PHP_FUNCTION(gnupg_listsignatures) diff --git a/security/pinentry/Makefile b/security/pinentry/Makefile index 3ba81d6e22ae..ba10a91f5e8a 100644 --- a/security/pinentry/Makefile +++ b/security/pinentry/Makefile @@ -36,7 +36,7 @@ NCURSES_RUN_DEPENDS= ${PINENTRY_NCURSES}:security/pinentry-curses EFL_DESC= EFL frontend PINENTRY_EFL= pinentry-efl # Due to a dependency loop that exists between security/pinentry-efl, -# devel/elf, graphics/poppler, security/gpgme-cpp, security/gpgme, +# devel/elf, graphics/poppler, security/gpgmepp, security/gpgme, # security/gnupg and security/pinentry, the user must install # pinentry-efl manually. See pkg-message.dep-loop for more details. #EFL_RUN_DEPENDS= ${PINENTRY_EFL}:security/pinentry-efl diff --git a/security/py-gpg/Makefile b/security/py-gpg/Makefile new file mode 100644 index 000000000000..582cb579dfc2 --- /dev/null +++ b/security/py-gpg/Makefile @@ -0,0 +1,43 @@ +PORTNAME= gpg +PORTVERSION= 2.0.0 +CATEGORIES= security python +MASTER_SITES= GNUPG/gpgmepy +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= gpgmepy-${PORTVERSION} + +MAINTAINER= jhale@FreeBSD.org +COMMENT= Gpgme Python bindings + +LICENSE= LGPL21+ +LICENSE_FILE= ${WRKSRC}/COPYING.LESSER + +BUILD_DEPENDS= swig:devel/swig \ + ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} + +LIB_DEPENDS= libassuan.so:security/libassuan \ + libgpg-error.so:security/libgpg-error \ + libgpgme.so:security/gpgme + +USES= gmake pkgconfig python:3.9+ tar:bzip2 +USE_PYTHON= autoplist pep517 + +GNU_CONFIGURE= yes +CONFIGURE_ENV= BSD_PYTHON="${PYTHON_CMD}" \ + BSD_PYTHON_VERSION="${PYTHON_VER}" +TEST_TARGET= check + +# Link src to the project name defined in pyproject.toml to deal with Python +# conventions. This is done in the project build system, but we're just using +# the configure part of the autotools and letting the FreeBSD python USES do +# the main build. +pre-build: + (cd ${BUILD_WRKSRC} && ${LN} -sf src ${PORTNAME}) + +# Avoid patching the src 'copystamp' target, which tries to copy several files +# to their original location, causing errors. ${BUILD_WRKSRC}/copystamp just +# has to exist for the port 'test' target to function for our purposes. +pre-test: + ${TOUCH} ${BUILD_WRKSRC}/copystamp + +.include diff --git a/security/py-gpg/distinfo b/security/py-gpg/distinfo new file mode 100644 index 000000000000..c0e4e0940c09 --- /dev/null +++ b/security/py-gpg/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1750492472 +SHA256 (gpgmepy-2.0.0.tar.bz2) = 07e1265648ff51da238c9af7a18b3f1dc7b0c66b4f21a72f27c74b396cd3336d +SIZE (gpgmepy-2.0.0.tar.bz2) = 575963 diff --git a/security/py-gpg/files/patch-configure.ac b/security/py-gpg/files/patch-configure.ac new file mode 100644 index 000000000000..d60e14dfd05d --- /dev/null +++ b/security/py-gpg/files/patch-configure.ac @@ -0,0 +1,19 @@ +The configure script automatically detects all versions of Python and builds +the bindings for each found version. This is a problem when building outside +of a clean environment since the ports system can only build a package for one +Python flavor at a time. The found versions of Python are overridden by +environment variables set in the port Makefile. + +--- configure.ac.orig 2025-06-17 08:21:23 UTC ++++ configure.ac +@@ -326,6 +326,10 @@ else + ], :, m4_if(mym4pythonver,[any],[],[python]mym4pythonver)) + ]) + ++ # Override the automatically found Pythons with the selected version from ports. ++ PYTHONS=$BSD_PYTHON ++ PYTHON_VERSIONS=$BSD_PYTHON_VERSION ++ + # Recover some values lost in the second attempt to find Python. + PYTHON="$(echo $PYTHONS | cut -d ' ' -f 1)" + PYTHON_VERSION="$(echo $PYTHON_VERSIONS | cut -d ' ' -f 1)" diff --git a/security/py-gpg/files/patch-pyproject.toml b/security/py-gpg/files/patch-pyproject.toml new file mode 100644 index 000000000000..f2a281e724c2 --- /dev/null +++ b/security/py-gpg/files/patch-pyproject.toml @@ -0,0 +1,13 @@ +Since we don't have a "swig" python package to look for, this breaks the +build. Swig detection, however, is done locally by the ports system and +the configure script. + +--- pyproject.toml.orig 2025-06-17 08:21:23 UTC ++++ pyproject.toml +@@ -59,5 +59,5 @@ content-type = "text/plain" + + [build-system] + # Minimum requirements for the build system to execute. +-requires = ["setuptools", "swig"] ++requires = ["setuptools"] + build-backend = "setuptools.build_meta" diff --git a/security/py-gpg/pkg-descr b/security/py-gpg/pkg-descr new file mode 100644 index 000000000000..331ded45d4d4 --- /dev/null +++ b/security/py-gpg/pkg-descr @@ -0,0 +1,3 @@ +Python bindings for the GpgME library, offering a high-level and curated +interface, as well as an idiomatic interface implemented as a shim, +automatically created using SWIG, on top of the low-level interface. diff --git a/security/py-gpgme/Makefile b/security/py-gpgme/Makefile deleted file mode 100644 index b79f2dd23518..000000000000 --- a/security/py-gpgme/Makefile +++ /dev/null @@ -1,16 +0,0 @@ -PORTREVISION= 0 -CATEGORIES= security python -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} - -MAINTAINER= jhale@FreeBSD.org -COMMENT= Gpgme Python bindings - -MASTERDIR= ${.CURDIR:H:H}/security/gpgme -PLIST= ${.CURDIR}/pkg-plist - -_GPGME_BINDING= python - -post-install: - ${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/gpg/_gpgme*.so - -.include "${MASTERDIR}/Makefile" diff --git a/security/py-gpgme/pkg-plist b/security/py-gpgme/pkg-plist deleted file mode 100644 index 8650d7182e84..000000000000 --- a/security/py-gpgme/pkg-plist +++ /dev/null @@ -1,89 +0,0 @@ -%%PYTHON_SITELIBDIR%%/gpg-%%VERSION%%-py%%PYTHON_VER%%.egg-info/PKG-INFO -%%PYTHON_SITELIBDIR%%/gpg-%%VERSION%%-py%%PYTHON_VER%%.egg-info/SOURCES.txt -%%PYTHON_SITELIBDIR%%/gpg-%%VERSION%%-py%%PYTHON_VER%%.egg-info/dependency_links.txt -%%PYTHON_SITELIBDIR%%/gpg-%%VERSION%%-py%%PYTHON_VER%%.egg-info/top_level.txt -%%PYTHON_SITELIBDIR%%/gpg/__init__.py -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/__init__%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/callbacks%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/callbacks%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/core%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/core%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/errors%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/errors%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/gpgme%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/gpgme%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/results%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/results%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/util%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/util%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/version%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/__pycache__/version%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/_gpgme%%PYTHON_TAG%%.so -%%PYTHON_SITELIBDIR%%/gpg/callbacks.py -%%PYTHON_SITELIBDIR%%/gpg/constants/__init__.py -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/__init__%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/create%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/create%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/event%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/event%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/import_type%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/import_type%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/keysign%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/keysign%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/md%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/md%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/pk%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/pk%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/protocol%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/protocol%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/sigsum%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/sigsum%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/status%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/status%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/validity%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/__pycache__/validity%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/create.py -%%PYTHON_SITELIBDIR%%/gpg/constants/data/__init__.py -%%PYTHON_SITELIBDIR%%/gpg/constants/data/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/data/__pycache__/__init__%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/data/__pycache__/encoding%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/data/__pycache__/encoding%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/data/encoding.py -%%PYTHON_SITELIBDIR%%/gpg/constants/event.py -%%PYTHON_SITELIBDIR%%/gpg/constants/import_type.py -%%PYTHON_SITELIBDIR%%/gpg/constants/keylist/__init__.py -%%PYTHON_SITELIBDIR%%/gpg/constants/keylist/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/keylist/__pycache__/__init__%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/keylist/__pycache__/mode%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/keylist/__pycache__/mode%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/keylist/mode.py -%%PYTHON_SITELIBDIR%%/gpg/constants/keysign.py -%%PYTHON_SITELIBDIR%%/gpg/constants/md.py -%%PYTHON_SITELIBDIR%%/gpg/constants/pk.py -%%PYTHON_SITELIBDIR%%/gpg/constants/protocol.py -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/__init__.py -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/__pycache__/__init__%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/__pycache__/mode%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/__pycache__/mode%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/__pycache__/notation%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/__pycache__/notation%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/mode.py -%%PYTHON_SITELIBDIR%%/gpg/constants/sig/notation.py -%%PYTHON_SITELIBDIR%%/gpg/constants/sigsum.py -%%PYTHON_SITELIBDIR%%/gpg/constants/status.py -%%PYTHON_SITELIBDIR%%/gpg/constants/tofu/__init__.py -%%PYTHON_SITELIBDIR%%/gpg/constants/tofu/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/tofu/__pycache__/__init__%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/tofu/__pycache__/policy%%PYTHON_TAG%%.opt-1.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/tofu/__pycache__/policy%%PYTHON_TAG%%.pyc -%%PYTHON_SITELIBDIR%%/gpg/constants/tofu/policy.py -%%PYTHON_SITELIBDIR%%/gpg/constants/validity.py -%%PYTHON_SITELIBDIR%%/gpg/core.py -%%PYTHON_SITELIBDIR%%/gpg/errors.py -%%PYTHON_SITELIBDIR%%/gpg/gpgme.py -%%PYTHON_SITELIBDIR%%/gpg/results.py -%%PYTHON_SITELIBDIR%%/gpg/util.py -%%PYTHON_SITELIBDIR%%/gpg/version.py diff --git a/security/qgpgme/Makefile b/security/qgpgme/Makefile new file mode 100644 index 000000000000..f45cb981a8f8 --- /dev/null +++ b/security/qgpgme/Makefile @@ -0,0 +1,55 @@ +PORTNAME= qgpgme +PORTVERSION= 2.0.0 +CATEGORIES= security +MASTER_SITES= GNUPG +PKGNAMESUFFIX= -${FLAVOR} + +MAINTAINER= jhale@FreeBSD.org +COMMENT= GnuPG Made Easy (GPGME) Qt bindings +WWW= https://gnupg.org/software/gpgme/index.html + +LICENSE= GPLv2+ +LICENSE_FILE= ${WRKSRC}/COPYING + +LIB_DEPENDS= libgpg-error.so:security/libgpg-error \ + libgpgme.so:security/gpgme \ + libgpgmepp.so:security/gpgmepp + +FLAVORS= qt6 qt5 +FLAVOR?= ${FLAVORS:[1]} + +USES= cmake:testing compiler:c++17-lang pkgconfig \ + qt:${FLAVOR:S|qt||} tar:xz +USE_LDCONFIG= yes +_USE_QT_qt5= core buildtools:build qmake:build testlib:test +_USE_QT_qt6= base +USE_QT= ${_USE_QT_${FLAVOR}} + +CMAKE_ON= BUILD_WITH_${FLAVOR:tu} +_CMAKE_OFF_qt5= BUILD_WITH_QT6 +_CMAKE_OFF_qt6= BUILD_WITH_QT5 +CMAKE_OFF= BUILD_TESTING \ + ${_CMAKE_OFF_${FLAVOR}} + +DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX} +_PLIST_SUB_qt5= QGPGME_CMAKE_SUFFIX="" \ + QGPGME_LIB_SUFFIX="" +_PLIST_SUB_qt6= QGPGME_CMAKE_SUFFIX="Qt6" \ + QGPGME_LIB_SUFFIX="qt6" +PLIST_SUB= QGPGME_INCLUDE_SUFFIX="${FLAVOR}" \ + ${_PLIST_SUB_${FLAVOR}} + +OPTIONS_DEFINE= DOXYGEN + +DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen \ + dot:graphics/graphviz +DOXYGEN_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Doxygen + +post-install-DOXYGEN-on: + @${MKDIR} ${STAGEDIR}${DOCSDIR}/html + cd ${BUILD_WRKSRC}/doc/html && \ + ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}/html + @${FIND} -P ${STAGEDIR}${DOCSDIR} -type f 2>/dev/null | \ + ${SED} -ne 's|^${STAGEDIR}${PREFIX}/||p' >> ${TMPPLIST} + +.include diff --git a/security/qgpgme/distinfo b/security/qgpgme/distinfo new file mode 100644 index 000000000000..86a926dc2776 --- /dev/null +++ b/security/qgpgme/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1750277661 +SHA256 (qgpgme-2.0.0.tar.xz) = 15645b2475cca6118eb2ed331b3a8d9442c9d4019c3846ba3f6d25321b4a61ad +SIZE (qgpgme-2.0.0.tar.xz) = 188552 diff --git a/security/qgpgme/pkg-descr b/security/qgpgme/pkg-descr new file mode 100644 index 000000000000..79dc974a22a3 --- /dev/null +++ b/security/qgpgme/pkg-descr @@ -0,0 +1,15 @@ +QGpgme provides a very high level Qt API around GpgMEpp, the GPGME C++ +bindings. + +There are two general concepts in QGpgME. Data abstraction through +GpgMEpp's Dataprovider interface and the Job pattern. + +Data can be provided with QByteArrayDataProvider or QIODeviceDataProvider +which can be constructed from their respective types. This means you can +pass a QFile, QProcess, QString, etc. directly to GPGME. + +To provide a stable API / ABI and because of historic reasons in libkleo +(where QGpgME was originally developed as an abstract crypto backend), +QGpgME only provides abstract interfaces as public API while the actual +implementation happens in the private QGpgME prefixed classes. + diff --git a/security/gpgme-qt/pkg-plist b/security/qgpgme/pkg-plist similarity index 94% rename from security/gpgme-qt/pkg-plist rename to security/qgpgme/pkg-plist index 5fcfbc386950..e4b0eb3711f3 100644 --- a/security/gpgme-qt/pkg-plist +++ b/security/qgpgme/pkg-plist @@ -19,7 +19,6 @@ include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/EncryptJob include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/ExportJob include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/FileListDataProvider include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/GpgCardJob -include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/HierarchicalKeyListJob include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/ImportFromKeyserverJob include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/ImportJob include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/Job @@ -69,7 +68,6 @@ include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/encryptjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/exportjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/filelistdataprovider.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/gpgcardjob.h -include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/hierarchicalkeylistjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/importfromkeyserverjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/importjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/job.h @@ -100,8 +98,12 @@ include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/wkdlookupjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/wkdlookupresult.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/wkdrefreshjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/wkspublishjob.h +lib/cmake/QGpgme%%QGPGME_CMAKE_SUFFIX%%/FindGpgme.cmake +lib/cmake/QGpgme%%QGPGME_CMAKE_SUFFIX%%/FindLibGpgError.cmake lib/cmake/QGpgme%%QGPGME_CMAKE_SUFFIX%%/QGpgme%%QGPGME_CMAKE_SUFFIX%%Config.cmake lib/cmake/QGpgme%%QGPGME_CMAKE_SUFFIX%%/QGpgme%%QGPGME_CMAKE_SUFFIX%%ConfigVersion.cmake +lib/cmake/QGpgme%%QGPGME_CMAKE_SUFFIX%%/QGpgme%%QGPGME_CMAKE_SUFFIX%%Targets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/QGpgme%%QGPGME_CMAKE_SUFFIX%%/QGpgme%%QGPGME_CMAKE_SUFFIX%%Targets.cmake lib/libqgpgme%%QGPGME_LIB_SUFFIX%%.so lib/libqgpgme%%QGPGME_LIB_SUFFIX%%.so.15 -lib/libqgpgme%%QGPGME_LIB_SUFFIX%%.so.15.6.2 +lib/libqgpgme%%QGPGME_LIB_SUFFIX%%.so.15.7.0 diff --git a/security/seahorse/Makefile b/security/seahorse/Makefile index 86fdecd11037..ea8134385c8b 100644 --- a/security/seahorse/Makefile +++ b/security/seahorse/Makefile @@ -5,6 +5,9 @@ CATEGORIES= security gnome MASTER_SITES= GNOME DIST_SUBDIR= gnome +PATCH_SITES= https://gitlab.gnome.org/GNOME/seahorse/-/commit/ +PATCHFILES+= aa68522cc696fa491ccfdff735b77bcf113168d0.patch:-p1 # Fix build with GpgME 2.0.0 + MAINTAINER= gnome@FreeBSD.org COMMENT= GNOME application for managing encryption keys (PGP, SSH) WWW= https://wiki.gnome.org/Apps/Seahorse diff --git a/security/seahorse/distinfo b/security/seahorse/distinfo index 2a5f46d36685..614fbb838ea0 100644 --- a/security/seahorse/distinfo +++ b/security/seahorse/distinfo @@ -1,3 +1,5 @@ -TIMESTAMP = 1633281709 +TIMESTAMP = 1750438455 SHA256 (gnome/seahorse-41.0.tar.xz) = e6eec09e810448295f547f18c1d5772b65c3edc1d9e5a2595f10b5dde68929f5 SIZE (gnome/seahorse-41.0.tar.xz) = 1371984 +SHA256 (gnome/aa68522cc696fa491ccfdff735b77bcf113168d0.patch) = 026b9ab0bce4b670cc3dd0910cdd5551e5965a32f07e19374c944fd7624bea78 +SIZE (gnome/aa68522cc696fa491ccfdff735b77bcf113168d0.patch) = 715 diff --git a/sysutils/dnf/Makefile b/sysutils/dnf/Makefile index ddc5c03a4792..ffde2094bd61 100644 --- a/sysutils/dnf/Makefile +++ b/sysutils/dnf/Makefile @@ -12,7 +12,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= libcomps>0:misc/libcomps \ libdnf>0:sysutils/libdnf \ rpm4>0:archivers/rpm4 \ - ${PYTHON_PKGNAMEPREFIX}gpgme>0:security/py-gpgme@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}gpg>=2.0.0:security/py-gpg@${PY_FLAVOR} USES= cmake gettext-tools python diff --git a/sysutils/kf5-kwallet/Makefile b/sysutils/kf5-kwallet/Makefile index efce12e80700..85109b9fc46f 100644 --- a/sysutils/kf5-kwallet/Makefile +++ b/sysutils/kf5-kwallet/Makefile @@ -12,9 +12,9 @@ LIB_DEPENDS= libassuan.so:security/libassuan \ libgcrypt.so:security/libgcrypt \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ + libgpgmepp.so:security/gpgmepp \ libqca-qt5.so:devel/qca@qt5 \ - libqgpgme.so:security/gpgme-qt@qt5 + libqgpgme.so:security/qgpgme@qt5 USES= cmake compiler:c++11-lib gettext kde:5 qt:5 tar:xz xorg USE_KDE= auth codecs config configwidgets coreaddons dbusaddons \ diff --git a/sysutils/kf6-kwallet/Makefile b/sysutils/kf6-kwallet/Makefile index 202b1b62d2f6..db64a57761d0 100644 --- a/sysutils/kf6-kwallet/Makefile +++ b/sysutils/kf6-kwallet/Makefile @@ -9,7 +9,7 @@ LIB_DEPENDS= libassuan.so:security/libassuan \ libgcrypt.so:security/libgcrypt \ libsecret-1.so:security/libsecret \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ + libgpgmepp.so:security/gpgmepp \ libqca-qt6.so:devel/qca@qt6 USES= cmake gettext-tools gl kde:6 pkgconfig qt:6 tar:xz xorg diff --git a/sysutils/plasma-pass/Makefile b/sysutils/plasma-pass/Makefile index fe41409493a1..5b311cdc7ef3 100644 --- a/sysutils/plasma-pass/Makefile +++ b/sysutils/plasma-pass/Makefile @@ -13,9 +13,9 @@ LICENSE_FILE= ${WRKSRC}/LICENSES/LGPL-2.1-or-later.txt LIB_DEPENDS= libassuan.so:security/libassuan \ libgpg-error.so:security/libgpg-error \ libgpgme.so:security/gpgme \ - libgpgmepp.so:security/gpgme-cpp \ + libgpgmepp.so:security/gpgmepp \ liboath.so:security/oath-toolkit \ - libqgpgmeqt6.so:security/gpgme-qt@qt6 + libqgpgmeqt6.so:security/qgpgme@qt6 RUN_DEPENDS= pass:sysutils/password-store USES= cmake compiler:c++20-lang gettext kde:6 qt:6 tar:xz