Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-03-20 Thread Landry Breuil
On Sun, Mar 18, 2018 at 12:43:41PM +, Stuart Henderson wrote:
> I think this one is post-release.

So, definitely post-release. You'll also need to bump all gpgme
consumers, since they all fail to package because the dependency
changes:

-@depend security/gpgme:gpgme-*:gpgme-1.9.0p0
+@depend security/gpgme,-main:gpgme-*:gpgme-1.10.0



Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-03-18 Thread Stuart Henderson
I think this one is post-release.


On 2018/03/18 10:07, Landry Breuil wrote:
> On Mon, Mar 05, 2018 at 08:13:03PM +0100, Rafael Sadowski wrote:
> > On Sun Feb 25, 2018 at 05:56:50PM +0100, Rafael Sadowski wrote:
> > > > 
> > > > Please find below a new diff which includes a (q)gpgme as FLAVOR. All
> > > > consumers build and package fine on amd64.
> > > > 
> > > > I got positive feedback from Caspar Schutijser (trojita mainatiner).
> > > > 
> > > > Ok?
> > > 
> > > 
> > > Updated diff  against current tree.
> > > 
> > > +DISTNAME =   gpgme-${VERSION}
> > > +PKGNAME-main =   qgpgme-${VERSION}
> > > +PKGNAME-qt = gpgme-qt-${VERSION}
> > ^
> > There was one small mistake in the latest diff. (s/qgpgme/gpgme/) New
> > diff below, apply, build, update fine on fresh -current.
> 
> Fails to build here in my bulk:
> 
> Making all in gpg
> gmake[3]: Entering directory 
> '/usr/obj/mfs/gpgme-1.10.0/gpgme-1.10.0/tests/gpg'
> echo no-force-v3-sigs > ./gpg.conf
> echo pinentry-program 
> /usr/obj/mfs/gpgme-1.10.0/gpgme-1.10.0/tests/gpg/pinentry > ./gpg-agent.conf
> gpgconf --kill all
> mkdir -p ./private-keys-v1.d
> for k in 13CD0F3BDF24BE53FE192D62F18737256FF6E4FD 
> 76F7E2B35832976B50A27A282D9B87E44577EB66 
> A0747D5F9425E6664F4FFBEED20FBCA79FDED2BD 
> 13CBE3758AFE42B5E5E2AE4CED27AFA455E3F87F 
> 7A030357C0F253A5BBCD282FFC4E521B37558F5C; do \
>   cp ./$k private-keys-v1.d/$k.key; \
> done
> echo x > ./private-keys-v1.d/gpg-sample.stamp
> gpg --batch --no-permission-warning \
>--import ./pubdemo.asc
> gmake[3]: gpg: Command not found
> 
> Needs BDEP on gpg1 ? or patching to  use gpg2 ?
> 
> Landry



Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-03-18 Thread Landry Breuil
On Mon, Mar 05, 2018 at 08:13:03PM +0100, Rafael Sadowski wrote:
> On Sun Feb 25, 2018 at 05:56:50PM +0100, Rafael Sadowski wrote:
> > > 
> > > Please find below a new diff which includes a (q)gpgme as FLAVOR. All
> > > consumers build and package fine on amd64.
> > > 
> > > I got positive feedback from Caspar Schutijser (trojita mainatiner).
> > > 
> > > Ok?
> > 
> > 
> > Updated diff  against current tree.
> > 
> > +DISTNAME = gpgme-${VERSION}
> > +PKGNAME-main = qgpgme-${VERSION}
> > +PKGNAME-qt =   gpgme-qt-${VERSION}
> ^
> There was one small mistake in the latest diff. (s/qgpgme/gpgme/) New
> diff below, apply, build, update fine on fresh -current.

Fails to build here in my bulk:

Making all in gpg
gmake[3]: Entering directory '/usr/obj/mfs/gpgme-1.10.0/gpgme-1.10.0/tests/gpg'
echo no-force-v3-sigs > ./gpg.conf
echo pinentry-program /usr/obj/mfs/gpgme-1.10.0/gpgme-1.10.0/tests/gpg/pinentry 
> ./gpg-agent.conf
gpgconf --kill all
mkdir -p ./private-keys-v1.d
for k in 13CD0F3BDF24BE53FE192D62F18737256FF6E4FD 
76F7E2B35832976B50A27A282D9B87E44577EB66 
A0747D5F9425E6664F4FFBEED20FBCA79FDED2BD 
13CBE3758AFE42B5E5E2AE4CED27AFA455E3F87F 
7A030357C0F253A5BBCD282FFC4E521B37558F5C; do \
  cp ./$k private-keys-v1.d/$k.key; \
