diff options
author | Ulrich Müller <ulm@gentoo.org> | 2023-11-18 10:31:29 +0100 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2023-11-20 21:38:41 +0100 |
commit | 5a5c83ecc8034ec47a118299f5442521b546466c (patch) | |
tree | 7dc8fccce9ec267587d17fc05fb4a4bcb63a9742 /app-crypt | |
parent | sys-apps/byld: use HTTPS (diff) | |
download | gentoo-5a5c83ecc8034ec47a118299f5442521b546466c.tar.gz gentoo-5a5c83ecc8034ec47a118299f5442521b546466c.tar.bz2 gentoo-5a5c83ecc8034ec47a118299f5442521b546466c.zip |
app-crypt/pinentry: Add USE-dependency on app-emacs/pinentry
Emacs pinentry will only work when it can talk to its server counterpart
from either app-editors/emacs:25 or app-emacs/pinentry.
While gpg2 will work without this (in "loopback" pinentry-mode), the
Emacs pinentry dialog is still needed with gpgsm, e.g. when signing
e-mail with a S/MIME certificate.
Technically, the dependency could be on "|| ( app-emacs/pinentry
app-editors/emacs:25 )", but pulling in a previous slot of Emacs doesn't
seem useful.
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Diffstat (limited to 'app-crypt')
-rw-r--r-- | app-crypt/pinentry/pinentry-1.2.1-r4.ebuild | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/app-crypt/pinentry/pinentry-1.2.1-r4.ebuild b/app-crypt/pinentry/pinentry-1.2.1-r4.ebuild new file mode 100644 index 000000000000..bbe3365178ef --- /dev/null +++ b/app-crypt/pinentry/pinentry-1.2.1-r4.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2023 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 ~loong ~m68k ~mips ~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-frameworks/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 +) + +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 + GPG_ERROR_CONFIG="${ESYSROOT}"/usr/bin/${CHOST}-gpg-error-config + LIBASSUAN_CONFIG="${ESYSROOT}"/usr/bin/libassuan-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 +} |