summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2020-09-19 21:19:03 +0200
committerPacho Ramos <pacho@gentoo.org>2020-09-19 21:19:14 +0200
commitaded35c7374e1e40e77d943a01157a5c7d6d05f0 (patch)
tree83c71a3e492b8c5afaed605d694092fd0f2201d9 /gnome-base
parentapp-misc/realpath: Stabilize 1.18 s390, #724020 (diff)
downloadgentoo-aded35c7374e1e40e77d943a01157a5c7d6d05f0.tar.gz
gentoo-aded35c7374e1e40e77d943a01157a5c7d6d05f0.tar.bz2
gentoo-aded35c7374e1e40e77d943a01157a5c7d6d05f0.zip
gnome-base/gnome-keyring: Port to python3
Also fix test failures due to dbus not being run Thanks-to: Michał Górny Bug: https://bugs.gentoo.org/735348 Package-Manager: Portage-3.0.7, Repoman-3.0.1 Signed-off-by: Pacho Ramos <pacho@gentoo.org>
Diffstat (limited to 'gnome-base')
-rw-r--r--gnome-base/gnome-keyring/gnome-keyring-3.36.0-r1.ebuild81
1 files changed, 81 insertions, 0 deletions
diff --git a/gnome-base/gnome-keyring/gnome-keyring-3.36.0-r1.ebuild b/gnome-base/gnome-keyring/gnome-keyring-3.36.0-r1.ebuild
new file mode 100644
index 000000000000..aa54f87539b6
--- /dev/null
+++ b/gnome-base/gnome-keyring/gnome-keyring-3.36.0-r1.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+PYTHON_COMPAT=( python3_{7..9} )
+
+inherit fcaps gnome2 pam python-any-r1 virtualx
+
+DESCRIPTION="Password and keyring managing daemon"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeKeyring"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+caps pam selinux +ssh-agent test"
+RESTRICT="!test? ( test )"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+
+# Replace gkd gpg-agent with pinentry[gnome-keyring] one, bug #547456
+RDEPEND="
+ >=app-crypt/gcr-3.27.90:=[gtk]
+ >=dev-libs/glib-2.44:2
+ app-misc/ca-certificates
+ >=dev-libs/libgcrypt-1.2.2:0=
+ caps? ( sys-libs/libcap-ng )
+ pam? ( sys-libs/pam )
+ selinux? ( sec-policy/selinux-gnome )
+ >=app-crypt/gnupg-2.0.28:=
+ ssh-agent? ( net-misc/openssh )
+"
+DEPEND="${RDEPEND}
+ >=app-eselect/eselect-pinentry-0.5
+ app-text/docbook-xml-dtd:4.3
+ dev-libs/libxslt
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+ test? ( ${PYTHON_DEPS} )
+"
+PDEPEND="app-crypt/pinentry[gnome-keyring]" #570512
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # Disable stupid CFLAGS with debug enabled
+ sed -e 's/CFLAGS="$CFLAGS -g"//' \
+ -e 's/CFLAGS="$CFLAGS -O0"//' \
+ -i configure.ac configure || die
+
+ gnome2_src_prepare
+}
+
+src_configure() {
+ gnome2_src_configure \
+ $(use_with caps libcap-ng) \
+ $(use_enable pam) \
+ $(use_with pam pam-dir $(getpam_mod_dir)) \
+ $(use_enable selinux) \
+ $(use_enable ssh-agent) \
+ --enable-doc
+}
+
+src_test() {
+ # Needs dbus-run-session to not get:
+ # ERROR: test-dbus-search process failed: -6
+ "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/schema" || die
+ GSETTINGS_SCHEMA_DIR="${S}/schema" virtx dbus-run-session emake check
+}
+
+pkg_postinst() {
+ # cap_ipc_lock only needed if building --with-libcap-ng
+ # Never install as suid root, this breaks dbus activation, see bug #513870
+ use caps && fcaps -m 755 cap_ipc_lock usr/bin/gnome-keyring-daemon
+ gnome2_pkg_postinst
+
+ if ! [[ $(eselect pinentry show | grep "pinentry-gnome3") ]] ; then
+ ewarn "Please select pinentry-gnome3 as default pinentry provider:"
+ ewarn " # eselect pinentry set pinentry-gnome3"
+ fi
+}