done
echo x > ./private-keys-v1.d/gpg-sample.stamp
gpg --batch --no-permission-warning \
   --import ./pubdemo.asc
gmake[3]: gpg: Command not found

Needs BDEP on gpg1 ? or patching to  use gpg2 ?

Landry



Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-03-05 Thread Rafael Sadowski
On Sun Feb 25, 2018 at 05:56:50PM +0100, Rafael Sadowski wrote:
> > 
> > Please find below a new diff which includes a (q)gpgme as FLAVOR. All
> > consumers build and package fine on amd64.
> > 
> > I got positive feedback from Caspar Schutijser (trojita mainatiner).
> > 
> > Ok?
> 
> 
> Updated diff  against current tree.
> 
> +DISTNAME =   gpgme-${VERSION}
> +PKGNAME-main =   qgpgme-${VERSION}
> +PKGNAME-qt = gpgme-qt-${VERSION}
^
There was one small mistake in the latest diff. (s/qgpgme/gpgme/) New
diff below, apply, build, update fine on fresh -current.

Ok?

Index: mail/trojita/Makefile
===
RCS file: /cvs/ports/mail/trojita/Makefile,v
retrieving revision 1.25
diff -u -p -u -p -r1.25 Makefile
--- mail/trojita/Makefile   2 Dec 2017 12:44:33 -   1.25
+++ mail/trojita/Makefile   25 Feb 2018 16:03:20 -
@@ -3,7 +3,7 @@
 COMMENT =  fast Qt IMAP e-mail client
 
 DISTNAME = trojita-0.7
-REVISION = 4
+REVISION = 5
 
 SHARED_LIBS =  trojita_plugins 2.0 # 2.0
 
@@ -17,11 +17,9 @@ EXTRACT_SUFX =   .tar.xz
 # GPLv2+
 PERMIT_PACKAGE_CDROM = Yes
 
-WANTLIB += c m pthread z KF5Gpgmepp-pthread KF5QGpgme
-WANTLIB += Qt5Core Qt5DBus Qt5Gui Qt5Network Qt5Sql Qt5WebKit
-WANTLIB += Qt5WebKitWidgets Qt5Widgets qt5keychain gpg-error
-WANTLIB += gpgme mimetic assuan
-WANTLIB += ${COMPILER_LIBCXX}
+WANTLIB += ${COMPILER_LIBCXX} Qt5Core Qt5DBus Qt5Gui Qt5Network
+WANTLIB += Qt5Sql Qt5WebKit Qt5WebKitWidgets Qt5Widgets c gpgmepp
+WANTLIB += m mimetic qt5keychain z
 
 MODULES =  devel/cmake x11/qt5
 
@@ -33,14 +31,25 @@ RUN_DEPENDS =   devel/desktop-file-utils 
 
 LIB_DEPENDS =  mail/mimetic \
security/qtkeychain,qt5 \
-   x11/kde-applications/gpgmepp \
+   security/gpgme,,-qt \
x11/qt5/qtwebkit
 
 CONFIGURE_ENV +=   QTDIR="${MODQT_LIBDIR}"
-CONFIGURE_ARGS +=  -DWITH_RAGEL=OFF \
-   -DGIT_EXECUTABLE=""
+CONFIGURE_ARGS +=  -DGIT_EXECUTABLE="" \
+   -DWITH_CLEARTEXT_PLUGIN:Bool=ON \
+   -DWITH_DBUS:Bool=ON \
+   -DWITH_DESKTOP:Bool=ON \
+   -DWITH_QTKEYCHAIN_PLUGIN:Bool=ON \
+   -DWITH_RAGEL:Bool=OFF \
+   -DWITH_SHARED_PLUGINS:Bool=ON \
+   -DWITH_TESTS:Bool=ON \
+   -DWITH_ZLIB:Bool=ON \
+   -DWITH_QT5:Bool=ON
 
 TEST_IS_INTERACTIVE =  X11
+
+pre-configure:
+   ${SUBST_CMD} ${WRKDIST}/CMakeLists.txt
 
 post-configure:
ln -sf ${MODQT_LIBDIR}/bin/lconvert ${WRKDIR}/bin
Index: mail/trojita/patches/patch-CMakeLists_txt
===
RCS file: /cvs/ports/mail/trojita/patches/patch-CMakeLists_txt,v
retrieving revision 1.2
diff -u -p -u -p -r1.2 patch-CMakeLists_txt
--- mail/trojita/patches/patch-CMakeLists_txt   4 Sep 2016 14:03:00 -   
1.2
+++ mail/trojita/patches/patch-CMakeLists_txt   25 Feb 2018 16:03:20 -
@@ -1,7 +1,35 @@
 $OpenBSD: patch-CMakeLists_txt,v 1.2 2016/09/04 14:03:00 landry Exp $
 CMakeLists.txt.origWed Jun 15 09:17:23 2016
