public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2015-09-18 16:11 Kristian Fiskerstrand
  0 siblings, 0 replies; 11+ messages in thread
From: Kristian Fiskerstrand @ 2015-09-18 16:11 UTC (permalink / raw
  To: gentoo-commits

commit:     0de8be361ceb11c54aec127c23269e926515ed26
Author:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 18 16:08:02 2015 +0000
Commit:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
CommitDate: Fri Sep 18 16:08:51 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0de8be36

app-crypt/pinentry: Fix Qt4 support

Pinentry 0.9.6 introduced automatic detection of Qt version and added support
for Qt5 using automagic. This revbump removes Qt5 support and explicitly
require Qt4 as in previous versions until this can be set using USE flag
to get proper dependencies.

Additionally upstream renamed the pinentry-qt4 binary to pinentry-qt, so a
symlink is generated to ensure backwards compatibility.

Package-Manager: portage-2.2.20.1

 ...ry-0.9.6-Disable-Qt5-support-to-force-Qt4.patch | 27 +++++++
 app-crypt/pinentry/pinentry-0.9.6-r1.ebuild        | 93 ++++++++++++++++++++++
 2 files changed, 120 insertions(+)

diff --git a/app-crypt/pinentry/files/pinentry-0.9.6-Disable-Qt5-support-to-force-Qt4.patch b/app-crypt/pinentry/files/pinentry-0.9.6-Disable-Qt5-support-to-force-Qt4.patch
new file mode 100644
index 0000000..802e6ff
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-0.9.6-Disable-Qt5-support-to-force-Qt4.patch
@@ -0,0 +1,27 @@
+From 41aa99a1886fa07aad5716fb4905843ecfcbffb2 Mon Sep 17 00:00:00 2001
+From: Kristian Fiskerstrand <kristian.fiskerstrand@sumptuouscapital.com>
+Date: Fri, 18 Sep 2015 17:22:11 +0200
+Subject: [PATCH] Disable Qt5 support to force Qt4 for now
+
+Automagic applies in detecting Qt5 which makes dependency specification
+difficult. Disabling the auto-detection for Qt5 and keeping Qt4 for now
+---
+ m4/qt.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/m4/qt.m4 b/m4/qt.m4
+index 0a7ea99..e7abfcc 100644
+--- a/m4/qt.m4
++++ b/m4/qt.m4
+@@ -30,7 +30,7 @@ AC_DEFUN([FIND_QT],
+ [
+   PKG_CHECK_MODULES(PINENTRY_QT,
+                     Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0,
+-                    [have_qt5_libs="yes"],
++                    [have_qt5_libs="no"],
+                     [have_qt5_libs="no"])
+ 
+   if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
+-- 
+2.4.6
+

diff --git a/app-crypt/pinentry/pinentry-0.9.6-r1.ebuild b/app-crypt/pinentry/pinentry-0.9.6-r1.ebuild
new file mode 100644
index 0000000..95a660f
--- /dev/null
+++ b/app-crypt/pinentry/pinentry-0.9.6-r1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
+HOMEPAGE="http://gnupg.org/aegypten2/index.html"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="emacs gtk ncurses qt4 caps gnome-keyring static"
+
+RDEPEND="
+	>=dev-libs/libgpg-error-1.17
+	>=dev-libs/libassuan-2
+	app-eselect/eselect-pinentry
+	caps? ( sys-libs/libcap )
+	gtk? ( x11-libs/gtk+:2 )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt4? ( >=dev-qt/qtgui-4.4.1:4 )
+	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
+"
+DEPEND="${RDEPEND}
+	sys-devel/gettext
+	virtual/pkgconfig
+	gnome-keyring? ( app-crypt/libsecret )
+"
+REQUIRED_USE="
+	|| ( ncurses gtk qt4 )
+	gtk? ( !static )
+	qt4? ( !static )
+	static? ( ncurses )
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+src_prepare() {
+	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
+	epatch "${FILESDIR}/${P}-Disable-Qt5-support-to-force-Qt4.patch"
+	eautoreconf
+}
+
+src_configure() {
+	use static && append-ldflags -static
+	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
+
+	# Issues finding qt on multilib systems
+	export QTLIB="${QTDIR}/$(get_libdir)"
+
+	econf \
+		--enable-pinentry-tty \
+		$(use_enable emacs pinentry-emacs) \
+		$(use_enable gtk pinentry-gtk2) \
+		$(use_enable ncurses pinentry-curses) \
+		$(use_enable ncurses fallback-curses) \
+		$(use_enable qt4 pinentry-qt) \
+		$(use_with caps libcap) \
+		$(use_enable gnome-keyring libsecret) \
+		$(use_enable gnome-keyring pinentry-gnome3) \
+		MOC="$(qt4_get_bindir)"/moc
+}
+
+src_install() {
+	default
+	rm -f "${ED}"/usr/bin/pinentry || die
+
+	if use_enable qt4; then
+		dosym pinentry-qt /usr/bin/pinentry-qt4
+	fi
+}
+
+pkg_postinst() {
+	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
+		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
+		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
+		elog "The soft resource limit for memory locking specifies the limit an"
+		elog "unprivileged process may lock into memory. You can also use POSIX"
+		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
+		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
+		elog "your users."
+	fi
+
+	eselect pinentry update ifunset
+}
+
+pkg_postrm() {
+	eselect pinentry update ifunset
+}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2015-09-21 17:21 Kristian Fiskerstrand
  0 siblings, 0 replies; 11+ messages in thread
From: Kristian Fiskerstrand @ 2015-09-21 17:21 UTC (permalink / raw
  To: gentoo-commits

commit:     ffef7263386b2cafebe4eda082a9b95fbab85af9
Author:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 21 17:17:51 2015 +0000
Commit:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
CommitDate: Mon Sep 21 17:18:22 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ffef7263

app-crypt/pinentry: Remove flawed revision 0.9.6-r1

Package-Manager: portage-2.2.20.1

 ...ry-0.9.6-Disable-Qt5-support-to-force-Qt4.patch | 27 -------
 app-crypt/pinentry/pinentry-0.9.6-r1.ebuild        | 93 ----------------------
 2 files changed, 120 deletions(-)

diff --git a/app-crypt/pinentry/files/pinentry-0.9.6-Disable-Qt5-support-to-force-Qt4.patch b/app-crypt/pinentry/files/pinentry-0.9.6-Disable-Qt5-support-to-force-Qt4.patch
deleted file mode 100644
index 802e6ff..0000000
--- a/app-crypt/pinentry/files/pinentry-0.9.6-Disable-Qt5-support-to-force-Qt4.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 41aa99a1886fa07aad5716fb4905843ecfcbffb2 Mon Sep 17 00:00:00 2001
-From: Kristian Fiskerstrand <kristian.fiskerstrand@sumptuouscapital.com>
-Date: Fri, 18 Sep 2015 17:22:11 +0200
-Subject: [PATCH] Disable Qt5 support to force Qt4 for now
-
-Automagic applies in detecting Qt5 which makes dependency specification
-difficult. Disabling the auto-detection for Qt5 and keeping Qt4 for now
----
- m4/qt.m4 | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/m4/qt.m4 b/m4/qt.m4
-index 0a7ea99..e7abfcc 100644
---- a/m4/qt.m4
-+++ b/m4/qt.m4
-@@ -30,7 +30,7 @@ AC_DEFUN([FIND_QT],
- [
-   PKG_CHECK_MODULES(PINENTRY_QT,
-                     Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0,
--                    [have_qt5_libs="yes"],
-+                    [have_qt5_libs="no"],
-                     [have_qt5_libs="no"])
- 
-   if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
--- 
-2.4.6
-

diff --git a/app-crypt/pinentry/pinentry-0.9.6-r1.ebuild b/app-crypt/pinentry/pinentry-0.9.6-r1.ebuild
deleted file mode 100644
index 95a660f..0000000
--- a/app-crypt/pinentry/pinentry-0.9.6-r1.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="http://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="emacs gtk ncurses qt4 caps gnome-keyring static"
-
-RDEPEND="
-	>=dev-libs/libgpg-error-1.17
-	>=dev-libs/libassuan-2
-	app-eselect/eselect-pinentry
-	caps? ( sys-libs/libcap )
-	gtk? ( x11-libs/gtk+:2 )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt4? ( >=dev-qt/qtgui-4.4.1:4 )
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-"
-DEPEND="${RDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-	gnome-keyring? ( app-crypt/libsecret )
-"
-REQUIRED_USE="
-	|| ( ncurses gtk qt4 )
-	gtk? ( !static )
-	qt4? ( !static )
-	static? ( ncurses )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	epatch "${FILESDIR}/${P}-Disable-Qt5-support-to-force-Qt4.patch"
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	# Issues finding qt on multilib systems
-	export QTLIB="${QTDIR}/$(get_libdir)"
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_enable qt4 pinentry-qt) \
-		$(use_with caps libcap) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		MOC="$(qt4_get_bindir)"/moc
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-
-	if use_enable qt4; then
-		dosym pinentry-qt /usr/bin/pinentry-qt4
-	fi
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2015-09-29 19:31 Kristian Fiskerstrand
  0 siblings, 0 replies; 11+ messages in thread
From: Kristian Fiskerstrand @ 2015-09-29 19:31 UTC (permalink / raw
  To: gentoo-commits

commit:     e1b3fca42c9882378320d3eb8538eb05f283ef05
Author:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 29 19:25:20 2015 +0000
Commit:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
CommitDate: Tue Sep 29 19:28:00 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1b3fca4

app-crypt/pinentry-0.9.6-r5: Add Qt5 support

Package-Manager: portage-2.2.20.1

 ...try-0.9.6-add-disable-pinentry-qt5-option.patch |  55 +++++++++
 app-crypt/pinentry/pinentry-0.9.6-r5.ebuild        | 123 +++++++++++++++++++++
 2 files changed, 178 insertions(+)

diff --git a/app-crypt/pinentry/files/pinentry-0.9.6-add-disable-pinentry-qt5-option.patch b/app-crypt/pinentry/files/pinentry-0.9.6-add-disable-pinentry-qt5-option.patch
new file mode 100644
index 0000000..9522c2f
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-0.9.6-add-disable-pinentry-qt5-option.patch
@@ -0,0 +1,55 @@
+From 08ec9556c8a384ea7bb5d42d3f6aab6c2f6a8786 Mon Sep 17 00:00:00 2001
+From: Andre Heinecke <aheinecke@intevation.de>
+Date: Fri, 25 Sep 2015 15:56:55 +0200
+Subject: [PATCH] Add option to disable looking for qt5
+
+* m4/qt.m4 (FIND_QT): Add --disable-pinentry-qt5 option to
+disable qt5 support even if it is available.
+
+--
+As requested by Kristan F.
+
+GnuPG-bug-id: 2105
+---
+ m4/qt.m4 | 23 ++++++++++++++++-------
+ 1 file changed, 16 insertions(+), 7 deletions(-)
+
+diff --git a/m4/qt.m4 b/m4/qt.m4
+index 0a7ea99..0e47ec6 100644
+--- a/m4/qt.m4
++++ b/m4/qt.m4
+@@ -28,15 +28,24 @@ dnl The moc lookup code is based on libpoppler (rev. d821207)
+ 
+ AC_DEFUN([FIND_QT],
+ [
+-  PKG_CHECK_MODULES(PINENTRY_QT,
+-                    Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0,
+-                    [have_qt5_libs="yes"],
+-                    [have_qt5_libs="no"])
++  AC_ARG_ENABLE(pinentry-qt5,
++                AC_HELP_STRING([--disable-pinentry-qt5],
++                           [Don't use qt5 even if it is available.]),
++                enable_pinentry_qt5=$enableval,
++                enable_pinentry_qt5="try")
+ 
+-  if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
+-    PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -fpic"
+-  fi
++  have_qt5_libs="no";
++
++  if test "$enable_pinentry_qt5" != "no"; then
++    PKG_CHECK_MODULES(PINENTRY_QT,
++                      Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0,
++                      [have_qt5_libs="yes"],
++                      [have_qt5_libs="no"])
+ 
++    if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
++      PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -fpic"
++    fi
++  fi
+   if test "$have_qt5_libs" = "yes"; then
+     AC_CHECK_TOOL(MOC, moc)
+     AC_MSG_CHECKING([moc version])
+-- 
+2.1.4
+

diff --git a/app-crypt/pinentry/pinentry-0.9.6-r5.ebuild b/app-crypt/pinentry/pinentry-0.9.6-r5.ebuild
new file mode 100644
index 0000000..6e10cf8
--- /dev/null
+++ b/app-crypt/pinentry/pinentry-0.9.6-r5.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
+HOMEPAGE="http://gnupg.org/aegypten2/index.html"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="emacs gtk ncurses qt4 qt5 caps gnome-keyring static"
+
+CDEPEND="
+	>=dev-libs/libgpg-error-1.17
+	>=dev-libs/libassuan-2
+	>=dev-libs/libgcrypt-1.6.3
+	ncurses? ( sys-libs/ncurses:0= )
+	gtk? ( x11-libs/gtk+:2 )
+	qt4? (
+		>=dev-qt/qtgui-4.4.1:4
+	     )
+	qt5? (
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	     )
+	caps? ( sys-libs/libcap )
+	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
+	app-eselect/eselect-pinentry
+	gnome-keyring? ( app-crypt/libsecret )
+"
+
+DEPEND="${CDEPEND}
+	sys-devel/gettext
+	virtual/pkgconfig
+"
+
+RDEPEND="
+	${CDEPEND}
+	gnome-keyring? ( app-crypt/gcr )
+"
+
+REQUIRED_USE="
+	|| ( ncurses gtk qt4 )
+	gtk? ( !static )
+	qt4? ( !static )
+	qt5? ( !static )
+	static? ( ncurses )
+	?? ( qt4 qt5 )
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+src_prepare() {
+	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
+	epatch "${FILESDIR}/${P}-add-disable-pinentry-qt5-option.patch"
+	eautoreconf
+}
+
+src_configure() {
+	local myconf=()
+	use static && append-ldflags -static
+	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
+
+	QT_MOC=""
+	if use qt4; then
+		myconf+=( --enable-pinentry-qt
+			  --disable-pinentry-qt5
+			)
+		QT_MOC="$(qt4_get_bindir)"/moc
+		# Issues finding qt on multilib systems
+		export QTLIB="$(qt4_get_libdir)"
+	elif use qt5; then
+		myconf+=( --enable-pinentry-qt )
+		QT_MOC="$(qt5_get_bindir)"/moc
+		export QTLIB="$(qt5_get_libdir)"
+	else
+		myconf+=( --disable-pinentry-qt )
+	fi
+
+	econf \
+		--enable-pinentry-tty \
+		$(use_enable emacs pinentry-emacs) \
+		$(use_enable gtk pinentry-gtk2) \
+		$(use_enable ncurses pinentry-curses) \
+		$(use_enable ncurses fallback-curses) \
+		$(use_with caps libcap) \
+		$(use_enable gnome-keyring libsecret) \
+		$(use_enable gnome-keyring pinentry-gnome3) \
+		"${myconf[@]}" \
+		MOC="${QT_MOC}"
+}
+
+src_install() {
+	default
+	rm -f "${ED}"/usr/bin/pinentry || die
+
+	if use_enable qt4 || use_enable qt5; then
+		dosym pinentry-qt /usr/bin/pinentry-qt4
+	fi
+}
+
+pkg_postinst() {
+	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
+		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
+		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
+		elog "The soft resource limit for memory locking specifies the limit an"
+		elog "unprivileged process may lock into memory. You can also use POSIX"
+		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
+		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
+		elog "your users."
+	fi
+
+	eselect pinentry update ifunset
+}
+
+pkg_postrm() {
+	eselect pinentry update ifunset
+}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2016-12-10  8:22 Alon Bar-Lev
  0 siblings, 0 replies; 11+ messages in thread
From: Alon Bar-Lev @ 2016-12-10  8:22 UTC (permalink / raw
  To: gentoo-commits

commit:     296fee901f5ae0e155c3b6ed83491fd290eac8d3
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 10 08:21:52 2016 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Sat Dec 10 08:22:02 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=296fee90

app-crypt/pinentry - fix build issue

+EAP6

Bug: 602148

Package-Manager: portage-2.3.0

 .../pinentry/files/pinentry-1.0.0-build.patch      | 218 +++++++++++++++++++++
 app-crypt/pinentry/pinentry-1.0.0.ebuild           |  10 +-
 2 files changed, 225 insertions(+), 3 deletions(-)

diff --git a/app-crypt/pinentry/files/pinentry-1.0.0-build.patch b/app-crypt/pinentry/files/pinentry-1.0.0-build.patch
new file mode 100755
index 00000000..e367b85
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-1.0.0-build.patch
@@ -0,0 +1,218 @@
+From c5c7bee68730c9f66a27f9bb0d023480623a2bfb Mon Sep 17 00:00:00 2001
+From: Werner Koch <wk@gnupg.org>
+Date: Thu, 1 Dec 2016 09:10:08 +0100
+Subject: [PATCH] Fix linkage problem in tty and emacs pinentries.
+
+* emacs/pinentry-emacs.c (curses_cmd_handler): Remove var.
+* tty/pinentry-tty.c (curses_cmd_handler): Remove var.
+* pinentry/pinentry.c (flavor_flag): New local var.
+(pinentry_set_flavor_flag): New function.
+(cmd_getinfo): Use FLAVOR_FLAG for the "flavor" sub-command.
+* gnome3/pinentry-gnome3.c (main): Call pinentry_set_flavor_flag.
+* gtk+-2/pinentry-gtk-2.c (main): Ditto.
+* pinentry/pinentry-emacs.c (initial_emacs_cmd_handler): Ditto.
+* qt/main.cpp (main): Ditto.
+--
+
+Fixes-commit: e4e3a9cc88704dcffac660d0b92fd1ed8abecc11
+Fixes-commit: d126036671e7dd631babc118cb4113f723f15748
+Signed-off-by: Werner Koch <wk@gnupg.org>
+---
+ emacs/pinentry-emacs.c    |  4 ----
+ gnome3/pinentry-gnome3.c  |  3 +++
+ gtk+-2/pinentry-gtk-2.c   | 10 ++++++++--
+ pinentry/pinentry-emacs.c |  5 ++++-
+ pinentry/pinentry.c       | 34 ++++++++++++++++++----------------
+ pinentry/pinentry.h       |  4 ++++
+ qt/main.cpp               |  1 +
+ tty/pinentry-tty.c        |  3 ---
+ 8 files changed, 38 insertions(+), 26 deletions(-)
+
+diff --git a/emacs/pinentry-emacs.c b/emacs/pinentry-emacs.c
+index b6b3eb8..3c39a96 100644
+--- a/emacs/pinentry-emacs.c
++++ b/emacs/pinentry-emacs.c
+@@ -29,10 +29,6 @@
+ 
+ pinentry_cmd_handler_t pinentry_cmd_handler = emacs_cmd_handler;
+ 
+-/* needed to link cleanly; should never be used except for comparison
+- * in pinentry/pinentry.c's cmd_getinfo(): */
+-pinentry_cmd_handler_t curses_cmd_handler = NULL;
+-
+ 
+ \f
+ int
+diff --git a/gnome3/pinentry-gnome3.c b/gnome3/pinentry-gnome3.c
+index a040f9b..d5a49d6 100644
+--- a/gnome3/pinentry-gnome3.c
++++ b/gnome3/pinentry-gnome3.c
+@@ -517,18 +517,21 @@ main (int argc, char *argv[])
+       fprintf (stderr, "No $DBUS_SESSION_BUS_ADDRESS found,"
+                " falling back to curses\n");
+       pinentry_cmd_handler = curses_cmd_handler;
++      pinentry_set_flavor_flag ("curses");
+     }
+   else if (!pe_gcr_system_prompt_available ())
+     {
+       fprintf (stderr, "No Gcr System Prompter available,"
+                " falling back to curses\n");
+       pinentry_cmd_handler = curses_cmd_handler;
++      pinentry_set_flavor_flag ("curses");
+     }
+   else if (pe_gnome_screen_locked ())
+     {
+       fprintf (stderr, "GNOME screensaver is locked,"
+                " falling back to curses\n");
+       pinentry_cmd_handler = curses_cmd_handler;
++      pinentry_set_flavor_flag ("curses");
+     }
+ #endif
+ 
+diff --git a/gtk+-2/pinentry-gtk-2.c b/gtk+-2/pinentry-gtk-2.c
+index 6037533..473c4aa 100644
+--- a/gtk+-2/pinentry-gtk-2.c
++++ b/gtk+-2/pinentry-gtk-2.c
+@@ -938,10 +938,16 @@ main (int argc, char *argv[])
+   if (pinentry_have_display (argc, argv))
+     {
+       if (! gtk_init_check (&argc, &argv))
+-	pinentry_cmd_handler = curses_cmd_handler;
++        {
++          pinentry_cmd_handler = curses_cmd_handler;
++          pinentry_set_flavor_flag ("curses");
++        }
+     }
+   else
+-    pinentry_cmd_handler = curses_cmd_handler;
++    {
++      pinentry_cmd_handler = curses_cmd_handler;
++      pinentry_set_flavor_flag ("curses");
++    }
+ #else
+   gtk_init (&argc, &argv);
+ #endif
+diff --git a/pinentry/pinentry-emacs.c b/pinentry/pinentry-emacs.c
+index df12f1b..50ba406 100644
+--- a/pinentry/pinentry-emacs.c
++++ b/pinentry/pinentry-emacs.c
+@@ -644,7 +644,10 @@ initial_emacs_cmd_handler (pinentry_t pe)
+   if (emacs_socket < 0)
+     pinentry_cmd_handler = fallback_cmd_handler;
+   else
+-    pinentry_cmd_handler = emacs_cmd_handler;
++    {
++      pinentry_cmd_handler = emacs_cmd_handler;
++      pinentry_set_flavor_flag ("emacs");
++    }
+ 
+   return (* pinentry_cmd_handler) (pe);
+ }
+diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c
+index 322a651..a198fb3 100644
+--- a/pinentry/pinentry.c
++++ b/pinentry/pinentry.c
+@@ -67,6 +67,10 @@ static char this_pgmname[50];
+ 
+ struct pinentry pinentry;
+ 
++
++static const char *flavor_flag;
++
++
+ static void
+ pinentry_reset (int use_defaults)
+ {
+@@ -793,6 +797,16 @@ pinentry_parse_opts (int argc, char *argv[])
+     }
+ }
+ 
++
++/* Set the optional flag used with getinfo. */
++void
++pinentry_set_flavor_flag (const char *string)
++{
++  flavor_flag = string;
++}
++
++
++
+ \f
+ static gpg_error_t
+ option_handler (assuan_context_t ctx, const char *key, const char *value)
+@@ -1444,27 +1458,15 @@ cmd_getinfo (assuan_context_t ctx, char *line)
+     }
+   else if (!strcmp (line, "flavor"))
+     {
+-      const char *flags;
+-
+       if (!strncmp (this_pgmname, "pinentry-", 9) && this_pgmname[9])
+         s = this_pgmname + 9;
+       else
+         s = this_pgmname;
+ 
+-      if (0)
+-        ;
+-#ifdef INSIDE_EMACS
+-      else if (pinentry_cmd_handler == emacs_cmd_handler)
+-        flags = ":emacs";
+-#endif
+-#ifdef FALLBACK_CURSES
+-      else if (pinentry_cmd_handler == curses_cmd_handler)
+-        flags = ":curses";
+-#endif
+-      else
+-        flags = "";
+-
+-      snprintf (buffer, sizeof buffer, "%s%s", s, flags);
++      snprintf (buffer, sizeof buffer, "%s%s%s",
++                s,
++                flavor_flag? ":":"",
++                flavor_flag? flavor_flag : "");
+       buffer[sizeof buffer -1] = 0;
+       rc = assuan_send_data (ctx, buffer, strlen (buffer));
+     }
+diff --git a/pinentry/pinentry.h b/pinentry/pinentry.h
+index 01fb373..45d35ad 100644
+--- a/pinentry/pinentry.h
++++ b/pinentry/pinentry.h
+@@ -275,6 +275,10 @@ int pinentry_have_display (int argc, char **argv);
+    or version output is requested.  */
+ void pinentry_parse_opts (int argc, char *argv[]);
+ 
++/* Set the optional flag used with getinfo. */
++void pinentry_set_flavor_flag (const char *string);
++
++
+ \f
+ /* The caller must define this variable to process assuan commands.  */
+ extern pinentry_cmd_handler_t pinentry_cmd_handler;
+diff --git a/qt/main.cpp b/qt/main.cpp
+index 8284960..225c06b 100644
+--- a/qt/main.cpp
++++ b/qt/main.cpp
+@@ -308,6 +308,7 @@ main(int argc, char *argv[])
+ #ifdef FALLBACK_CURSES
+     if (!pinentry_have_display(argc, argv)) {
+         pinentry_cmd_handler = curses_cmd_handler;
++        pinentry_set_flavor_flag ("curses");
+     } else
+ #endif
+     {
+diff --git a/tty/pinentry-tty.c b/tty/pinentry-tty.c
+index 3d6cd5a..a509d79 100644
+--- a/tty/pinentry-tty.c
++++ b/tty/pinentry-tty.c
+@@ -556,9 +556,6 @@ tty_cmd_handler(pinentry_t pinentry)
+ 
+ pinentry_cmd_handler_t pinentry_cmd_handler = tty_cmd_handler;
+ 
+-/* needed to link cleanly; should never be used except for comparison
+- * in pinentry/pinentry.c's cmd_getinfo(): */
+-pinentry_cmd_handler_t curses_cmd_handler = NULL;
+ 
+ 
+ int
+-- 
+2.8.0.rc3
+

diff --git a/app-crypt/pinentry/pinentry-1.0.0.ebuild b/app-crypt/pinentry/pinentry-1.0.0.ebuild
index 707d159..2106259 100644
--- a/app-crypt/pinentry/pinentry-1.0.0.ebuild
+++ b/app-crypt/pinentry/pinentry-1.0.0.ebuild
@@ -2,7 +2,7 @@
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
-EAPI=5
+EAPI=6
 
 inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
 
@@ -55,9 +55,13 @@ REQUIRED_USE="
 
 DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
 
+PATCHES=(
+	"${FILESDIR}/${PN}-0.8.2-ncurses.patch"
+	"${FILESDIR}/${P}-build.patch"
+)
+
 src_prepare() {
-	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	epatch_user
+	default
 	eautoreconf
 }
 


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2017-01-18 14:52 Alon Bar-Lev
  0 siblings, 0 replies; 11+ messages in thread
From: Alon Bar-Lev @ 2017-01-18 14:52 UTC (permalink / raw
  To: gentoo-commits

commit:     f1424a382c5967750cc0a7992e45c7197adfd802
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 18 14:44:00 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Wed Jan 18 14:52:15 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1424a38

app-crypt/pinentry: cleanup

Package-Manager: portage-2.3.0

 app-crypt/pinentry/Manifest                        |   3 -
 app-crypt/pinentry/files/pinentry-0.8.2-texi.patch |  20 ----
 .../files/pinentry-0.9.0-accessibility.patch       |  82 --------------
 .../pinentry/files/pinentry-0.9.5-build.patch      |  52 ---------
 ...try-0.9.6-add-disable-pinentry-qt5-option.patch |  55 ---------
 .../pinentry/files/pinentry-1.0.0-build.patch      |   0
 app-crypt/pinentry/metadata.xml                    |   3 -
 app-crypt/pinentry/pinentry-0.9.0-r3.ebuild        | 101 -----------------
 app-crypt/pinentry/pinentry-0.9.0.ebuild           |  98 ----------------
 app-crypt/pinentry/pinentry-0.9.5.ebuild           |  89 ---------------
 app-crypt/pinentry/pinentry-0.9.6-r6.ebuild        | 123 ---------------------
 app-crypt/pinentry/pinentry-0.9.7.ebuild           | 122 --------------------
 12 files changed, 748 deletions(-)

diff --git a/app-crypt/pinentry/Manifest b/app-crypt/pinentry/Manifest
index 829fd4a..2fc1e8c 100644
--- a/app-crypt/pinentry/Manifest
+++ b/app-crypt/pinentry/Manifest
@@ -1,5 +1,2 @@
-DIST pinentry-0.9.0.tar.bz2 464272 SHA256 90045a07ab8e1a8e1ecf5d19b51691f195525e579fa5d71d7e92c120b05490ab SHA512 2cc53a5c3852edaf6e940228d9b43fe4709344eba5fe230b7afd22b2c0239d0b258917d75661d80590b2d61c6fe9dac8ad15a0b4a0a0e7fba90a9e1c07364edd WHIRLPOOL 3f77a8aa2d44c7206d877e31088ec927473441e61f06e788330545d75ac489e6e9d5bf0026b23d0824304dad54ce8e61c4571d186df7ad0edc2d644ca3af04ac
-DIST pinentry-0.9.5.tar.bz2 514677 SHA256 6a57fd3afc0d8aaa5599ffcb3ea4e7c42c113a181e8870122203ea018384688c SHA512 31a190cacf45fd3ff5128a6a1a9f317fb09850fd595d5985392ea306ed65fa9232e2203458a9989eaac3b6e9d07199e01557912051f00a9a395cd1db61b44c39 WHIRLPOOL 52e9664d7cf0e804bb14b9586a89aca4037d3324261ac8931ed26365c32ae038b45eca9b7b6637b46f9231ff2db6a9e0a96a611404e48659c7ba009b84c40727
-DIST pinentry-0.9.6.tar.bz2 432889 SHA256 2a1124e9097f24f866cab7982610677e222cea71be0a71a5566f223177e01e66 SHA512 c9f94e5ce5baf6779f6effc13f82c8c7f99d426dc232114fc4e11a8684eaefbaf4f60363db78cdb9f4c8e91ba7af40779ec1c5d7e01ee15b84c7de77ccf46e72 WHIRLPOOL 954d185ce60eeb28717dd5986c4bdfda0472944b99d52caa213919b4dd1368b2d2b4cff27bfc4158a0fd7f70f7f6549b3415de7ba33239ec9305a2e0e0bdcbc0
 DIST pinentry-0.9.7.tar.bz2 432978 SHA256 6398208394972bbf897c3325780195584682a0d0c164ca5a0da35b93b1e4e7b2 SHA512 9c5bc8f7246e8b0affd83fea6e64c47cecf6a12515a82dd2a6712b230306a9c3c97da4dbf6519ea98c85c88bf180a5a2b8c46cedcd594f224e5a08f2f0e35bf0 WHIRLPOOL eb3f72acf6990d61b4279de89a334e68c6052a3edef789aab2a421c2e489c1286b756bf3c9b8e6dd4cee3716e32b53d0e9d41db15a5069e010fe713dfba0596a
 DIST pinentry-1.0.0.tar.bz2 436930 SHA256 1672c2edc1feb036075b187c0773787b2afd0544f55025c645a71b4c2f79275a SHA512 f109236707c51871b5020ef807a551366461fafcfbe09bf8cda19d4b163a42cf622562b905ceb41429f1d648b3f3d27807538709da6a135b67f9888709eccd62 WHIRLPOOL 182d75e37afc40c02705ed6611354eb3429924df9062e64d42e511a5bdac5f7094b351aae406ef243e4a9d6f7db0eb897820bd23ed925b8787941342bc67d187

diff --git a/app-crypt/pinentry/files/pinentry-0.8.2-texi.patch b/app-crypt/pinentry/files/pinentry-0.8.2-texi.patch
deleted file mode 100644
index f036fa9..00000000
--- a/app-crypt/pinentry/files/pinentry-0.8.2-texi.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- doc/gpl.texi	2013-06-09 10:50:53.990704797 +1200
-+++ doc/gpl.texi	2013-06-09 10:51:25.310432565 +1200
-@@ -12,7 +12,7 @@
- of this license document, but changing it is not allowed.
- @end display
- 
--@appendixsubsec Preamble
-+@appendixsec Preamble
- 
-   The licenses for most software are designed to take away your
- freedom to share and change it.  By contrast, the GNU General Public
-@@ -63,7 +63,7 @@
- modification follow.
- 
- @iftex
--@appendixsubsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-+@appendixsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
- @end iftex
- @ifinfo
- @center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

diff --git a/app-crypt/pinentry/files/pinentry-0.9.0-accessibility.patch b/app-crypt/pinentry/files/pinentry-0.9.0-accessibility.patch
deleted file mode 100644
index 20d6130..00000000
--- a/app-crypt/pinentry/files/pinentry-0.9.0-accessibility.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-diff --git a/qt4/main.cpp b/qt4/main.cpp
-index 106999e..b2a69f2 100644
---- a/qt4/main.cpp
-+++ b/qt4/main.cpp
-@@ -217,8 +217,9 @@ qt_cmd_handler (pinentry_t pe)
-       for ( size_t i = 0 ; i < sizeof buttonLabels / sizeof *buttonLabels ; ++i )
-         if ( (buttons & buttonLabels[i].button) && !buttonLabels[i].label.isEmpty() ) {
-             box.button( buttonLabels[i].button )->setText( buttonLabels[i].label );
-+#ifndef QT_NO_ACCESSIBILITY
-             box.button( buttonLabels[i].button )->setAccessibleDescription ( buttonLabels[i].label );
--
-+#endif
-         }
- 
-       box.setIconPixmap( icon() );
-diff --git a/qt4/pinentryconfirm.cpp b/qt4/pinentryconfirm.cpp
-index dfbd19f..6b3d545 100644
---- a/qt4/pinentryconfirm.cpp
-+++ b/qt4/pinentryconfirm.cpp
-@@ -30,8 +30,10 @@ PinentryConfirm::PinentryConfirm(Icon icon, int timeout, const QString &title,
- 	connect(_timer, SIGNAL(timeout()), this, SLOT(slotTimeout()));
- 	_timer->start(timeout*1000);
-     }
-+#ifndef QT_NO_ACCESSIBILITY
-     setAccessibleDescription (desc);
-     setAccessibleName (title);
-+#endif
-     raiseWindow (this);
- }
- 
-diff --git a/qt4/pinentrydialog.cpp b/qt4/pinentrydialog.cpp
-index 3a6dacc..456f022 100644
---- a/qt4/pinentrydialog.cpp
-+++ b/qt4/pinentrydialog.cpp
-@@ -217,7 +217,9 @@ void PinEntryDialog::setDescription( const QString& txt )
- {
-   _desc->setVisible( !txt.isEmpty() );
-   _desc->setText( txt );
-+#ifndef QT_NO_ACCESSIBILITY
-   _desc->setAccessibleDescription ( txt );
-+#endif
-   _icon->setPixmap( icon() );
-   setError( QString::null );
- }
-@@ -231,7 +233,9 @@ void PinEntryDialog::setError( const QString& txt )
- {
-   if( !txt.isNull() )_icon->setPixmap( icon( QStyle::SP_MessageBoxCritical ) );
-   _error->setText( txt );
-+#ifndef QT_NO_ACCESSIBILITY
-   _error->setAccessibleDescription ( txt );
-+#endif
-   _error->setVisible( !txt.isEmpty() );
- }
- 
-@@ -264,14 +268,18 @@ QString PinEntryDialog::prompt() const
- void PinEntryDialog::setOkText( const QString& txt )
- {
-   _ok->setText( txt );
-+#ifndef QT_NO_ACCESSIBILITY
-   _ok->setAccessibleDescription ( txt );
-+#endif
-   _ok->setVisible( !txt.isEmpty() );
- }
- 
- void PinEntryDialog::setCancelText( const QString& txt )
- {
-   _cancel->setText( txt );
-+#ifndef QT_NO_ACCESSIBILITY
-   _cancel->setAccessibleDescription ( txt );
-+#endif
-   _cancel->setVisible( !txt.isEmpty() );
- }
- 
-@@ -279,7 +287,9 @@ void PinEntryDialog::setQualityBar( const QString& txt )
- {
-   if (_have_quality_bar) {
-     _quality_bar_label->setText( txt );
-+#ifndef QT_NO_ACCESSIBILITY
-     _quality_bar_label->setAccessibleDescription ( txt );
-+#endif
-   }
- }

diff --git a/app-crypt/pinentry/files/pinentry-0.9.5-build.patch b/app-crypt/pinentry/files/pinentry-0.9.5-build.patch
deleted file mode 100644
index 2ef9a67..00000000
--- a/app-crypt/pinentry/files/pinentry-0.9.5-build.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 29384a828ad83644df9093bb292194d1ac6e689b Mon Sep 17 00:00:00 2001
-From: Alon Bar-Lev <alon.barlev@gmail.com>
-Date: Sat, 18 Jul 2015 10:14:49 +0300
-Subject: [PATCH] build: add pkg-config initialization and modify detection
-
-add PKG_PROG_PKG_CONFIG as the qt4 detection and curses detection are
-already using pkg.m4 which require proper initialization.
-
-modify the manual detection of pkg-config based on the error value of
-the PKG_PROG_PKG_CONFIG and not the manual one as there is a conflict
-between empty and 'no'.
-
-Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
----
- configure.ac | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index b71cb17..7afa318 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -85,6 +85,7 @@ AC_PROG_RANLIB
- # for Qt and autoconf does does not allow that.
- AC_PROG_CXX
- AC_PROG_LN_S
-+PKG_PROG_PKG_CONFIG
- AC_CHECK_TOOL(WINDRES, windres, :)
- AC_CHECK_PROGS(GITLOG_TO_CHANGELOG, gitlog-to-changelog,
-                [build-aux/gitlog-to-changelog])
-@@ -430,8 +431,7 @@ AC_ARG_ENABLE(pinentry-gnome3,
- 
- dnl check for pkg-config
- if test "$pinentry_gtk_2" != "no" -o "$pinentry_gnome_3" != "no"; then
--        AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
--	if test x"${PKG_CONFIG}" = xno ; then
-+	if test -z "${PKG_CONFIG}"; then
- 		pinentry_gtk_2=no
- 		pinentry_gnome_3=no
- 	fi
-@@ -504,8 +504,7 @@ AC_ARG_ENABLE(libsecret,
- 
- dnl check for pkg-config
- if test "$libsecret" != "no"; then
--        AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
--	if test x"${PKG_CONFIG}" = xno ; then
-+	if test -z "${PKG_CONFIG}" ; then
- 		libsecret=no
- 	fi
- fi
--- 
-2.3.6
-

diff --git a/app-crypt/pinentry/files/pinentry-0.9.6-add-disable-pinentry-qt5-option.patch b/app-crypt/pinentry/files/pinentry-0.9.6-add-disable-pinentry-qt5-option.patch
deleted file mode 100644
index 9522c2f..00000000
--- a/app-crypt/pinentry/files/pinentry-0.9.6-add-disable-pinentry-qt5-option.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 08ec9556c8a384ea7bb5d42d3f6aab6c2f6a8786 Mon Sep 17 00:00:00 2001
-From: Andre Heinecke <aheinecke@intevation.de>
-Date: Fri, 25 Sep 2015 15:56:55 +0200
-Subject: [PATCH] Add option to disable looking for qt5
-
-* m4/qt.m4 (FIND_QT): Add --disable-pinentry-qt5 option to
-disable qt5 support even if it is available.
-
---
-As requested by Kristan F.
-
-GnuPG-bug-id: 2105
----
- m4/qt.m4 | 23 ++++++++++++++++-------
- 1 file changed, 16 insertions(+), 7 deletions(-)
-
-diff --git a/m4/qt.m4 b/m4/qt.m4
-index 0a7ea99..0e47ec6 100644
---- a/m4/qt.m4
-+++ b/m4/qt.m4
-@@ -28,15 +28,24 @@ dnl The moc lookup code is based on libpoppler (rev. d821207)
- 
- AC_DEFUN([FIND_QT],
- [
--  PKG_CHECK_MODULES(PINENTRY_QT,
--                    Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0,
--                    [have_qt5_libs="yes"],
--                    [have_qt5_libs="no"])
-+  AC_ARG_ENABLE(pinentry-qt5,
-+                AC_HELP_STRING([--disable-pinentry-qt5],
-+                           [Don't use qt5 even if it is available.]),
-+                enable_pinentry_qt5=$enableval,
-+                enable_pinentry_qt5="try")
- 
--  if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
--    PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -fpic"
--  fi
-+  have_qt5_libs="no";
-+
-+  if test "$enable_pinentry_qt5" != "no"; then
-+    PKG_CHECK_MODULES(PINENTRY_QT,
-+                      Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0,
-+                      [have_qt5_libs="yes"],
-+                      [have_qt5_libs="no"])
- 
-+    if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
-+      PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -fpic"
-+    fi
-+  fi
-   if test "$have_qt5_libs" = "yes"; then
-     AC_CHECK_TOOL(MOC, moc)
-     AC_MSG_CHECKING([moc version])
--- 
-2.1.4
-

diff --git a/app-crypt/pinentry/files/pinentry-1.0.0-build.patch b/app-crypt/pinentry/files/pinentry-1.0.0-build.patch
old mode 100755
new mode 100644

diff --git a/app-crypt/pinentry/metadata.xml b/app-crypt/pinentry/metadata.xml
index c66920c..46f4637 100644
--- a/app-crypt/pinentry/metadata.xml
+++ b/app-crypt/pinentry/metadata.xml
@@ -9,7 +9,4 @@
 		<email>crypto@gentoo.org</email>
 		<name>Crypto</name>
 	</maintainer>
-	<use>
-		<flag name="clipboard">Enable clipboard integration</flag>
-	</use>
 </pkgmetadata>

diff --git a/app-crypt/pinentry/pinentry-0.9.0-r3.ebuild b/app-crypt/pinentry/pinentry-0.9.0-r3.ebuild
deleted file mode 100644
index fae5698..00000000
--- a/app-crypt/pinentry/pinentry-0.9.0-r3.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit qmake-utils autotools multilib eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="http://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="clipboard gtk ncurses qt4 caps static"
-
-RDEPEND="
-	app-eselect/eselect-pinentry
-	caps? ( sys-libs/libcap )
-	gtk? ( x11-libs/gtk+:2 )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt4? ( >=dev-qt/qtgui-4.4.1:4 )
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-"
-DEPEND="${RDEPEND}
-	sys-devel/gettext
-	gtk? ( virtual/pkgconfig )
-	qt4? ( virtual/pkgconfig )
-	ppc-aix? ( dev-libs/gnulib )
-"
-REQUIRED_USE="
-	|| ( ncurses gtk qt4 )
-	gtk? ( !static )
-	qt4? ( !static )
-	static? ( ncurses )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
-	if use qt4; then
-		local f
-		for f in qt4/*.moc; do
-			"$(qt4_get_bindir)"/moc ${f/.moc/.h} > ${f} || die
-		done
-	fi
-	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	epatch "${FILESDIR}/${PN}-0.8.2-texi.patch"
-	epatch "${FILESDIR}/${PN}-0.9.0-accessibility.patch"
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	if [[ ${CHOST} == *-aix* ]] ; then
-		append-flags -I"${EPREFIX}/usr/$(get_libdir)/gnulib/include"
-		append-ldflags -L"${EPREFIX}/usr/$(get_libdir)/gnulib/$(get_libdir)"
-		append-libs -lgnu
-	fi
-
-	# Issues finding qt on multilib systems
-	export QTLIB="${QTDIR}/$(get_libdir)"
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_enable qt4 pinentry-qt4) \
-		$(use qt4 && use_enable clipboard pinentry-qt4-clipboard) \
-		$(use_with caps libcap)
-}
-
-src_compile() {
-	emake AR="$(tc-getAR)"
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}

diff --git a/app-crypt/pinentry/pinentry-0.9.0.ebuild b/app-crypt/pinentry/pinentry-0.9.0.ebuild
deleted file mode 100644
index fe2c6af..00000000
--- a/app-crypt/pinentry/pinentry-0.9.0.ebuild
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools multilib eutils flag-o-matic
-
-DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="http://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="gtk ncurses qt4 caps static"
-
-RDEPEND="
-	app-eselect/eselect-pinentry
-	caps? ( sys-libs/libcap )
-	gtk? ( x11-libs/gtk+:2 )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt4? ( >=dev-qt/qtgui-4.4.1:4 )
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-"
-DEPEND="${RDEPEND}
-	sys-devel/gettext
-	gtk? ( virtual/pkgconfig )
-	qt4? ( virtual/pkgconfig )
-	ppc-aix? ( dev-libs/gnulib )
-"
-REQUIRED_USE="
-	|| ( ncurses gtk qt4 )
-	gtk? ( !static )
-	qt4? ( !static )
-	static? ( ncurses )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
-	if use qt4; then
-		local f
-		for f in qt4/*.moc; do
-			"${EPREFIX}"/usr/bin/moc ${f/.moc/.h} > ${f} || die
-		done
-	fi
-	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	epatch "${FILESDIR}/${PN}-0.8.2-texi.patch"
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-
-	if [[ ${CHOST} == *-aix* ]] ; then
-		append-flags -I"${EPREFIX}/usr/$(get_libdir)/gnulib/include"
-		append-ldflags -L"${EPREFIX}/usr/$(get_libdir)/gnulib/$(get_libdir)"
-		append-libs -lgnu
-	fi
-
-	# Issues finding qt on multilib systems
-	export QTLIB="${QTDIR}/$(get_libdir)"
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_enable qt4 pinentry-qt4) \
-		$(use_with caps libcap)
-}
-
-src_compile() {
-	emake AR="$(tc-getAR)"
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}

diff --git a/app-crypt/pinentry/pinentry-0.9.5.ebuild b/app-crypt/pinentry/pinentry-0.9.5.ebuild
deleted file mode 100644
index 4c55e52..00000000
--- a/app-crypt/pinentry/pinentry-0.9.5.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="http://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="clipboard emacs gtk ncurses qt4 caps gnome-keyring static"
-
-RDEPEND="
-	>=dev-libs/libgpg-error-1.17
-	>=dev-libs/libassuan-2
-	app-eselect/eselect-pinentry
-	caps? ( sys-libs/libcap )
-	gtk? ( x11-libs/gtk+:2 )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt4? ( >=dev-qt/qtgui-4.4.1:4 )
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-"
-DEPEND="${RDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-	gnome-keyring? ( app-crypt/libsecret )
-"
-REQUIRED_USE="
-	|| ( ncurses gtk qt4 )
-	gtk? ( !static )
-	qt4? ( !static )
-	static? ( ncurses )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	epatch "${FILESDIR}/${P}-build.patch"
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	# Issues finding qt on multilib systems
-	export QTLIB="${QTDIR}/$(get_libdir)"
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_enable qt4 pinentry-qt4) \
-		$(use qt4 && use_enable clipboard pinentry-qt4-clipboard) \
-		$(use_with caps libcap) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		MOC="$(qt4_get_bindir)"/moc
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}

diff --git a/app-crypt/pinentry/pinentry-0.9.6-r6.ebuild b/app-crypt/pinentry/pinentry-0.9.6-r6.ebuild
deleted file mode 100644
index ea0df55..00000000
--- a/app-crypt/pinentry/pinentry-0.9.6-r6.ebuild
+++ /dev/null
@@ -1,123 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="http://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="emacs gtk ncurses qt4 qt5 caps gnome-keyring static"
-
-CDEPEND="
-	>=dev-libs/libgpg-error-1.17
-	>=dev-libs/libassuan-2
-	>=dev-libs/libgcrypt-1.6.3
-	ncurses? ( sys-libs/ncurses:0= )
-	gtk? ( x11-libs/gtk+:2 )
-	qt4? (
-		>=dev-qt/qtgui-4.4.1:4
-	     )
-	qt5? (
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	     )
-	caps? ( sys-libs/libcap )
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-	app-eselect/eselect-pinentry
-	gnome-keyring? ( app-crypt/libsecret )
-"
-
-DEPEND="${CDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-RDEPEND="
-	${CDEPEND}
-	gnome-keyring? ( app-crypt/gcr )
-"
-
-REQUIRED_USE="
-	|| ( ncurses gtk qt4 qt5 )
-	gtk? ( !static )
-	qt4? ( !static )
-	qt5? ( !static )
-	static? ( ncurses )
-	?? ( qt4 qt5 )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	epatch "${FILESDIR}/${P}-add-disable-pinentry-qt5-option.patch"
-	eautoreconf
-}
-
-src_configure() {
-	local myconf=()
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	QT_MOC=""
-	if use qt4; then
-		myconf+=( --enable-pinentry-qt
-			  --disable-pinentry-qt5
-			)
-		QT_MOC="$(qt4_get_bindir)"/moc
-		# Issues finding qt on multilib systems
-		export QTLIB="$(qt4_get_libdir)"
-	elif use qt5; then
-		myconf+=( --enable-pinentry-qt )
-		QT_MOC="$(qt5_get_bindir)"/moc
-		export QTLIB="$(qt5_get_libdir)"
-	else
-		myconf+=( --disable-pinentry-qt )
-	fi
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_with caps libcap) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		"${myconf[@]}" \
-		MOC="${QT_MOC}"
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-
-	if use qt4 || use qt5; then
-		dosym pinentry-qt /usr/bin/pinentry-qt4
-	fi
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}

diff --git a/app-crypt/pinentry/pinentry-0.9.7.ebuild b/app-crypt/pinentry/pinentry-0.9.7.ebuild
deleted file mode 100644
index 931d7f2..00000000
--- a/app-crypt/pinentry/pinentry-0.9.7.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="http://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="emacs gtk ncurses qt4 qt5 caps gnome-keyring static"
-
-CDEPEND="
-	>=dev-libs/libgpg-error-1.17
-	>=dev-libs/libassuan-2.1
-	>=dev-libs/libgcrypt-1.6.3
-	ncurses? ( sys-libs/ncurses:0= )
-	gtk? ( x11-libs/gtk+:2 )
-	qt4? (
-		>=dev-qt/qtgui-4.4.1:4
-	     )
-	qt5? (
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	     )
-	caps? ( sys-libs/libcap )
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-	app-eselect/eselect-pinentry
-	gnome-keyring? ( app-crypt/libsecret )
-"
-
-DEPEND="${CDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-RDEPEND="
-	${CDEPEND}
-	gnome-keyring? ( app-crypt/gcr )
-"
-
-REQUIRED_USE="
-	|| ( ncurses gtk qt4 qt5 )
-	gtk? ( !static )
-	qt4? ( !static )
-	qt5? ( !static )
-	static? ( ncurses )
-	?? ( qt4 qt5 )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	eautoreconf
-}
-
-src_configure() {
-	local myconf=()
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	QT_MOC=""
-	if use qt4; then
-		myconf+=( --enable-pinentry-qt
-			  --disable-pinentry-qt5
-			)
-		QT_MOC="$(qt4_get_bindir)"/moc
-		# Issues finding qt on multilib systems
-		export QTLIB="$(qt4_get_libdir)"
-	elif use qt5; then
-		myconf+=( --enable-pinentry-qt )
-		QT_MOC="$(qt5_get_bindir)"/moc
-		export QTLIB="$(qt5_get_libdir)"
-	else
-		myconf+=( --disable-pinentry-qt )
-	fi
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_with caps libcap) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		"${myconf[@]}" \
-		MOC="${QT_MOC}"
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-
-	if use qt4 || use qt5; then
-		dosym pinentry-qt /usr/bin/pinentry-qt4
-	fi
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2017-10-16 21:14 Kristian Fiskerstrand
  0 siblings, 0 replies; 11+ messages in thread
From: Kristian Fiskerstrand @ 2017-10-16 21:14 UTC (permalink / raw
  To: gentoo-commits

commit:     2fabf9cabaf1f4bab9f924afa116d1c7d84680b9
Author:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 16 21:14:28 2017 +0000
Commit:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
CommitDate: Mon Oct 16 21:14:43 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2fabf9ca

app-crypt/pinentry: Fix grabbing issue in awesomewm

Bug: https://bugs.gentoo.org/609678
Package-Manager: Portage-2.3.8, Repoman-2.3.3

 ...isable-tooltips-in-keyboard-grabbing-mode.patch | 47 ++++++++++++++++++++++
 ...nentry-1.0.0-gtk2-Fix-a-problem-with-fvwm.patch | 47 ++++++++++++++++++++++
 ...ry-1.0.0-r1.ebuild => pinentry-1.0.0-r2.ebuild} |  2 +
 3 files changed, 96 insertions(+)

diff --git a/app-crypt/pinentry/files/pinentry-1.0.0-Disable-tooltips-in-keyboard-grabbing-mode.patch b/app-crypt/pinentry/files/pinentry-1.0.0-Disable-tooltips-in-keyboard-grabbing-mode.patch
new file mode 100644
index 00000000000..7724d1beae8
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-1.0.0-Disable-tooltips-in-keyboard-grabbing-mode.patch
@@ -0,0 +1,47 @@
+From 1590b664d88be8386a4664c2994b685187d1eb25 Mon Sep 17 00:00:00 2001
+From: Damien Goutte-Gattat <dgouttegattat@incenp.org>
+Date: Thu, 3 Aug 2017 22:56:49 +0200
+Subject: [PATCH 1/6] gtk: Disable tooltips in keyboard-grabbing mode.
+
+* gtk+-2:/pinentry-gtk-2.c (show_hide_button): Do not show the
+tooltip if we attempt to grab the keyboard.
+(create_window): Likewise.
+--
+
+For unclear reasons, those tooltips may interfere with grabbing
+under some tiling window managers.
+
+GnuPG-bug-id: 3297
+Signed-off-by: Damien Goutte-Gattat <dgouttegattat@incenp.org>
+---
+ gtk+-2/pinentry-gtk-2.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/gtk+-2/pinentry-gtk-2.c b/gtk+-2/pinentry-gtk-2.c
+index d467ec5..f17a702 100644
+--- a/gtk+-2/pinentry-gtk-2.c
++++ b/gtk+-2/pinentry-gtk-2.c
+@@ -516,7 +516,10 @@ show_hide_button_toggled (GtkWidget *widget, gpointer data)
+     }
+ 
+   gtk_label_set_markup (GTK_LABEL(label), text);
+-  gtk_widget_set_tooltip_text (GTK_WIDGET(button), tooltip);
++  if (!pinentry->grab)
++    {
++      gtk_widget_set_tooltip_text (GTK_WIDGET(button), tooltip);
++    }
+   g_free (tooltip);
+ }
+ 
+@@ -736,7 +739,7 @@ create_window (pinentry_t ctx)
+ 	  gtk_progress_bar_set_text (GTK_PROGRESS_BAR (qualitybar),
+ 				     QUALITYBAR_EMPTY_TEXT);
+ 	  gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (qualitybar), 0.0);
+-          if (pinentry->quality_bar_tt)
++          if (pinentry->quality_bar_tt && !pinentry->grab)
+ 	    {
+ #if !GTK_CHECK_VERSION (2, 12, 0)
+ 	      gtk_tooltips_set_tip (GTK_TOOLTIPS (tooltips), qualitybar,
+-- 
+2.13.6
+

diff --git a/app-crypt/pinentry/files/pinentry-1.0.0-gtk2-Fix-a-problem-with-fvwm.patch b/app-crypt/pinentry/files/pinentry-1.0.0-gtk2-Fix-a-problem-with-fvwm.patch
new file mode 100644
index 00000000000..f7476de1ff6
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-1.0.0-gtk2-Fix-a-problem-with-fvwm.patch
@@ -0,0 +1,47 @@
+From b0e0bdeac5d40ca645afc9017778b39a26303523 Mon Sep 17 00:00:00 2001
+From: Werner Koch <wk@gnupg.org>
+Date: Wed, 11 Jan 2017 18:40:17 +0100
+Subject: [PATCH 01/25] gtk2: Fix a problem with fvwm
+
+* gtk+-2/pinentry-gtk-2.c (grab_pointer): Take care of
+GDK_GRAB_ALREADY_GRABBED.
+--
+
+Debian-bug-id: 850708
+Co-authored-by: Vincent Lefevre <vincent@vinc17.net>
+Signed-off-by: Werner Koch <wk@gnupg.org>
+---
+ gtk+-2/pinentry-gtk-2.c | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/gtk+-2/pinentry-gtk-2.c b/gtk+-2/pinentry-gtk-2.c
+index 473c4aa..e37601f 100644
+--- a/gtk+-2/pinentry-gtk-2.c
++++ b/gtk+-2/pinentry-gtk-2.c
+@@ -203,7 +203,12 @@ grab_pointer (GtkWidget *win, GdkEvent *event, gpointer data)
+   (void)data;
+ 
+   /* Change the cursor for the duration of the grab to indicate that
+-     something is going on.  */
++   * something is going on.  The fvwm window manager grabs the pointer
++   * for a short time and thus we may end up with the already grabbed
++   * error code.  Actually this error code should be used to detect a
++   * malicious grabbing application but with fvwm this renders
++   * Pinentry only unusable.  Thus we try again several times also for
++   * that error code.  See Debian bug 850708 for details.  */
+   /* XXX: It would be nice to have a key cursor, unfortunately there
+      is none readily available.  */
+   cursor = gdk_cursor_new_for_display (gtk_widget_get_display (win),
+@@ -215,7 +220,8 @@ grab_pointer (GtkWidget *win, GdkEvent *event, gpointer data)
+                             NULL /* confine to */,
+                             cursor,
+                             gdk_event_get_time (event));
+-  while (tries++ < max_tries && err == GDK_GRAB_NOT_VIEWABLE);
++  while (tries++ < max_tries && (err == GDK_GRAB_NOT_VIEWABLE
++                                 || err == GDK_GRAB_ALREADY_GRABBED));
+ 
+   if (err)
+     {
+-- 
+2.13.6
+

diff --git a/app-crypt/pinentry/pinentry-1.0.0-r1.ebuild b/app-crypt/pinentry/pinentry-1.0.0-r2.ebuild
similarity index 95%
rename from app-crypt/pinentry/pinentry-1.0.0-r1.ebuild
rename to app-crypt/pinentry/pinentry-1.0.0-r2.ebuild
index 23de2e2209d..f26a7c9f5bc 100644
--- a/app-crypt/pinentry/pinentry-1.0.0-r1.ebuild
+++ b/app-crypt/pinentry/pinentry-1.0.0-r2.ebuild
@@ -50,6 +50,8 @@ DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
 PATCHES=(
 	"${FILESDIR}/${PN}-0.8.2-ncurses.patch"
 	"${FILESDIR}/${P}-build.patch"
+	"${FILESDIR}/${P}-Disable-tooltips-in-keyboard-grabbing-mode.patch"
+	"${FILESDIR}/${P}-gtk2-Fix-a-problem-with-fvwm.patch"
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2017-12-21 14:59 Andreas Sturmlechner
  0 siblings, 0 replies; 11+ messages in thread
From: Andreas Sturmlechner @ 2017-12-21 14:59 UTC (permalink / raw
  To: gentoo-commits

commit:     cec537a1e49f84fbd3ec055fcbf7e80fd825ecf4
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 21 14:58:29 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Dec 21 14:59:02 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cec537a1

app-crypt/pinentry: Drop 0.9.7-r1

Bug: https://bugs.gentoo.org/632293
Package-Manager: Portage-2.3.19, Repoman-2.3.6

 app-crypt/pinentry/Manifest                        |   1 -
 ...pinentry-0.9.7-require-CPP11-for-qt-5-7.patches |  48 --------
 app-crypt/pinentry/pinentry-0.9.7-r1.ebuild        | 122 ---------------------
 3 files changed, 171 deletions(-)

diff --git a/app-crypt/pinentry/Manifest b/app-crypt/pinentry/Manifest
index 4388ca003ba..4740ef28c91 100644
--- a/app-crypt/pinentry/Manifest
+++ b/app-crypt/pinentry/Manifest
@@ -1,2 +1 @@
-DIST pinentry-0.9.7.tar.bz2 432978 BLAKE2B fffeaa5548a4f4fc60a2adef51d1b8c74be910e0c377afd223aeb1de00f59cf84b376562d0a8e5b8d59a144ac3cdab0a260c5b15cacf1a7d9d5508d8b413ce3e SHA512 9c5bc8f7246e8b0affd83fea6e64c47cecf6a12515a82dd2a6712b230306a9c3c97da4dbf6519ea98c85c88bf180a5a2b8c46cedcd594f224e5a08f2f0e35bf0
 DIST pinentry-1.0.0.tar.bz2 436930 BLAKE2B 949be8de8504a42cd5bd6ffebe331a825db7ff3c2ccc5fc554155b7621fddf9df957aa92063eb1a06c6964826a296bf60a4cc46cf2886552e37703a62042f35a SHA512 f109236707c51871b5020ef807a551366461fafcfbe09bf8cda19d4b163a42cf622562b905ceb41429f1d648b3f3d27807538709da6a135b67f9888709eccd62

diff --git a/app-crypt/pinentry/files/pinentry-0.9.7-require-CPP11-for-qt-5-7.patches b/app-crypt/pinentry/files/pinentry-0.9.7-require-CPP11-for-qt-5-7.patches
deleted file mode 100644
index 406571cdd3a..00000000000
--- a/app-crypt/pinentry/files/pinentry-0.9.7-require-CPP11-for-qt-5-7.patches
+++ /dev/null
@@ -1,48 +0,0 @@
-From 7384e2a575dde2809784d9f182fd1d247064c8a2 Mon Sep 17 00:00:00 2001
-From: Kristian Fiskerstrand <kf@sumptuouscapital.com>
-Date: Thu, 11 Aug 2016 14:44:37 +0200
-Subject: [PATCH] Qt: Append -std=c++11 if building against Qt 5.7
-
- * m4/qt.m4: Append -std=c++11 to CFLAGS if building against Qt 5.7
-
---
-Qt 5.7 enables C++11 for Qt modules, and any app relying on it require to be
-compiled with at least this standard.
-
-This patch adds detection for Qt 5.7 and make sure -std=c++11 is passed if
-building against Qt 5.7 or higher.
----
- m4/qt.m4 | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/m4/qt.m4 b/m4/qt.m4
-index 093f428..90c4a6e 100644
---- a/m4/qt.m4
-+++ b/m4/qt.m4
-@@ -35,6 +35,7 @@ AC_DEFUN([FIND_QT],
-                 enable_pinentry_qt5="try")
- 
-   have_qt5_libs="no";
-+  require_qt_cpp11="no";
- 
-   if test "$enable_pinentry_qt5" != "no"; then
-     PKG_CHECK_MODULES(PINENTRY_QT,
-@@ -47,6 +48,15 @@ AC_DEFUN([FIND_QT],
-     fi
-   fi
-   if test "$have_qt5_libs" = "yes"; then
-+    PKG_CHECK_MODULES(PINENTRY_QT_REQUIRE_CPP11,
-+                      Qt5Core >= 5.7.0,
-+                      [require_qt_cpp11="yes"],
-+                      [require_qt_cpp11="no"])
-+
-+    if test "${require_qt_cpp11}" = "yes"; then
-+      PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -std=c++11"
-+    fi
-+
-     AC_CHECK_TOOL(MOC, moc)
-     AC_MSG_CHECKING([moc version])
-     mocversion=`$MOC -v 2>&1`
--- 
-2.7.3
-

diff --git a/app-crypt/pinentry/pinentry-0.9.7-r1.ebuild b/app-crypt/pinentry/pinentry-0.9.7-r1.ebuild
deleted file mode 100644
index 82a50921099..00000000000
--- a/app-crypt/pinentry/pinentry-0.9.7-r1.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="http://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="emacs gtk ncurses qt4 qt5 caps gnome-keyring static"
-
-CDEPEND="
-	>=dev-libs/libgpg-error-1.17
-	>=dev-libs/libassuan-2.1
-	>=dev-libs/libgcrypt-1.6.3
-	ncurses? ( sys-libs/ncurses:0= )
-	gtk? ( x11-libs/gtk+:2 )
-	qt4? (
-		>=dev-qt/qtgui-4.4.1:4
-	     )
-	qt5? (
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	     )
-	caps? ( sys-libs/libcap )
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-	app-eselect/eselect-pinentry
-	gnome-keyring? ( app-crypt/libsecret )
-"
-
-DEPEND="${CDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-RDEPEND="
-	${CDEPEND}
-	gnome-keyring? ( app-crypt/gcr )
-"
-
-REQUIRED_USE="
-	|| ( ncurses gtk qt4 qt5 )
-	gtk? ( !static )
-	qt4? ( !static )
-	qt5? ( !static )
-	static? ( ncurses )
-	?? ( qt4 qt5 )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"\
-		   "${FILESDIR}/${P}-require-CPP11-for-qt-5-7.patches"
-	eautoreconf
-}
-
-src_configure() {
-	local myconf=()
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	QT_MOC=""
-	if use qt4; then
-		myconf+=( --enable-pinentry-qt
-			  --disable-pinentry-qt5
-			)
-		QT_MOC="$(qt4_get_bindir)"/moc
-		# Issues finding qt on multilib systems
-		export QTLIB="$(qt4_get_libdir)"
-	elif use qt5; then
-		myconf+=( --enable-pinentry-qt )
-		QT_MOC="$(qt5_get_bindir)"/moc
-		export QTLIB="$(qt5_get_libdir)"
-	else
-		myconf+=( --disable-pinentry-qt )
-	fi
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_with caps libcap) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		"${myconf[@]}" \
-		MOC="${QT_MOC}"
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-
-	if use qt4 || use qt5; then
-		dosym pinentry-qt /usr/bin/pinentry-qt4
-	fi
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2018-03-21 19:35 Kristian Fiskerstrand
  0 siblings, 0 replies; 11+ messages in thread
From: Kristian Fiskerstrand @ 2018-03-21 19:35 UTC (permalink / raw
  To: gentoo-commits

commit:     1dd048d3aea02a2cfbec81db25008e7098ac895c
Author:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 21 19:34:44 2018 +0000
Commit:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
CommitDate: Wed Mar 21 19:34:44 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1dd048d3

app-crypt/pinentry: Make pinentry-qt icon show under Plasma-Wayland

Bug: https://dev.gnupg.org/T3449
Closes: https://bugs.gentoo.org/634356
Thanks-To: Andrius Štikonas
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 ...1.0.0-make-icon-work-under-Plasma-Wayland.patch |  52 +++++++++++
 app-crypt/pinentry/pinentry-1.0.0-r3.ebuild        | 103 +++++++++++++++++++++
 2 files changed, 155 insertions(+)

diff --git a/app-crypt/pinentry/files/pinentry-1.0.0-make-icon-work-under-Plasma-Wayland.patch b/app-crypt/pinentry/files/pinentry-1.0.0-make-icon-work-under-Plasma-Wayland.patch
new file mode 100644
index 00000000000..646df196376
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-1.0.0-make-icon-work-under-Plasma-Wayland.patch
@@ -0,0 +1,52 @@
+From 7218becac7132c2508d4e8f42c693d69c406795a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= <andrius@stikonas.eu>
+Date: Wed, 7 Mar 2018 15:14:22 +0100
+Subject: [PATCH] Make pinentry-qt icon work under Plasma Wayland.
+
+---
+ qt/Makefile.am                   | 2 ++
+ qt/main.cpp                      | 2 ++
+ qt/org.gnupg.pinentry-qt.desktop | 5 +++++
+ 3 files changed, 9 insertions(+)
+ create mode 100644 qt/org.gnupg.pinentry-qt.desktop
+
+diff --git a/qt/Makefile.am b/qt/Makefile.am
+index 698005e..bbf39d1 100644
+--- a/qt/Makefile.am
++++ b/qt/Makefile.am
+@@ -24,6 +24,8 @@ bin_PROGRAMS = pinentry-qt
+ 
+ EXTRA_DIST = document-encrypt.png pinentry.qrc
+ 
++desktopdir = $(datadir)/applications
++dist_desktop_DATA = org.gnupg.pinentry-qt.desktop
+ 
+ if FALLBACK_CURSES
+ ncurses_include = $(NCURSES_INCLUDE)
+diff --git a/qt/main.cpp b/qt/main.cpp
+index fe88d26..b767cb4 100644
+--- a/qt/main.cpp
++++ b/qt/main.cpp
+@@ -372,6 +372,8 @@ main(int argc, char *argv[])
+         i = argc;
+         app = new QApplication(i, new_argv);
+         app->setWindowIcon(QIcon(QLatin1String(":/document-encrypt.png")));
++        app->setOrganizationDomain(QStringLiteral("gnupg.org"));
++        app->setDesktopFileName(QStringLiteral("org.gnupg.pinentry-qt"));
+     }
+ 
+     pinentry_parse_opts(argc, argv);
+diff --git a/qt/org.gnupg.pinentry-qt.desktop b/qt/org.gnupg.pinentry-qt.desktop
+new file mode 100644
+index 0000000..0ac89aa
+--- /dev/null
++++ b/qt/org.gnupg.pinentry-qt.desktop
+@@ -0,0 +1,5 @@
++[Desktop Entry]
++Type=Application
++Name=Pinentry dialog
++Icon=document-encrypt
++NoDisplay=true
+-- 
+2.16.1
+

diff --git a/app-crypt/pinentry/pinentry-1.0.0-r3.ebuild b/app-crypt/pinentry/pinentry-1.0.0-r3.ebuild
new file mode 100644
index 00000000000..86f29751d3f
--- /dev/null
+++ b/app-crypt/pinentry/pinentry-1.0.0-r3.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic qmake-utils toolchain-funcs
+
+DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol"
+HOMEPAGE="https://gnupg.org/aegypten2/index.html"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="caps emacs gnome-keyring gtk ncurses qt5 static"
+
+CDEPEND="
+	app-eselect/eselect-pinentry
+	>=dev-libs/libassuan-2.1
+	>=dev-libs/libgcrypt-1.6.3
+	>=dev-libs/libgpg-error-1.17
+	caps? ( sys-libs/libcap )
+	gnome-keyring? ( app-crypt/libsecret )
+	gtk? ( x11-libs/gtk+:2 )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
+	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
+"
+DEPEND="${CDEPEND}
+	sys-devel/gettext
+	virtual/pkgconfig
+"
+RDEPEND="${CDEPEND}
+	gnome-keyring? ( app-crypt/gcr )
+"
+
+REQUIRED_USE="
+	gtk? ( !static )
+	qt5? ( !static )
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.8.2-ncurses.patch"
+	"${FILESDIR}/${P}-build.patch"
+	"${FILESDIR}/${P}-Disable-tooltips-in-keyboard-grabbing-mode.patch"
+	"${FILESDIR}/${P}-gtk2-Fix-a-problem-with-fvwm.patch"
+	"${FILESDIR}/${P}-make-icon-work-under-Plasma-Wayland.patch"
+)
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	use static && append-ldflags -static
+	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
+
+	export QTLIB="$(qt5_get_libdir)"
+
+	econf \
+		--enable-pinentry-tty \
+		$(use_with caps libcap) \
+		$(use_enable emacs pinentry-emacs) \
+		$(use_enable gnome-keyring libsecret) \
+		$(use_enable gnome-keyring pinentry-gnome3) \
+		$(use_enable gtk pinentry-gtk2) \
+		$(use_enable ncurses pinentry-curses) \
+		$(use_enable ncurses fallback-curses) \
+		$(use_enable qt5 pinentry-qt) \
+		MOC="$(qt5_get_bindir)"/moc
+}
+
+src_install() {
+	default
+	rm -f "${ED}"/usr/bin/pinentry || die
+
+	use qt5 && dosym pinentry-qt /usr/bin/pinentry-qt4
+}
+
+pkg_postinst() {
+	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
+		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
+		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
+		elog "The soft resource limit for memory locking specifies the limit an"
+		elog "unprivileged process may lock into memory. You can also use POSIX"
+		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
+		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
+		elog "your users."
+	fi
+
+	eselect pinentry update ifunset
+}
+
+pkg_postrm() {
+	eselect pinentry update ifunset
+}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2020-06-07 21:31 Andreas Sturmlechner
  0 siblings, 0 replies; 11+ messages in thread
From: Andreas Sturmlechner @ 2020-06-07 21:31 UTC (permalink / raw
  To: gentoo-commits

commit:     4851b8682230a0d40995a6f9ad4d3ae2bb03a12e
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Jun  7 21:29:20 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jun  7 21:29:42 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4851b868

app-crypt/pinentry: Drop 1.0.0-r2, 1.0.0-r3, 1.1.0-r1 and 1.1.0-r2

Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 app-crypt/pinentry/Manifest                        |   1 -
 ...isable-tooltips-in-keyboard-grabbing-mode.patch |  47 -----
 .../pinentry/files/pinentry-1.0.0-build.patch      | 218 ---------------------
 ...nentry-1.0.0-gtk2-Fix-a-problem-with-fvwm.patch |  47 -----
 app-crypt/pinentry/pinentry-1.0.0-r2.ebuild        | 102 ----------
 app-crypt/pinentry/pinentry-1.0.0-r3.ebuild        | 103 ----------
 app-crypt/pinentry/pinentry-1.1.0-r1.ebuild        | 100 ----------
 app-crypt/pinentry/pinentry-1.1.0-r2.ebuild        | 102 ----------
 8 files changed, 720 deletions(-)

diff --git a/app-crypt/pinentry/Manifest b/app-crypt/pinentry/Manifest
index e8e43f0ce1b..96c7370bde2 100644
--- a/app-crypt/pinentry/Manifest
+++ b/app-crypt/pinentry/Manifest
@@ -1,2 +1 @@
-DIST pinentry-1.0.0.tar.bz2 436930 BLAKE2B 949be8de8504a42cd5bd6ffebe331a825db7ff3c2ccc5fc554155b7621fddf9df957aa92063eb1a06c6964826a296bf60a4cc46cf2886552e37703a62042f35a SHA512 f109236707c51871b5020ef807a551366461fafcfbe09bf8cda19d4b163a42cf622562b905ceb41429f1d648b3f3d27807538709da6a135b67f9888709eccd62
 DIST pinentry-1.1.0.tar.bz2 467702 BLAKE2B cf43555848ab0dc60756fca123aba7599ebb1bfe0458b973ed9d84479f8de9ee69ef309b518b40aa340434d64d37793cf97c94f78f99820bc5c71ecd2aac7a49 SHA512 5012672925bcb5f683358c259e55e4b87c67cf063ad52c759308933733025c33f7ce08e5b8019ffc101cbf7ef30499040ef2fd34a7611698e65e1593f80948cd

diff --git a/app-crypt/pinentry/files/pinentry-1.0.0-Disable-tooltips-in-keyboard-grabbing-mode.patch b/app-crypt/pinentry/files/pinentry-1.0.0-Disable-tooltips-in-keyboard-grabbing-mode.patch
deleted file mode 100644
index 7724d1beae8..00000000000
--- a/app-crypt/pinentry/files/pinentry-1.0.0-Disable-tooltips-in-keyboard-grabbing-mode.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 1590b664d88be8386a4664c2994b685187d1eb25 Mon Sep 17 00:00:00 2001
-From: Damien Goutte-Gattat <dgouttegattat@incenp.org>
-Date: Thu, 3 Aug 2017 22:56:49 +0200
-Subject: [PATCH 1/6] gtk: Disable tooltips in keyboard-grabbing mode.
-
-* gtk+-2:/pinentry-gtk-2.c (show_hide_button): Do not show the
-tooltip if we attempt to grab the keyboard.
-(create_window): Likewise.
---
-
-For unclear reasons, those tooltips may interfere with grabbing
-under some tiling window managers.
-
-GnuPG-bug-id: 3297
-Signed-off-by: Damien Goutte-Gattat <dgouttegattat@incenp.org>
----
- gtk+-2/pinentry-gtk-2.c | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/gtk+-2/pinentry-gtk-2.c b/gtk+-2/pinentry-gtk-2.c
-index d467ec5..f17a702 100644
---- a/gtk+-2/pinentry-gtk-2.c
-+++ b/gtk+-2/pinentry-gtk-2.c
-@@ -516,7 +516,10 @@ show_hide_button_toggled (GtkWidget *widget, gpointer data)
-     }
- 
-   gtk_label_set_markup (GTK_LABEL(label), text);
--  gtk_widget_set_tooltip_text (GTK_WIDGET(button), tooltip);
-+  if (!pinentry->grab)
-+    {
-+      gtk_widget_set_tooltip_text (GTK_WIDGET(button), tooltip);
-+    }
-   g_free (tooltip);
- }
- 
-@@ -736,7 +739,7 @@ create_window (pinentry_t ctx)
- 	  gtk_progress_bar_set_text (GTK_PROGRESS_BAR (qualitybar),
- 				     QUALITYBAR_EMPTY_TEXT);
- 	  gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (qualitybar), 0.0);
--          if (pinentry->quality_bar_tt)
-+          if (pinentry->quality_bar_tt && !pinentry->grab)
- 	    {
- #if !GTK_CHECK_VERSION (2, 12, 0)
- 	      gtk_tooltips_set_tip (GTK_TOOLTIPS (tooltips), qualitybar,
--- 
-2.13.6
-

diff --git a/app-crypt/pinentry/files/pinentry-1.0.0-build.patch b/app-crypt/pinentry/files/pinentry-1.0.0-build.patch
deleted file mode 100644
index e367b856645..00000000000
--- a/app-crypt/pinentry/files/pinentry-1.0.0-build.patch
+++ /dev/null
@@ -1,218 +0,0 @@
-From c5c7bee68730c9f66a27f9bb0d023480623a2bfb Mon Sep 17 00:00:00 2001
-From: Werner Koch <wk@gnupg.org>
-Date: Thu, 1 Dec 2016 09:10:08 +0100
-Subject: [PATCH] Fix linkage problem in tty and emacs pinentries.
-
-* emacs/pinentry-emacs.c (curses_cmd_handler): Remove var.
-* tty/pinentry-tty.c (curses_cmd_handler): Remove var.
-* pinentry/pinentry.c (flavor_flag): New local var.
-(pinentry_set_flavor_flag): New function.
-(cmd_getinfo): Use FLAVOR_FLAG for the "flavor" sub-command.
-* gnome3/pinentry-gnome3.c (main): Call pinentry_set_flavor_flag.
-* gtk+-2/pinentry-gtk-2.c (main): Ditto.
-* pinentry/pinentry-emacs.c (initial_emacs_cmd_handler): Ditto.
-* qt/main.cpp (main): Ditto.
---
-
-Fixes-commit: e4e3a9cc88704dcffac660d0b92fd1ed8abecc11
-Fixes-commit: d126036671e7dd631babc118cb4113f723f15748
-Signed-off-by: Werner Koch <wk@gnupg.org>
----
- emacs/pinentry-emacs.c    |  4 ----
- gnome3/pinentry-gnome3.c  |  3 +++
- gtk+-2/pinentry-gtk-2.c   | 10 ++++++++--
- pinentry/pinentry-emacs.c |  5 ++++-
- pinentry/pinentry.c       | 34 ++++++++++++++++++----------------
- pinentry/pinentry.h       |  4 ++++
- qt/main.cpp               |  1 +
- tty/pinentry-tty.c        |  3 ---
- 8 files changed, 38 insertions(+), 26 deletions(-)
-
-diff --git a/emacs/pinentry-emacs.c b/emacs/pinentry-emacs.c
-index b6b3eb8..3c39a96 100644
---- a/emacs/pinentry-emacs.c
-+++ b/emacs/pinentry-emacs.c
-@@ -29,10 +29,6 @@
- 
- pinentry_cmd_handler_t pinentry_cmd_handler = emacs_cmd_handler;
- 
--/* needed to link cleanly; should never be used except for comparison
-- * in pinentry/pinentry.c's cmd_getinfo(): */
--pinentry_cmd_handler_t curses_cmd_handler = NULL;
--
- 
- \f
- int
-diff --git a/gnome3/pinentry-gnome3.c b/gnome3/pinentry-gnome3.c
-index a040f9b..d5a49d6 100644
---- a/gnome3/pinentry-gnome3.c
-+++ b/gnome3/pinentry-gnome3.c
-@@ -517,18 +517,21 @@ main (int argc, char *argv[])
-       fprintf (stderr, "No $DBUS_SESSION_BUS_ADDRESS found,"
-                " falling back to curses\n");
-       pinentry_cmd_handler = curses_cmd_handler;
-+      pinentry_set_flavor_flag ("curses");
-     }
-   else if (!pe_gcr_system_prompt_available ())
-     {
-       fprintf (stderr, "No Gcr System Prompter available,"
-                " falling back to curses\n");
-       pinentry_cmd_handler = curses_cmd_handler;
-+      pinentry_set_flavor_flag ("curses");
-     }
-   else if (pe_gnome_screen_locked ())
-     {
-       fprintf (stderr, "GNOME screensaver is locked,"
-                " falling back to curses\n");
-       pinentry_cmd_handler = curses_cmd_handler;
-+      pinentry_set_flavor_flag ("curses");
-     }
- #endif
- 
-diff --git a/gtk+-2/pinentry-gtk-2.c b/gtk+-2/pinentry-gtk-2.c
-index 6037533..473c4aa 100644
---- a/gtk+-2/pinentry-gtk-2.c
-+++ b/gtk+-2/pinentry-gtk-2.c
-@@ -938,10 +938,16 @@ main (int argc, char *argv[])
-   if (pinentry_have_display (argc, argv))
-     {
-       if (! gtk_init_check (&argc, &argv))
--	pinentry_cmd_handler = curses_cmd_handler;
-+        {
-+          pinentry_cmd_handler = curses_cmd_handler;
-+          pinentry_set_flavor_flag ("curses");
-+        }
-     }
-   else
--    pinentry_cmd_handler = curses_cmd_handler;
-+    {
-+      pinentry_cmd_handler = curses_cmd_handler;
-+      pinentry_set_flavor_flag ("curses");
-+    }
- #else
-   gtk_init (&argc, &argv);
- #endif
-diff --git a/pinentry/pinentry-emacs.c b/pinentry/pinentry-emacs.c
-index df12f1b..50ba406 100644
---- a/pinentry/pinentry-emacs.c
-+++ b/pinentry/pinentry-emacs.c
-@@ -644,7 +644,10 @@ initial_emacs_cmd_handler (pinentry_t pe)
-   if (emacs_socket < 0)
-     pinentry_cmd_handler = fallback_cmd_handler;
-   else
--    pinentry_cmd_handler = emacs_cmd_handler;
-+    {
-+      pinentry_cmd_handler = emacs_cmd_handler;
-+      pinentry_set_flavor_flag ("emacs");
-+    }
- 
-   return (* pinentry_cmd_handler) (pe);
- }
-diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c
-index 322a651..a198fb3 100644
---- a/pinentry/pinentry.c
-+++ b/pinentry/pinentry.c
-@@ -67,6 +67,10 @@ static char this_pgmname[50];
- 
- struct pinentry pinentry;
- 
-+
-+static const char *flavor_flag;
-+
-+
- static void
- pinentry_reset (int use_defaults)
- {
-@@ -793,6 +797,16 @@ pinentry_parse_opts (int argc, char *argv[])
-     }
- }
- 
-+
-+/* Set the optional flag used with getinfo. */
-+void
-+pinentry_set_flavor_flag (const char *string)
-+{
-+  flavor_flag = string;
-+}
-+
-+
-+
- \f
- static gpg_error_t
- option_handler (assuan_context_t ctx, const char *key, const char *value)
-@@ -1444,27 +1458,15 @@ cmd_getinfo (assuan_context_t ctx, char *line)
-     }
-   else if (!strcmp (line, "flavor"))
-     {
--      const char *flags;
--
-       if (!strncmp (this_pgmname, "pinentry-", 9) && this_pgmname[9])
-         s = this_pgmname + 9;
-       else
-         s = this_pgmname;
- 
--      if (0)
--        ;
--#ifdef INSIDE_EMACS
--      else if (pinentry_cmd_handler == emacs_cmd_handler)
--        flags = ":emacs";
--#endif
--#ifdef FALLBACK_CURSES
--      else if (pinentry_cmd_handler == curses_cmd_handler)
--        flags = ":curses";
--#endif
--      else
--        flags = "";
--
--      snprintf (buffer, sizeof buffer, "%s%s", s, flags);
-+      snprintf (buffer, sizeof buffer, "%s%s%s",
-+                s,
-+                flavor_flag? ":":"",
-+                flavor_flag? flavor_flag : "");
-       buffer[sizeof buffer -1] = 0;
-       rc = assuan_send_data (ctx, buffer, strlen (buffer));
-     }
-diff --git a/pinentry/pinentry.h b/pinentry/pinentry.h
-index 01fb373..45d35ad 100644
---- a/pinentry/pinentry.h
-+++ b/pinentry/pinentry.h
-@@ -275,6 +275,10 @@ int pinentry_have_display (int argc, char **argv);
-    or version output is requested.  */
- void pinentry_parse_opts (int argc, char *argv[]);
- 
-+/* Set the optional flag used with getinfo. */
-+void pinentry_set_flavor_flag (const char *string);
-+
-+
- \f
- /* The caller must define this variable to process assuan commands.  */
- extern pinentry_cmd_handler_t pinentry_cmd_handler;
-diff --git a/qt/main.cpp b/qt/main.cpp
-index 8284960..225c06b 100644
---- a/qt/main.cpp
-+++ b/qt/main.cpp
-@@ -308,6 +308,7 @@ main(int argc, char *argv[])
- #ifdef FALLBACK_CURSES
-     if (!pinentry_have_display(argc, argv)) {
-         pinentry_cmd_handler = curses_cmd_handler;
-+        pinentry_set_flavor_flag ("curses");
-     } else
- #endif
-     {
-diff --git a/tty/pinentry-tty.c b/tty/pinentry-tty.c
-index 3d6cd5a..a509d79 100644
---- a/tty/pinentry-tty.c
-+++ b/tty/pinentry-tty.c
-@@ -556,9 +556,6 @@ tty_cmd_handler(pinentry_t pinentry)
- 
- pinentry_cmd_handler_t pinentry_cmd_handler = tty_cmd_handler;
- 
--/* needed to link cleanly; should never be used except for comparison
-- * in pinentry/pinentry.c's cmd_getinfo(): */
--pinentry_cmd_handler_t curses_cmd_handler = NULL;
- 
- 
- int
--- 
-2.8.0.rc3
-

diff --git a/app-crypt/pinentry/files/pinentry-1.0.0-gtk2-Fix-a-problem-with-fvwm.patch b/app-crypt/pinentry/files/pinentry-1.0.0-gtk2-Fix-a-problem-with-fvwm.patch
deleted file mode 100644
index f7476de1ff6..00000000000
--- a/app-crypt/pinentry/files/pinentry-1.0.0-gtk2-Fix-a-problem-with-fvwm.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From b0e0bdeac5d40ca645afc9017778b39a26303523 Mon Sep 17 00:00:00 2001
-From: Werner Koch <wk@gnupg.org>
-Date: Wed, 11 Jan 2017 18:40:17 +0100
-Subject: [PATCH 01/25] gtk2: Fix a problem with fvwm
-
-* gtk+-2/pinentry-gtk-2.c (grab_pointer): Take care of
-GDK_GRAB_ALREADY_GRABBED.
---
-
-Debian-bug-id: 850708
-Co-authored-by: Vincent Lefevre <vincent@vinc17.net>
-Signed-off-by: Werner Koch <wk@gnupg.org>
----
- gtk+-2/pinentry-gtk-2.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/gtk+-2/pinentry-gtk-2.c b/gtk+-2/pinentry-gtk-2.c
-index 473c4aa..e37601f 100644
---- a/gtk+-2/pinentry-gtk-2.c
-+++ b/gtk+-2/pinentry-gtk-2.c
-@@ -203,7 +203,12 @@ grab_pointer (GtkWidget *win, GdkEvent *event, gpointer data)
-   (void)data;
- 
-   /* Change the cursor for the duration of the grab to indicate that
--     something is going on.  */
-+   * something is going on.  The fvwm window manager grabs the pointer
-+   * for a short time and thus we may end up with the already grabbed
-+   * error code.  Actually this error code should be used to detect a
-+   * malicious grabbing application but with fvwm this renders
-+   * Pinentry only unusable.  Thus we try again several times also for
-+   * that error code.  See Debian bug 850708 for details.  */
-   /* XXX: It would be nice to have a key cursor, unfortunately there
-      is none readily available.  */
-   cursor = gdk_cursor_new_for_display (gtk_widget_get_display (win),
-@@ -215,7 +220,8 @@ grab_pointer (GtkWidget *win, GdkEvent *event, gpointer data)
-                             NULL /* confine to */,
-                             cursor,
-                             gdk_event_get_time (event));
--  while (tries++ < max_tries && err == GDK_GRAB_NOT_VIEWABLE);
-+  while (tries++ < max_tries && (err == GDK_GRAB_NOT_VIEWABLE
-+                                 || err == GDK_GRAB_ALREADY_GRABBED));
- 
-   if (err)
-     {
--- 
-2.13.6
-

diff --git a/app-crypt/pinentry/pinentry-1.0.0-r2.ebuild b/app-crypt/pinentry/pinentry-1.0.0-r2.ebuild
deleted file mode 100644
index a27f7a37b90..00000000000
--- a/app-crypt/pinentry/pinentry-1.0.0-r2.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic qmake-utils toolchain-funcs
-
-DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="https://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="caps emacs gnome-keyring gtk ncurses qt5 static"
-
-CDEPEND="
-	app-eselect/eselect-pinentry
-	>=dev-libs/libassuan-2.1
-	>=dev-libs/libgcrypt-1.6.3
-	>=dev-libs/libgpg-error-1.17
-	caps? ( sys-libs/libcap )
-	gnome-keyring? ( app-crypt/libsecret )
-	gtk? ( x11-libs/gtk+:2 )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-"
-DEPEND="${CDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-RDEPEND="${CDEPEND}
-	gnome-keyring? ( app-crypt/gcr )
-"
-
-REQUIRED_USE="
-	gtk? ( !static )
-	qt5? ( !static )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-PATCHES=(
-	"${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	"${FILESDIR}/${P}-build.patch"
-	"${FILESDIR}/${P}-Disable-tooltips-in-keyboard-grabbing-mode.patch"
-	"${FILESDIR}/${P}-gtk2-Fix-a-problem-with-fvwm.patch"
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	export QTLIB="$(qt5_get_libdir)"
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_with caps libcap) \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_enable qt5 pinentry-qt) \
-		MOC="$(qt5_get_bindir)"/moc
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-
-	use qt5 && dosym pinentry-qt /usr/bin/pinentry-qt4
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}

diff --git a/app-crypt/pinentry/pinentry-1.0.0-r3.ebuild b/app-crypt/pinentry/pinentry-1.0.0-r3.ebuild
deleted file mode 100644
index f58c3ec1797..00000000000
--- a/app-crypt/pinentry/pinentry-1.0.0-r3.ebuild
+++ /dev/null
@@ -1,103 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic qmake-utils toolchain-funcs
-
-DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="https://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="caps emacs gnome-keyring gtk ncurses qt5 static"
-
-CDEPEND="
-	app-eselect/eselect-pinentry
-	>=dev-libs/libassuan-2.1
-	>=dev-libs/libgcrypt-1.6.3
-	>=dev-libs/libgpg-error-1.17
-	caps? ( sys-libs/libcap )
-	gnome-keyring? ( app-crypt/libsecret )
-	gtk? ( x11-libs/gtk+:2 )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-"
-DEPEND="${CDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-RDEPEND="${CDEPEND}
-	gnome-keyring? ( app-crypt/gcr )
-"
-
-REQUIRED_USE="
-	gtk? ( !static )
-	qt5? ( !static )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-PATCHES=(
-	"${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-	"${FILESDIR}/${P}-build.patch"
-	"${FILESDIR}/${P}-Disable-tooltips-in-keyboard-grabbing-mode.patch"
-	"${FILESDIR}/${P}-gtk2-Fix-a-problem-with-fvwm.patch"
-	"${FILESDIR}/${P}-make-icon-work-under-Plasma-Wayland.patch"
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	export QTLIB="$(qt5_get_libdir)"
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_with caps libcap) \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_enable qt5 pinentry-qt) \
-		MOC="$(qt5_get_bindir)"/moc
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-
-	use qt5 && dosym pinentry-qt /usr/bin/pinentry-qt4
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}

diff --git a/app-crypt/pinentry/pinentry-1.1.0-r1.ebuild b/app-crypt/pinentry/pinentry-1.1.0-r1.ebuild
deleted file mode 100644
index eafaf2f416e..00000000000
--- a/app-crypt/pinentry/pinentry-1.1.0-r1.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic qmake-utils toolchain-funcs
-
-DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="https://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="caps emacs gnome-keyring gtk ncurses qt5 static"
-
-CDEPEND="
-	app-eselect/eselect-pinentry
-	>=dev-libs/libassuan-2.1
-	>=dev-libs/libgcrypt-1.6.3
-	>=dev-libs/libgpg-error-1.17
-	caps? ( sys-libs/libcap )
-	gnome-keyring? ( app-crypt/libsecret )
-	gtk? ( x11-libs/gtk+:2 )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-"
-DEPEND="${CDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-RDEPEND="${CDEPEND}
-	gnome-keyring? ( app-crypt/gcr )
-"
-
-REQUIRED_USE="
-	gtk? ( !static )
-	qt5? ( !static )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-PATCHES=(
-	"${FILESDIR}/${PN}-1.0.0-make-icon-work-under-Plasma-Wayland.patch"
-	"${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	export QTLIB="$(qt5_get_libdir)"
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_with caps libcap) \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_enable qt5 pinentry-qt) \
-		MOC="$(qt5_get_bindir)"/moc
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-
-	use qt5 && dosym pinentry-qt /usr/bin/pinentry-qt4
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}

diff --git a/app-crypt/pinentry/pinentry-1.1.0-r2.ebuild b/app-crypt/pinentry/pinentry-1.1.0-r2.ebuild
deleted file mode 100644
index b8cada19a72..00000000000
--- a/app-crypt/pinentry/pinentry-1.1.0-r2.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic qmake-utils toolchain-funcs
-
-DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol"
-HOMEPAGE="https://gnupg.org/aegypten2/index.html"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="caps emacs gnome-keyring fltk gtk ncurses qt5 static"
-
-CDEPEND="
-	app-eselect/eselect-pinentry
-	>=dev-libs/libassuan-2.1
-	>=dev-libs/libgcrypt-1.6.3
-	>=dev-libs/libgpg-error-1.17
-	caps? ( sys-libs/libcap )
-	fltk? ( x11-libs/fltk )
-	gnome-keyring? ( app-crypt/libsecret )
-	gtk? ( x11-libs/gtk+:2 )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	static? ( >=sys-libs/ncurses-5.7-r5:0=[static-libs,-gpm] )
-"
-DEPEND="${CDEPEND}
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-RDEPEND="${CDEPEND}
-	gnome-keyring? ( app-crypt/gcr )
-"
-
-REQUIRED_USE="
-	gtk? ( !static )
-	qt5? ( !static )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-PATCHES=(
-	"${FILESDIR}/${PN}-1.0.0-make-icon-work-under-Plasma-Wayland.patch"
-	"${FILESDIR}/${PN}-0.8.2-ncurses.patch"
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	[[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
-
-	export QTLIB="$(qt5_get_libdir)"
-
-	econf \
-		--enable-pinentry-tty \
-		$(use_with caps libcap) \
-		$(use_enable emacs pinentry-emacs) \
-		$(use_enable fltk pinentry-fltk) \
-		$(use_enable gnome-keyring libsecret) \
-		$(use_enable gnome-keyring pinentry-gnome3) \
-		$(use_enable gtk pinentry-gtk2) \
-		$(use_enable ncurses pinentry-curses) \
-		$(use_enable ncurses fallback-curses) \
-		$(use_enable qt5 pinentry-qt) \
-		MOC="$(qt5_get_bindir)"/moc
-}
-
-src_install() {
-	default
-	rm -f "${ED}"/usr/bin/pinentry || die
-
-	use qt5 && dosym pinentry-qt /usr/bin/pinentry-qt4
-}
-
-pkg_postinst() {
-	if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
-		elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
-		elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
-		elog "The soft resource limit for memory locking specifies the limit an"
-		elog "unprivileged process may lock into memory. You can also use POSIX"
-		elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
-		elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
-		elog "your users."
-	fi
-
-	eselect pinentry update ifunset
-}
-
-pkg_postrm() {
-	eselect pinentry update ifunset
-}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2024-02-27 22:06 Sam James
  0 siblings, 0 replies; 11+ messages in thread
From: Sam James @ 2024-02-27 22:06 UTC (permalink / raw
  To: gentoo-commits

commit:     e5746ec14d4a8dd7990f76d1cf2779d32108bb9f
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 27 21:48:04 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Feb 27 21:51:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5746ec1

app-crypt/pinentry: backport include fix

Revbump given both:
a) implicit function declarations;
b) Werner's comment on the upstream bug wrt possibility of it breaking
some things with other pinentries.

Closes: https://bugs.gentoo.org/925557
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/pinentry-1.2.1-include-memory.patch      | 313 +++++++++++++++++++++
 app-crypt/pinentry/pinentry-1.2.1-r6.ebuild        | 108 +++++++
 2 files changed, 421 insertions(+)

diff --git a/app-crypt/pinentry/files/pinentry-1.2.1-include-memory.patch b/app-crypt/pinentry/files/pinentry-1.2.1-include-memory.patch
new file mode 100644
index 000000000000..8c67950af6f3
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-1.2.1-include-memory.patch
@@ -0,0 +1,313 @@
+https://bugs.gentoo.org/925557
+https://dev.gnupg.org/D566
+
+From 8ab1682e80a2b4185ee9ef66cbb44340245966fc Mon Sep 17 00:00:00 2001
+From: Werner Koch <wk@gnupg.org>
+Date: Mon, 20 Mar 2023 08:31:04 +0100
+Subject: [PATCH] Fix problem with inclusion of wrong memory.h.
+
+* secmem/memory.h: Rename to ...
+* secmem/secmem.h: this.
+* pinentry/pinentry.h: Include secmem.h.  Remove almost all inclusions
+of memory.h or replace them by "../secmem/secmem.h".
+--
+
+See-also: https://dev.gnupg.org/D566
+---
+ fltk/main.cxx                 | 1 -
+ fltk/pinwindow.cxx            | 2 +-
+ gnome3/pinentry-gnome3.c      | 2 --
+ pinentry/password-cache.c     | 2 +-
+ pinentry/pinentry-curses.c    | 7 +++----
+ pinentry/pinentry-emacs.c     | 2 +-
+ pinentry/pinentry.c           | 1 -
+ pinentry/pinentry.h           | 2 ++
+ secmem/Makefile.am            | 2 +-
+ secmem/secmem++.h             | 2 +-
+ secmem/secmem.c               | 2 +-
+ secmem/{memory.h => secmem.h} | 0
+ tqt/secqstring.h              | 2 +-
+ tty/pinentry-tty.c            | 1 -
+ w32/main.c                    | 1 -
+ 15 files changed, 12 insertions(+), 17 deletions(-)
+ rename secmem/{memory.h => secmem.h} (100%)
+
+--- a/fltk/main.cxx	2019-03-05 23:09:48.000000000 -0800
++++ b/fltk/main.cxx	2024-02-26 11:02:47.822134762 -0800
+@@ -34,7 +34,6 @@
+ #include <getopt.h>
+ #include <assert.h>
+ 
+-#include "memory.h"
+ #include <memory>
+ 
+ #include <pinentry.h>
+--- a/fltk/pinwindow.cxx	2017-12-03 08:13:05.000000000 -0800
++++ b/fltk/pinwindow.cxx	2024-02-26 11:02:47.822134762 -0800
+@@ -32,7 +32,7 @@
+ #include <FL/Fl_Return_Button.H>
+ #include <FL/Fl_Pixmap.H>
+ 
+-#include "memory.h"
++#include "../secmem/secmem.h"
+ 
+ #include "encrypt.xpm"
+ #include "icon.xpm"
+--- a/gnome3/pinentry-gnome3.c	2022-08-24 03:31:59.000000000 -0700
++++ b/gnome3/pinentry-gnome3.c	2024-02-26 11:02:47.822134762 -0800
+@@ -30,8 +30,6 @@
+ 
+ #include <assuan.h>
+ 
+-#include "memory.h"
+-
+ #include "pinentry.h"
+ 
+ #ifdef FALLBACK_CURSES
+--- a/pinentry/password-cache.c	2017-12-03 08:13:15.000000000 -0800
++++ b/pinentry/password-cache.c	2024-02-26 11:02:47.822134762 -0800
+@@ -31,7 +31,7 @@
+ #endif
+ 
+ #include "password-cache.h"
+-#include "memory.h"
++#include "../secmem/secmem.h"
+ 
+ #ifdef HAVE_LIBSECRET
+ static const SecretSchema *
+--- a/pinentry/pinentry.c	2022-08-24 03:31:59.000000000 -0700
++++ b/pinentry/pinentry.c	2024-02-26 11:02:47.822134762 -0800
+@@ -44,7 +44,6 @@
+ 
+ #include <assuan.h>
+ 
+-#include "memory.h"
+ #include "secmem-util.h"
+ #include "argparse.h"
+ #include "pinentry.h"
+--- a/pinentry/pinentry-curses.c	2022-08-24 03:31:59.000000000 -0700
++++ b/pinentry/pinentry-curses.c	2024-02-26 11:02:47.822134762 -0800
+@@ -62,8 +62,6 @@
+ #include <utime.h>
+ #endif /*HAVE_UTIME_H*/
+ 
+-#include <memory.h>
+-
+ #ifdef HAVE_WCHAR_H
+ #include <wchar.h>
+ #endif /*HAVE_WCHAR_H*/
+@@ -1017,10 +1015,11 @@
+ #ifndef HAVE_DOSISH_SYSTEM
+   int no_input = 1;
+ #endif
+-
+ #ifdef HAVE_NCURSESW
+   char *old_ctype = NULL;
++#endif
+ 
++#ifdef HAVE_NCURSESW
+   if (pinentry->lc_ctype)
+     {
+       old_ctype = strdup (setlocale (LC_CTYPE, NULL));
+--- a/pinentry/pinentry-emacs.c	2021-08-11 04:16:10.000000000 -0700
++++ b/pinentry/pinentry-emacs.c	2024-02-26 11:02:47.822134762 -0800
+@@ -48,7 +48,7 @@
+ #include <assuan.h>
+ 
+ #include "pinentry-emacs.h"
+-#include "memory.h"
++#include "../secmem/secmem.h"
+ #include "secmem-util.h"
+ 
+ /* The communication mechanism is similar to emacsclient, but there
+--- a/pinentry/pinentry.h	2022-08-24 03:31:59.000000000 -0700
++++ b/pinentry/pinentry.h	2024-02-26 11:02:47.822134762 -0800
+@@ -21,6 +21,8 @@
+ #ifndef PINENTRY_H
+ #define PINENTRY_H
+ 
++#include "../secmem/secmem.h"
++
+ #ifdef __cplusplus
+ extern "C" {
+ #if 0
+--- a/secmem/Makefile.am	2017-12-03 08:13:05.000000000 -0800
++++ b/secmem/Makefile.am	2024-02-26 11:02:47.822134762 -0800
+@@ -22,7 +22,7 @@
+ noinst_LIBRARIES = libsecmem.a
+ 
+ libsecmem_a_SOURCES = \
+-	memory.h \
++	secmem.h \
+ 	secmem-util.h \
+ 	util.h \
+ 	secmem.c \
+--- a/secmem/memory.h	2017-12-03 08:13:05.000000000 -0800
++++ b/secmem/memory.h	1969-12-31 16:00:00.000000000 -0800
+@@ -1,55 +0,0 @@
+-/* Quintuple Agent secure memory allocation
+- * Copyright (C) 1998,1999 Free Software Foundation, Inc.
+- * Copyright (C) 1999,2000 Robert Bihlmeyer <robbe@orcus.priv.at>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2 of the License, or
+- * (at your option) any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, see <https://www.gnu.org/licenses/>.
+- * SPDX-License-Identifier: GPL-2.0+
+- */
+-
+-#ifndef _MEMORY_H
+-#define _MEMORY_H
+-
+-#include <sys/types.h>
+-
+-#ifdef __cplusplus
+-extern "C" {
+-#if 0
+-}
+-#endif
+-#endif
+-
+-
+-/* values for flags, hardcoded in secmem.c */
+-#define SECMEM_WARN		0
+-#define SECMEM_DONT_WARN	1
+-#define SECMEM_SUSPEND_WARN	2
+-
+-void secmem_init( size_t npool );
+-void secmem_term( void );
+-void *secmem_malloc( size_t size );
+-void *secmem_realloc( void *a, size_t newsize );
+-void secmem_free( void *a );
+-int  m_is_secure( const void *p );
+-void secmem_dump_stats(void);
+-void secmem_set_flags( unsigned flags );
+-unsigned secmem_get_flags(void);
+-size_t secmem_get_max_size (void);
+-
+-#if 0
+-{
+-#endif
+-#ifdef __cplusplus
+-}
+-#endif
+-#endif /* _MEMORY_H */
+--- a/secmem/secmem.c	2022-08-24 03:31:59.000000000 -0700
++++ b/secmem/secmem.c	2024-02-26 11:02:47.822134762 -0800
+@@ -34,7 +34,7 @@
+ #endif
+ #include <string.h>
+ 
+-#include "memory.h"
++#include "secmem.h"
+ 
+ #ifdef ORIGINAL_GPG_VERSION
+ #include "types.h"
+--- a/secmem/secmem++.h	2017-12-03 08:13:05.000000000 -0800
++++ b/secmem/secmem++.h	2024-02-26 11:02:47.822134762 -0800
+@@ -19,7 +19,7 @@
+ #ifndef __SECMEM_SECMEMPP_H__
+ #define __SECMEM_SECMEMPP_H__
+ 
+-#include "secmem/memory.h"
++#include "../secmem/secmem.h"
+ #include <cstddef>
+ 
+ namespace secmem {
+--- a/secmem/secmem.h	1969-12-31 16:00:00.000000000 -0800
++++ b/secmem/secmem.h	2024-02-26 11:02:47.822134762 -0800
+@@ -0,0 +1,55 @@
++/* Quintuple Agent secure memory allocation
++ * Copyright (C) 1998,1999 Free Software Foundation, Inc.
++ * Copyright (C) 1999,2000 Robert Bihlmeyer <robbe@orcus.priv.at>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, see <https://www.gnu.org/licenses/>.
++ * SPDX-License-Identifier: GPL-2.0+
++ */
++
++#ifndef _MEMORY_H
++#define _MEMORY_H
++
++#include <sys/types.h>
++
++#ifdef __cplusplus
++extern "C" {
++#if 0
++}
++#endif
++#endif
++
++
++/* values for flags, hardcoded in secmem.c */
++#define SECMEM_WARN		0
++#define SECMEM_DONT_WARN	1
++#define SECMEM_SUSPEND_WARN	2
++
++void secmem_init( size_t npool );
++void secmem_term( void );
++void *secmem_malloc( size_t size );
++void *secmem_realloc( void *a, size_t newsize );
++void secmem_free( void *a );
++int  m_is_secure( const void *p );
++void secmem_dump_stats(void);
++void secmem_set_flags( unsigned flags );
++unsigned secmem_get_flags(void);
++size_t secmem_get_max_size (void);
++
++#if 0
++{
++#endif
++#ifdef __cplusplus
++}
++#endif
++#endif /* _MEMORY_H */
+--- a/tqt/secqstring.h	2017-12-03 08:33:12.000000000 -0800
++++ b/tqt/secqstring.h	2024-02-26 11:02:47.822134762 -0800
+@@ -65,7 +65,7 @@
+ 
+ extern "C"
+ {
+-#include "memory.h"
++#include "../secmem/secmem.h"
+ }
+ 
+ /* We need the original qchar and qstring for transparent conversion
+--- a/tty/pinentry-tty.c	2021-08-11 04:16:10.000000000 -0700
++++ b/tty/pinentry-tty.c	2024-02-26 11:02:47.822134762 -0800
+@@ -41,7 +41,6 @@
+ #include <gpg-error.h>
+ 
+ #include "pinentry.h"
+-#include "memory.h"
+ 
+ #ifndef HAVE_DOSISH_SYSTEM
+ static int timed_out;
+--- a/w32/main.c	2022-08-24 03:31:59.000000000 -0700
++++ b/w32/main.c	2024-02-26 11:02:47.822134762 -0800
+@@ -29,7 +29,6 @@
+ #endif
+ 
+ #include "pinentry.h"
+-#include "memory.h"
+ 
+ #include "resource.h"
+ /* #include "msgcodes.h" */

diff --git a/app-crypt/pinentry/pinentry-1.2.1-r6.ebuild b/app-crypt/pinentry/pinentry-1.2.1-r6.ebuild
new file mode 100644
index 000000000000..898f4bef6a9e
--- /dev/null
+++ b/app-crypt/pinentry/pinentry-1.2.1-r6.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc
+inherit autotools qmake-utils verify-sig
+
+DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol"
+HOMEPAGE="https://gnupg.org/aegypten2/"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="caps efl emacs gtk keyring ncurses qt5 wayland X"
+
+DEPEND="
+	>=dev-libs/libassuan-2.1
+	>=dev-libs/libgcrypt-1.6.3
+	>=dev-libs/libgpg-error-1.17
+	efl? ( dev-libs/efl[X] )
+	keyring? ( app-crypt/libsecret )
+	ncurses? ( sys-libs/ncurses:= )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+		wayland? ( kde-plasma/kwayland:5 )
+		X? (
+			dev-qt/qtx11extras:5
+			x11-libs/libX11
+		)
+	)
+"
+RDEPEND="
+	${DEPEND}
+	gtk? ( app-crypt/gcr:0[gtk] )
+"
+BDEPEND="
+	sys-devel/gettext
+	virtual/pkgconfig
+	verify-sig? ( sec-keys/openpgp-keys-gnupg )
+"
+PDEPEND="emacs? ( app-emacs/pinentry )"
+IDEPEND=">=app-eselect/eselect-pinentry-0.7.2"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+PATCHES=(
+	"${FILESDIR}/${PN}-1.0.0-AR.patch"
+	"${FILESDIR}/${PN}-1.2.1-automagic-capslock.patch" # bug #819939, bug #837719
+	"${FILESDIR}/${PN}-1.2.1-include-memory.patch"
+)
+
+src_prepare() {
+	default
+
+	unset FLTK_CONFIG
+
+	eautoreconf
+}
+
+src_configure() {
+	export PATH="$(qt5_get_bindir):${PATH}"
+	export QTLIB="$(qt5_get_libdir)"
+
+	local myeconfargs=(
+		$(use_enable efl pinentry-efl)
+		$(use_enable emacs pinentry-emacs)
+		$(use_enable keyring libsecret)
+		$(use_enable gtk pinentry-gnome3)
+		$(use_enable ncurses fallback-curses)
+		$(use_enable ncurses pinentry-curses)
+		$(use_enable qt5 pinentry-qt)
+		$(use_enable wayland kf5-wayland)
+		$(use_enable X qtx11extras)
+		$(use_with X x)
+
+		--enable-pinentry-tty
+		--disable-pinentry-fltk
+		--disable-pinentry-gtk2
+
+		MOC="$(qt5_get_bindir)"/moc
+		ac_cv_path_GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config"
+
+		$("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g')
+	)
+
+	econf "${myeconfargs[@]}"
+}
+
+src_install() {
+	default
+
+	rm "${ED}"/usr/bin/pinentry || die
+
+	use qt5 && dosym pinentry-qt /usr/bin/pinentry-qt5
+}
+
+pkg_postinst() {
+	eselect pinentry update ifunset
+}
+
+pkg_postrm() {
+	eselect pinentry update ifunset
+}


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/
@ 2024-03-19  9:08 Sam James
  0 siblings, 0 replies; 11+ messages in thread
From: Sam James @ 2024-03-19  9:08 UTC (permalink / raw
  To: gentoo-commits

commit:     d4318a72783d60913a98818f9af02b118333e7d2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 19 08:53:28 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Mar 19 09:07:43 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4318a72

app-crypt/pinentry: fix qt symlink typo, patch fixes

* re symlink: Not that we're aware of anything needing it...
* Pull in a patch for fixing ifdefs for Qt. Reported by asturm.
* Fix our own automagic patch.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../pinentry/files/pinentry-1.3.0-automagic.patch  |   4 +-
 .../pinentry/files/pinentry-1.3.0-ifdef-qt.patch   | 125 +++++++++++++++++++++
 ...entry-1.3.0.ebuild => pinentry-1.3.0-r1.ebuild} |   3 +-
 3 files changed, 129 insertions(+), 3 deletions(-)

diff --git a/app-crypt/pinentry/files/pinentry-1.3.0-automagic.patch b/app-crypt/pinentry/files/pinentry-1.3.0-automagic.patch
index 1236fb83f16d..a9f59ae66682 100644
--- a/app-crypt/pinentry/files/pinentry-1.3.0-automagic.patch
+++ b/app-crypt/pinentry/files/pinentry-1.3.0-automagic.patch
@@ -131,8 +131,8 @@ https://bugs.gentoo.org/837719
 +    ])
 +
 +    AS_IF([test "$have_qt5_x11extras" = "yes"], [
-+         PINENTRY_QT_CFLAGS="$LIBX11_CFLAGS $PINENTRY_QT_CFLAGS $PINENTRY_QT_X11_EXTRAS_CFLAGS"
-+         PINENTRY_QT_LIBS="$LIBX11_LIBS $PINENTRY_QT_LIBS $PINENTRY_QT_X11_EXTRAS_LIBS"
++         PINENTRY_QT5_CFLAGS="$LIBX11_CFLAGS $PINENTRY_QT5_CFLAGS $PINENTRY_QT5_X11_EXTRAS_CFLAGS"
++         PINENTRY_QT5_LIBS="$LIBX11_LIBS $PINENTRY_QT5_LIBS $PINENTRY_QT5_X11_EXTRAS_LIBS"
 +    ], [
 +        AC_MSG_WARN([pinentry-qt will be built without Caps Lock warning on X11])
 +    ])

diff --git a/app-crypt/pinentry/files/pinentry-1.3.0-ifdef-qt.patch b/app-crypt/pinentry/files/pinentry-1.3.0-ifdef-qt.patch
new file mode 100644
index 000000000000..4fc724287515
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-1.3.0-ifdef-qt.patch
@@ -0,0 +1,125 @@
+https://dev.gnupg.org/D596
+
+From 762346c5d1877cde6b37b191cd3c2469e1c7ddbb Mon Sep 17 00:00:00 2001
+From: Heiko Becker <heiko.becker@kde.org>
+Date: Mon, 18 Mar 2024 20:38:09 +0100
+Subject: [PATCH] qt5: Add a '5' to adjust defines
+
+They were changed from PINENTRY_QT_FOO to PINENTRY_QT5_FOO in
+1e79123c389584b8240387914b193be41b823e92.
+--- a/qt5/capslock.cpp
++++ b/qt5/capslock.cpp
+@@ -32,7 +32,7 @@
+ CapsLockWatcher::Private::Private(CapsLockWatcher *q)
+     : q{q}
+ {
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+     if (qApp->platformName() == QLatin1String("wayland")) {
+         watchWayland();
+     }
+@@ -44,7 +44,7 @@ CapsLockWatcher::CapsLockWatcher(QObject *parent)
+     , d{new Private{this}}
+ {
+     if (qApp->platformName() == QLatin1String("wayland")) {
+-#ifndef PINENTRY_QT_WAYLAND
++#ifndef PINENTRY_QT5_WAYLAND
+         qWarning() << "CapsLockWatcher was compiled without support for Wayland";
+ #endif
+     }
+--- a/qt5/capslock_p.h
++++ b/qt5/capslock_p.h
+@@ -23,7 +23,7 @@
+ 
+ #include "capslock.h"
+ 
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+ namespace KWayland
+ {
+ namespace Client
+@@ -38,12 +38,12 @@ class CapsLockWatcher::Private
+ {
+ public:
+     explicit Private(CapsLockWatcher *);
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+     void watchWayland();
+ #endif
+ 
+ private:
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+     void registry_seatAnnounced(quint32, quint32);
+     void seat_hasKeyboardChanged(bool);
+     void keyboard_modifiersChanged(quint32);
+@@ -52,7 +52,7 @@ private:
+ private:
+     CapsLockWatcher *const q;
+ 
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+     KWayland::Client::Registry *registry = nullptr;
+     KWayland::Client::Seat *seat = nullptr;
+ #endif
+--- a/qt5/capslock_unix.cpp
++++ b/qt5/capslock_unix.cpp
+@@ -25,7 +25,7 @@
+ #include "capslock.h"
+ #include "capslock_p.h"
+ 
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+ # include <KWayland/Client/connection_thread.h>
+ # include <KWayland/Client/keyboard.h>
+ # include <KWayland/Client/registry.h>
+@@ -34,7 +34,7 @@
+ 
+ #include <QGuiApplication>
+ 
+-#ifdef PINENTRY_QT_X11
++#ifdef PINENTRY_QT5_X11
+ # include <QX11Info>
+ # include <X11/XKBlib.h>
+ # undef Status
+@@ -42,25 +42,25 @@
+ 
+ #include <QDebug>
+ 
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+ using namespace KWayland::Client;
+ #endif
+ 
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+ static bool watchingWayland = false;
+ #endif
+ 
+ LockState capsLockState()
+ {
+     static bool reportUnsupportedPlatform = true;
+-#ifdef PINENTRY_QT_X11
++#ifdef PINENTRY_QT5_X11
+     if (qApp->platformName() == QLatin1String("xcb")) {
+         unsigned int state;
+         XkbGetIndicatorState(QX11Info::display(), XkbUseCoreKbd, &state);
+         return (state & 0x01) == 1 ? LockState::On : LockState::Off;
+     }
+ #endif
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+     if (qApp->platformName() == QLatin1String("wayland")) {
+         if (!watchingWayland && reportUnsupportedPlatform) {
+             qDebug() << "Use CapsLockWatcher for checking for Caps Lock on Wayland";
+@@ -74,7 +74,7 @@ LockState capsLockState()
+     return LockState::Unknown;
+ }
+ 
+-#ifdef PINENTRY_QT_WAYLAND
++#ifdef PINENTRY_QT5_WAYLAND
+ void CapsLockWatcher::Private::watchWayland()
+ {
+     watchingWayland = true;
+-- 
+2.44.0

diff --git a/app-crypt/pinentry/pinentry-1.3.0.ebuild b/app-crypt/pinentry/pinentry-1.3.0-r1.ebuild
similarity index 98%
rename from app-crypt/pinentry/pinentry-1.3.0.ebuild
rename to app-crypt/pinentry/pinentry-1.3.0-r1.ebuild
index 48ddc34b18c0..ec8d474a743f 100644
--- a/app-crypt/pinentry/pinentry-1.3.0.ebuild
+++ b/app-crypt/pinentry/pinentry-1.3.0-r1.ebuild
@@ -58,6 +58,7 @@ DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
 PATCHES=(
 	"${FILESDIR}/${PN}-1.0.0-AR.patch"
 	"${FILESDIR}/${PN}-1.3.0-automagic.patch" # bug #819939, bug #837719
+	"${FILESDIR}/${PN}-1.3.0-ifdef-qt.patch"
 )
 
 src_prepare() {
@@ -129,7 +130,7 @@ src_install() {
 
 	if use qt6 ; then
 		dosym pinentry-qt /usr/bin/pinentry-qt6
-	elif use qt6 ; then
+	elif use qt5 ; then
 		dosym pinentry-qt /usr/bin/pinentry-qt5
 	fi
 }


^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2024-03-19  9:08 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-18 14:52 [gentoo-commits] repo/gentoo:master commit in: app-crypt/pinentry/, app-crypt/pinentry/files/ Alon Bar-Lev
  -- strict thread matches above, loose matches on Subject: below --
2024-03-19  9:08 Sam James
2024-02-27 22:06 Sam James
2020-06-07 21:31 Andreas Sturmlechner
2018-03-21 19:35 Kristian Fiskerstrand
2017-12-21 14:59 Andreas Sturmlechner
2017-10-16 21:14 Kristian Fiskerstrand
2016-12-10  8:22 Alon Bar-Lev
2015-09-29 19:31 Kristian Fiskerstrand
2015-09-21 17:21 Kristian Fiskerstrand
2015-09-18 16:11 Kristian Fiskerstrand

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox