mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 17:09:10 -07:00
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
This commit is contained in:
@@ -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
|
||||
|
||||
103
app-crypt/pinentry/pinentry-1.0.0-r3.ebuild
Normal file
103
app-crypt/pinentry/pinentry-1.0.0-r3.ebuild
Normal file
@@ -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
|
||||
}
|
||||
Reference in New Issue
Block a user