-+++ CMakeLists.txt Sat Aug 20 13:36:13 2016
-@@ -154,14 +154,6 @@ else()
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
 CMakeLists.txt
+@@ -61,7 +61,9 @@ trojita_option(WITH_ZLIB "Build with zlib library" AUT
+ trojita_option(WITH_SHARED_PLUGINS "Enable shared dynamic plugins" ON)
+ trojita_option(WITH_TESTS "Build tests" ON)
+ trojita_option(WITH_MIMETIC "Build with client-side MIME parsing" AUTO)
+-trojita_option(WITH_GPGMEPP "Build with the GpgME++ library for cryptography" 
AUTO)
++trojita_option(WITH_GPGMEPP "Use GpgME's native C++ bindings" ON)
++trojita_option(WITH_KF5_GPGMEPP "Use legacy discontinued GpgME++ library from 
KDE frameworks" OFF)
++ 
+ 
+ if(WIN32)
+ trojita_option(WITH_NSIS "Build Windows NSIS installer" AUTO 
"WITH_DESKTOP")
+@@ -94,8 +96,13 @@ trojita_plugin_option(WITH_QTKEYCHAIN_PLUGIN "Build Qt
+ trojita_find_package(Git "" "" "" "")
+ 
+ trojita_find_package(Mimetic "" 
"http://www.codesink.org/mimetic_mime_library.html; "C++ MIME Library" 
"Required for client-side MIME parsing" WITH_MIMETIC)
+-trojita_find_package(KF5Gpgmepp "" "https://quickgit.kde.org/?p=gpgmepp.git; 
"C++ bindings for gpgme" "Needed for encrypted/signed e-mails" WITH_GPGMEPP)
+-trojita_option(WITH_CRYPTO_MESSAGES "Enable support for encrypted messages" 
AUTO "WITH_MIMETIC;WITH_GPGMEPP")
++trojita_find_package(Gpgmepp "1.8.0" 
"https://gnupg.org/related_software/gpgme/index.html; "C++/Qt bindings for 
gpgme" "Needed for encrypted/signed e-mails" WITH_GPGMEPP)
++if(NOT WITH_GPGMEPP)
++trojita_find_package(KF5Gpgmepp "" 

Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-02-25 Thread Rafael Sadowski
On Wed Feb 21, 2018 at 04:37:02PM +0100, Rafael Sadowski wrote:
> On Fri Feb 16, 2018 at 11:57:44AM +, Stuart Henderson wrote:
> > On 2018/02/16 07:33, Rafael Sadowski wrote:
> > > Hi All,
> > > 
> > > tl;dr: x11/kde-applications/gpgmepp is dead upstream. Long live
> > > security/qgpgme.
> > > 
> > > Since Sep. 2016[1] the C++ bindings for GnuPG's GPGME library and
> > > the Qt Job API for GpgME++ (QGpgME) is part of the GPGME repository.
> > > 
> > > It wasn't a good idea to make an FLAVOR in security/gpgme; discussed 
> > > here[2].
> > 
> > That thread isn't about adding a FLAVOR but a PSEUDO_FLAVOR mechanism
> > (and defaults can be set as appropriate for arches which can't build qt5
> > - though I don't see why qt5 would need to be disabled by default on
> > arches which do support it unless there's a cyclical dependency;
> > otherwise just having the no_qt pseudo-flavour available should be
> > good enough there).
> > 
> > The part in there which is an actual problem for this is qt5.port.mk
> > changing the compiler. One way around that would be to use "base-clang
> > ports-clang ports-gcc" explicitly for gpgme. But gpgme is C not C++
> > anyway so just setting MODQT5_USE_CXX11=No might do the trick too.
> > 
> > jca said, "And I agree with you that requiring Qt5 to build gpgme in
> > bulk builds is not reasonable, as said in my previous mail." - but
> > that doesn't matter for full bulks (which will have qgpgme anyway)
> > only partial ones - and those are already a special enough case that
> > adding extra complexity to cope with them doesn't seem worthwhile
> > (especially when the builder can use ,no_qt in their build list entry).
> > 
> > > For this reason, you will find attached the diffs/tarball with the
> > > following content:
> > > 
> > > 1.) gpgme.1.10.diff
> > > Simple update to the latest stable version 1.10.0. Tested with neomutt
> > > and trojita ond amd64.
> > 
> > Looks sane and independent of the other parts, but I would like to know
> > that at least builds have been done with more of the ports depending on
> > it especially if enough changed to need a major bump.
> > 
> > > 2.) trojita_qgpgme.diff
> > > Patch trojita to play with qgpgme from GPGME based on the idea from
> > > archlinux[3]. Tested on amd64. All tests are green.
> > 
> > Is there any chance of upstream adopting these patches? (not a show
> > stopper but they're complex enough it would be nice not to have to
> > keep carrying and updating them).
> > 
> > > 3.) qgpgme.tar.gz
> > > Based on security/gpgme with the following changes:
> > > - Add --enable-languages='cpp qt'
> > > - remove all duplicated stuff with gpgme in post-install.
> > > - QGpgME is GPLv2 and not LGPL
> > > - Add security/gpgme=${VERSION} so keep in snyc with gpgme.
> > 
> > I'd be happier with this being part of a single gpgme port if the
> > compiler settings thing can be fixed as above. Apart from anything
> > else these fixed-version dependencies make it a pain to test updates
> > (also see irssi, dovecot) because you have to uninstall existing
> > packages to get the new ones built.
> > 
> 
> 
> Please find below a new diff which includes a (q)gpgme as FLAVOR. All
> consumers build and package fine on amd64.
> 
> I got positive feedback from Caspar Schutijser (trojita mainatiner).
> 
> Ok?


Updated diff  against current tree.

Index: mail/trojita/Makefile
===
RCS file: /cvs/ports/mail/trojita/Makefile,v
retrieving revision 1.25
diff -u -p -u -p -r1.25 Makefile
--- mail/trojita/Makefile   2 Dec 2017 12:44:33 -   1.25
+++ mail/trojita/Makefile   25 Feb 2018 16:03:20 -
@@ -3,7 +3,7 @@
 COMMENT =  fast Qt IMAP e-mail client
 
 DISTNAME = trojita-0.7
-REVISION = 4
+REVISION = 5
 
 SHARED_LIBS =  trojita_plugins 2.0 # 2.0
 
@@ -17,11 +17,9 @@ EXTRACT_SUFX =   .tar.xz
 # GPLv2+
 PERMIT_PACKAGE_CDROM = Yes
 
-WANTLIB += c m pthread z KF5Gpgmepp-pthread KF5QGpgme
-WANTLIB += Qt5Core Qt5DBus Qt5Gui Qt5Network Qt5Sql Qt5WebKit
-WANTLIB += Qt5WebKitWidgets Qt5Widgets qt5keychain gpg-error
-WANTLIB += gpgme mimetic assuan
-WANTLIB += ${COMPILER_LIBCXX}
+WANTLIB += ${COMPILER_LIBCXX} Qt5Core Qt5DBus Qt5Gui Qt5Network
+WANTLIB += Qt5Sql Qt5WebKit Qt5WebKitWidgets Qt5Widgets c gpgmepp
+WANTLIB += m mimetic qt5keychain z
 
 MODULES =  devel/cmake x11/qt5
 
@@ -33,14 +31,25 @@ RUN_DEPENDS =   devel/desktop-file-utils 
 
 LIB_DEPENDS =  mail/mimetic \
security/qtkeychain,qt5 \
-   x11/kde-applications/gpgmepp \
+   security/gpgme,,-qt \
x11/qt5/qtwebkit
 
 CONFIGURE_ENV +=   QTDIR="${MODQT_LIBDIR}"
-CONFIGURE_ARGS +=  -DWITH_RAGEL=OFF \
-   -DGIT_EXECUTABLE=""
+CONFIGURE_ARGS +=  -DGIT_EXECUTABLE="" \
+  

Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-02-21 Thread Rafael Sadowski
On Fri Feb 16, 2018 at 11:57:44AM +, Stuart Henderson wrote:
> On 2018/02/16 07:33, Rafael Sadowski wrote:
> > Hi All,
> > 
> > tl;dr: x11/kde-applications/gpgmepp is dead upstream. Long live
> > security/qgpgme.
> > 
> > Since Sep. 2016[1] the C++ bindings for GnuPG's GPGME library and
> > the Qt Job API for GpgME++ (QGpgME) is part of the GPGME repository.
> > 
> > It wasn't a good idea to make an FLAVOR in security/gpgme; discussed 
> > here[2].
> 
> That thread isn't about adding a FLAVOR but a PSEUDO_FLAVOR mechanism
> (and defaults can be set as appropriate for arches which can't build qt5
> - though I don't see why qt5 would need to be disabled by default on
> arches which do support it unless there's a cyclical dependency;
> otherwise just having the no_qt pseudo-flavour available should be
> good enough there).
> 
> The part in there which is an actual problem for this is qt5.port.mk
> changing the compiler. One way around that would be to use "base-clang
> ports-clang ports-gcc" explicitly for gpgme. But gpgme is C not C++
> anyway so just setting MODQT5_USE_CXX11=No might do the trick too.
> 
> jca said, "And I agree with you that requiring Qt5 to build gpgme in
> bulk builds is not reasonable, as said in my previous mail." - but
> that doesn't matter for full bulks (which will have qgpgme anyway)
> only partial ones - and those are already a special enough case that
> adding extra complexity to cope with them doesn't seem worthwhile
> (especially when the builder can use ,no_qt in their build list entry).
> 
> > For this reason, you will find attached the diffs/tarball with the
> > following content:
> > 
> > 1.) gpgme.1.10.diff
> > Simple update to the latest stable version 1.10.0. Tested with neomutt
> > and trojita ond amd64.
> 
> Looks sane and independent of the other parts, but I would like to know
> that at least builds have been done with more of the ports depending on
> it especially if enough changed to need a major bump.
> 
> > 2.) trojita_qgpgme.diff
> > Patch trojita to play with qgpgme from GPGME based on the idea from
> > archlinux[3]. Tested on amd64. All tests are green.
> 
> Is there any chance of upstream adopting these patches? (not a show
> stopper but they're complex enough it would be nice not to have to
> keep carrying and updating them).
> 
> > 3.) qgpgme.tar.gz
> > Based on security/gpgme with the following changes:
> > - Add --enable-languages='cpp qt'
> > - remove all duplicated stuff with gpgme in post-install.
> > - QGpgME is GPLv2 and not LGPL
> > - Add security/gpgme=${VERSION} so keep in snyc with gpgme.
> 
> I'd be happier with this being part of a single gpgme port if the
> compiler settings thing can be fixed as above. Apart from anything
> else these fixed-version dependencies make it a pain to test updates
> (also see irssi, dovecot) because you have to uninstall existing
> packages to get the new ones built.
> 


