# Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ EAPI="5" GCONF_DEBUG="yes" # Not gnome macro but similar GNOME2_LA_PUNT="yes" PYTHON_COMPAT=( python2_7 ) inherit fcaps gnome2 pam python-any-r1 versionator 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" KEYWORDS="alpha amd64 arm ~arm64 ~ia64 ~mips ppc ~ppc64 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~sparc-solaris ~x86-solaris" # Replace gkd gpg-agent with pinentry[gnome-keyring] one, bug #547456 RDEPEND=" >=app-crypt/gcr-3.5.3:=[gtk] >=dev-libs/glib-2.38:2 app-misc/ca-certificates >=dev-libs/libgcrypt-1.2.2:0= caps? ( sys-libs/libcap-ng ) pam? ( virtual/pam ) >=app-crypt/gnupg-2.0.28:= " DEPEND="${RDEPEND} >=app-eselect/eselect-pinentry-0.5 app-text/docbook-xml-dtd:4.3 dev-libs/libxslt >=dev-util/intltool-0.35 sys-devel/gettext 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() { # FIXME: this should be handled at eclass level "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/schema" || die unset DBUS_SESSION_BUS_ADDRESS GSETTINGS_SCHEMA_DIR="${S}/schema" Xemake 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 }