Please find below a new diff which includes a (q)gpgme as FLAVOR. All
consumers build and package fine on amd64.

I got positive feedback from Caspar Schutijser (trojita mainatiner).

Ok?

Index: mail/trojita/Makefile
===
RCS file: /cvs/ports/mail/trojita/Makefile,v
retrieving revision 1.25
diff -u -p -u -p -r1.25 Makefile
--- mail/trojita/Makefile   2 Dec 2017 12:44:33 -   1.25
+++ mail/trojita/Makefile   20 Feb 2018 20:16:38 -
@@ -3,7 +3,7 @@
 COMMENT =  fast Qt IMAP e-mail client
 
 DISTNAME = trojita-0.7
-REVISION = 4
+REVISION = 5
 
 SHARED_LIBS =  trojita_plugins 2.0 # 2.0
 
@@ -17,11 +17,9 @@ EXTRACT_SUFX =   .tar.xz
 # GPLv2+
 PERMIT_PACKAGE_CDROM = Yes
 
-WANTLIB += c m pthread z KF5Gpgmepp-pthread KF5QGpgme
-WANTLIB += Qt5Core Qt5DBus Qt5Gui Qt5Network Qt5Sql Qt5WebKit
-WANTLIB += Qt5WebKitWidgets Qt5Widgets qt5keychain gpg-error
-WANTLIB += gpgme mimetic assuan
-WANTLIB += ${COMPILER_LIBCXX}
+WANTLIB += ${COMPILER_LIBCXX} Qt5Core Qt5DBus Qt5Gui Qt5Network
+WANTLIB += Qt5Sql Qt5WebKit Qt5WebKitWidgets Qt5Widgets c gpgmepp
+WANTLIB += m mimetic qt5keychain z
 
 MODULES =  devel/cmake x11/qt5
 
@@ -33,14 +31,25 @@ RUN_DEPENDS =   devel/desktop-file-utils 
 
 LIB_DEPENDS =  mail/mimetic \
security/qtkeychain,qt5 \
-   x11/kde-applications/gpgmepp \
+   security/gpgme,,-qt \
x11/qt5/qtwebkit
 
 CONFIGURE_ENV +=   QTDIR="${MODQT_LIBDIR}"
-CONFIGURE_ARGS +=  -DWITH_RAGEL=OFF \
-   -DGIT_EXECUTABLE=""
+CONFIGURE_ARGS +=  -DGIT_EXECUTABLE="" \
+   -DWITH_CLEARTEXT_PLUGIN:Bool=ON \
+   -DWITH_DBUS:Bool=ON \
+   -DWITH_DESKTOP:Bool=ON \
+   -DWITH_QTKEYCHAIN_PLUGIN:Bool=ON \
+   

Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-02-17 Thread Caspar Schutijser
On Fri, Feb 16, 2018 at 11:57:44AM +, Stuart Henderson wrote:
> > 2.) trojita_qgpgme.diff
> > Patch trojita to play with qgpgme from GPGME based on the idea from
> > archlinux[3]. Tested on amd64. All tests are green.
> 
> Is there any chance of upstream adopting these patches? (not a show
> stopper but they're complex enough it would be nice not to have to
> keep carrying and updating them).

At least a part of that diff originates from upstream already so it's
probably a good idea to put this commit ID somewhere at the top of the
patch.

https://cgit.kde.org/trojita.git/commit/?id=e8393376969caf27b0c976d01645edd023c14df2



Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-02-17 Thread Stuart Henderson
On 2018/02/17 13:03, Rafael Sadowski wrote:
> On Fri Feb 16, 2018 at 11:57:44AM +, Stuart Henderson wrote:
> > I'd be happier with this being part of a single gpgme port if the
> > compiler settings thing can be fixed as above. Apart from anything
> > else these fixed-version dependencies make it a pain to test updates
> > (also see irssi, dovecot) because you have to uninstall existing
> > packages to get the new ones built.
> 
> I see your point but qgpgme unfortunately needs a C++11 compiler.

In which case, this applies:

> >One way around that would be to use "base-clang
> > ports-clang ports-gcc" explicitly for gpgme.



Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-02-17 Thread Rafael Sadowski
On Fri Feb 16, 2018 at 11:57:44AM +, Stuart Henderson wrote:
> On 2018/02/16 07:33, Rafael Sadowski wrote:
> > Hi All,
> > 
> > tl;dr: x11/kde-applications/gpgmepp is dead upstream. Long live
> > security/qgpgme.
> > 
> > Since Sep. 2016[1] the C++ bindings for GnuPG's GPGME library and
> > the Qt Job API for GpgME++ (QGpgME) is part of the GPGME repository.
> > 
> > It wasn't a good idea to make an FLAVOR in security/gpgme; discussed 
> > here[2].
> 
> That thread isn't about adding a FLAVOR but a PSEUDO_FLAVOR mechanism
> (and defaults can be set as appropriate for arches which can't build qt5
> - though I don't see why qt5 would need to be disabled by default on
> arches which do support it unless there's a cyclical dependency;
> otherwise just having the no_qt pseudo-flavour available should be
> good enough there).
> 
> The part in there which is an actual problem for this is qt5.port.mk
> changing the compiler. One way around that would be to use "base-clang
> ports-clang ports-gcc" explicitly for gpgme. But gpgme is C not C++
> anyway so just setting MODQT5_USE_CXX11=No might do the trick too.
> 
> jca said, "And I agree with you that requiring Qt5 to build gpgme in
> bulk builds is not reasonable, as said in my previous mail." - but
> that doesn't matter for full bulks (which will have qgpgme anyway)
> only partial ones - and those are already a special enough case that
> adding extra complexity to cope with them doesn't seem worthwhile
> (especially when the builder can use ,no_qt in their build list entry).
> 
> > For this reason, you will find attached the diffs/tarball with the
> > following content:
> > 
> > 1.) gpgme.1.10.diff
> > Simple update to the latest stable version 1.10.0. Tested with neomutt
> > and trojita ond amd64.
> 
> Looks sane and independent of the other parts, but I would like to know
> that at least builds have been done with more of the ports depending on
> it especially if enough changed to need a major bump.

https://abi-laboratory.pro/tracker/objects_report/gpgme/1.9.0/1.10.0/report.html

You're right, it doesn't need a major bump.

> 
> > 2.) trojita_qgpgme.diff
> > Patch trojita to play with qgpgme from GPGME based on the idea from
> > archlinux[3]. Tested on amd64. All tests are green.
> 
> Is there any chance of upstream adopting these patches? (not a show
> stopper but they're complex enough it would be nice not to have to
> keep carrying and updating them).

I'm trying to take care of it.

> 
> > 3.) qgpgme.tar.gz
> > Based on security/gpgme with the following changes:
> > - Add --enable-languages='cpp qt'
> > - remove all duplicated stuff with gpgme in post-install.
> > - QGpgME is GPLv2 and not LGPL
> > - Add security/gpgme=${VERSION} so keep in snyc with gpgme.
> 
> I'd be happier with this being part of a single gpgme port if the
> compiler settings thing can be fixed as above. Apart from anything
> else these fixed-version dependencies make it a pain to test updates
> (also see irssi, dovecot) because you have to uninstall existing
> packages to get the new ones built.

I see your point but qgpgme unfortunately needs a C++11 compiler.



Re: NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-02-16 Thread Stuart Henderson
On 2018/02/16 07:33, Rafael Sadowski wrote:
> Hi All,
> 
> tl;dr: x11/kde-applications/gpgmepp is dead upstream. Long live
> security/qgpgme.
> 
> Since Sep. 2016[1] the C++ bindings for GnuPG's GPGME library and
> the Qt Job API for GpgME++ (QGpgME) is part of the GPGME repository.
> 
> It wasn't a good idea to make an FLAVOR in security/gpgme; discussed here[2].

That thread isn't about adding a FLAVOR but a PSEUDO_FLAVOR mechanism
(and defaults can be set as appropriate for arches which can't build qt5
- though I don't see why qt5 would need to be disabled by default on
arches which do support it unless there's a cyclical dependency;
otherwise just having the no_qt pseudo-flavour available should be
good enough there).

The part in there which is an actual problem for this is qt5.port.mk
changing the compiler. One way around that would be to use "base-clang
ports-clang ports-gcc" explicitly for gpgme. But gpgme is C not C++
anyway so just setting MODQT5_USE_CXX11=No might do the trick too.

jca said, "And I agree with you that requiring Qt5 to build gpgme in
bulk builds is not reasonable, as said in my previous mail." - but
that doesn't matter for full bulks (which will have qgpgme anyway)
only partial ones - and those are already a special enough case that
adding extra complexity to cope with them doesn't seem worthwhile
(especially when the builder can use ,no_qt in their build list entry).

> For this reason, you will find attached the diffs/tarball with the
> following content:
> 
> 1.) gpgme.1.10.diff
> Simple update to the latest stable version 1.10.0. Tested with neomutt
> and trojita ond amd64.

Looks sane and independent of the other parts, but I would like to know
that at least builds have been done with more of the ports depending on
it especially if enough changed to need a major bump.

> 2.) trojita_qgpgme.diff
> Patch trojita to play with qgpgme from GPGME based on the idea from
> archlinux[3]. Tested on amd64. All tests are green.

Is there any chance of upstream adopting these patches? (not a show
stopper but they're complex enough it would be nice not to have to
keep carrying and updating them).

> 3.) qgpgme.tar.gz
> Based on security/gpgme with the following changes:
> - Add --enable-languages='cpp qt'
> - remove all duplicated stuff with gpgme in post-install.
> - QGpgME is GPLv2 and not LGPL
> - Add security/gpgme=${VERSION} so keep in snyc with gpgme.

I'd be happier with this being part of a single gpgme port if the
compiler settings thing can be fixed as above. Apart from anything
else these fixed-version dependencies make it a pain to test updates
(also see irssi, dovecot) because you have to uninstall existing
packages to get the new ones built.



NEW: security/qgpgme; Update security/gpgme, mail/trojita; remove: x11/kde-applications/gpgmepp

2018-02-15 Thread Rafael Sadowski
Hi All,

tl;dr: x11/kde-applications/gpgmepp is dead upstream. Long live
security/qgpgme.

Since Sep. 2016[1] the C++ bindings for GnuPG's GPGME library and
the Qt Job API for GpgME++ (QGpgME) is part of the GPGME repository.

It wasn't a good idea to make an FLAVOR in security/gpgme; discussed here[2].

For this reason, you will find attached the diffs/tarball with the
following content:

1.) gpgme.1.10.diff
Simple update to the latest stable version 1.10.0. Tested with neomutt
and trojita ond amd64.

2.) trojita_qgpgme.diff
Patch trojita to play with qgpgme from GPGME based on the idea from
archlinux[3]. Tested on amd64. All tests are green.

3.) qgpgme.tar.gz
Based on security/gpgme with the following changes:
- Add --enable-languages='cpp qt'
- remove all duplicated stuff with gpgme in post-install.
- QGpgME is GPLv2 and not LGPL
- Add security/gpgme=${VERSION} so keep in snyc with gpgme.

Would like to hear feedback from gpg/trojita users.

Please don't make me wait too long for an okay. I would like to continue
working on x11/kde-applications.

Best regards,

Rafael Sadowksi

[1]: https://mail.kde.org/pipermail/release-team/2016-September/009732.html
[2]: https://marc.info/?l=openbsd-ports=150955525131345=2
[3]: 
https://git.archlinux.org/svntogit/community.git/tree/trunk/trojita-gpgme.patch?h=packages/trojita
Index: Makefile
===
RCS file: /cvs/ports/security/gpgme/Makefile,v
retrieving revision 1.40
diff -u -p -u -p -r1.40 Makefile
--- Makefile30 Jan 2018 15:06:37 -  1.40
+++ Makefile15 Feb 2018 16:16:26 -
@@ -2,11 +2,11 @@
 
 COMMENT=   GnuPG Made Easy
 
-DISTNAME=  gpgme-1.9.0
-REVISION=  0
+# Keep in sync with qgpgme
+DISTNAME=  gpgme-1.10.0
 CATEGORIES=security devel
 
-SHARED_LIBS +=  gpgme21.0 # 29.0
+SHARED_LIBS +=  gpgme22.0 # 29.0
 
 HOMEPAGE=  https://www.gnupg.org/software/gpgme/index.html
 
Index: distinfo
===
RCS file: /cvs/ports/security/gpgme/distinfo,v
retrieving revision 1.13
diff -u -p -u -p -r1.13 distinfo
--- distinfo2 Dec 2017 12:44:33 -   1.13
+++ distinfo15 Feb 2018 16:16:26 -
@@ -1,2 +1,2 @@
-SHA256 (gpgme-1.9.0.tar.bz2) = Gyn+24v613XnDq+sWwWQYhaDstmGnbmUVo5kAfQDTOs=
-SIZE (gpgme-1.9.0.tar.bz2) = 1344222
+SHA256 (gpgme-1.10.0.tar.bz2) = Go/tEZfDuZw19AMGa7NEomIk0pKvwEjP38TM1WkKBpM=
+SIZE (gpgme-1.10.0.tar.bz2) = 1370162
Index: Makefile
===
RCS file: /cvs/ports/mail/trojita/Makefile,v
retrieving revision 1.25
diff -u -p -u -p -r1.25 Makefile
--- Makefile2 Dec 2017 12:44:33 -   1.25
+++ Makefile15 Feb 2018 16:23:48 -
@@ -3,7 +3,7 @@
 COMMENT =  fast Qt IMAP e-mail client
 
 DISTNAME = trojita-0.7
-REVISION = 4
+REVISION = 5
 
 SHARED_LIBS =  trojita_plugins 2.0 # 2.0
 
@@ -17,11 +17,9 @@ EXTRACT_SUFX =   .tar.xz
 # GPLv2+
 PERMIT_PACKAGE_CDROM = Yes
 
-WANTLIB += c m pthread z KF5Gpgmepp-pthread KF5QGpgme
-WANTLIB += Qt5Core Qt5DBus Qt5Gui Qt5Network Qt5Sql Qt5WebKit
-WANTLIB += Qt5WebKitWidgets Qt5Widgets qt5keychain gpg-error
-WANTLIB += gpgme mimetic assuan
-WANTLIB += ${COMPILER_LIBCXX}
+WANTLIB += ${COMPILER_LIBCXX} Qt5Core Qt5DBus Qt5Gui Qt5Network
+WANTLIB += Qt5Sql Qt5WebKit Qt5WebKitWidgets Qt5Widgets c gpgmepp
+WANTLIB += m mimetic qt5keychain z
 
 MODULES =  devel/cmake x11/qt5
 
@@ -33,14 +31,25 @@ RUN_DEPENDS =   devel/desktop-file-utils 
 
 LIB_DEPENDS =  mail/mimetic \
security/qtkeychain,qt5 \
-   x11/kde-applications/gpgmepp \
+   security/qgpgme \
x11/qt5/qtwebkit
 
 CONFIGURE_ENV +=   QTDIR="${MODQT_LIBDIR}"
-CONFIGURE_ARGS +=  -DWITH_RAGEL=OFF \
-   -DGIT_EXECUTABLE=""
+CONFIGURE_ARGS +=  -DGIT_EXECUTABLE="" \
+   -DWITH_CLEARTEXT_PLUGIN:Bool=ON \
+   -DWITH_DBUS:Bool=ON \
+   -DWITH_DESKTOP:Bool=ON \
+   -DWITH_QTKEYCHAIN_PLUGIN:Bool=ON \
+   -DWITH_RAGEL:Bool=OFF \
+   -DWITH_SHARED_PLUGINS:Bool=ON \
+   -DWITH_TESTS:Bool=ON \
+   -DWITH_ZLIB:Bool=ON \
+   -DWITH_QT5:Bool=ON
 
 TEST_IS_INTERACTIVE =  X11
+
+pre-configure:
+   ${SUBST_CMD} ${WRKDIST}/CMakeLists.txt
 
 post-configure:
ln -sf ${MODQT_LIBDIR}/bin/lconvert ${WRKDIR}/bin
Index: patches/patch-CMakeLists_txt
===
RCS file: /cvs/ports/mail/trojita/patches/patch-CMakeLists_txt,v
retrieving revision 1.2
diff -u -p -u -p -r1.2