summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'gnome-base')
-rw-r--r--gnome-base/gnome-keyring/ChangeLog9
-rw-r--r--gnome-base/gnome-keyring/gnome-keyring-3.2.1.ebuild113
2 files changed, 121 insertions, 1 deletions
diff --git a/gnome-base/gnome-keyring/ChangeLog b/gnome-base/gnome-keyring/ChangeLog
index b28c5e295bb1..32ab884d2632 100644
--- a/gnome-base/gnome-keyring/ChangeLog
+++ b/gnome-base/gnome-keyring/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for gnome-base/gnome-keyring
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-keyring/ChangeLog,v 1.211 2011/10/28 19:59:54 maekke Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-keyring/ChangeLog,v 1.212 2011/10/30 07:21:57 tetromino Exp $
+
+*gnome-keyring-3.2.1 (30 Oct 2011)
+
+ 30 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
+ +gnome-keyring-3.2.1.ebuild:
+ Bump to 3.2.1 from the gnome overlay. Now gtk3-only, and uses p11-kit. Drop
+ alpha, arm, ia64, ppc, ppc64, sparc keywords due to p11-kit.
28 Oct 2011; Markus Meier <maekke@gentoo.org> gnome-keyring-2.32.1-r1.ebuild:
arm stable, bug #385699
diff --git a/gnome-base/gnome-keyring/gnome-keyring-3.2.1.ebuild b/gnome-base/gnome-keyring/gnome-keyring-3.2.1.ebuild
new file mode 100644
index 000000000000..49e3c820fb5d
--- /dev/null
+++ b/gnome-base/gnome-keyring/gnome-keyring-3.2.1.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-keyring/gnome-keyring-3.2.1.ebuild,v 1.1 2011/10/30 07:21:57 tetromino Exp $
+
+EAPI="4"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+
+inherit gnome2 multilib pam virtualx
+
+DESCRIPTION="Password and keyring managing daemon"
+HOMEPAGE="http://www.gnome.org/"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+IUSE="+caps debug doc pam test"
+KEYWORDS="~amd64 ~mips ~sh ~x86 ~x86-fbsd ~amd64-linux ~sparc-solaris ~x86-linux ~x86-solaris"
+
+# USE=valgrind is probably not a good idea for the tree
+RDEPEND=">=dev-libs/glib-2.25:2
+ >=x11-libs/gtk+-2.90.0:3
+ >=app-crypt/p11-kit-0.6
+ app-misc/ca-certificates
+ >=dev-libs/libgcrypt-1.2.2
+ >=dev-libs/libtasn1-1
+ >=sys-apps/dbus-1.0
+ caps? ( sys-libs/libcap-ng )
+ pam? ( virtual/pam )
+"
+# valgrind? ( dev-util/valgrind )
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ >=dev-util/gtk-doc-am-1.9
+ >=dev-util/intltool-0.35
+ >=dev-util/pkgconfig-0.9
+ doc? ( >=dev-util/gtk-doc-1.9 )"
+PDEPEND=">=gnome-base/libgnome-keyring-3.1.92"
+# eautoreconf needs:
+# >=dev-util/gtk-doc-am-1.9
+
+pkg_setup() {
+ DOCS="AUTHORS ChangeLog NEWS README"
+ G2CONF="${G2CONF}
+ $(use_enable debug)
+ $(use_enable test tests)
+ $(use_with caps libcap-ng)
+ $(use_enable pam)
+ $(use_with pam pam-dir $(getpam_mod_dir))
+ --with-root-certs=${EPREFIX}/etc/ssl/certs/
+ --enable-ssh-agent
+ --enable-gpg-agent
+ --disable-update-mime"
+# $(use_enable valgrind)
+}
+
+src_prepare() {
+ # Disable gcr tests due to weirdness with opensc
+ # ** WARNING **: couldn't load PKCS#11 module: /usr/lib64/pkcs11/gnome-keyring-pkcs11.so: Couldn't initialize module: The device was removed or unplugged
+ sed -e 's/^\(SUBDIRS = \.\)\(.*\)/\1/' \
+ -i gcr/Makefile.* || die "sed failed"
+
+ gnome2_src_prepare
+}
+
+src_test() {
+ # FIXME: /gkm/transaction/ tests fail
+ unset DBUS_SESSION_BUS_ADDRESS
+ Xemake check || die "emake check failed!"
+}
+
+pkg_postinst() {
+ use caps && fcaps 0:0 755 cap_ipc_lock "${ROOT}"/usr/bin/gnome-keyring-daemon
+
+ gnome2_pkg_postinst
+}
+
+# borrowed from GSoC2010_Gentoo_Capabilities by constanze and Flameeyes
+# @FUNCTION: fcaps
+# @USAGE: fcaps {uid:gid} {file-mode} {cap1[,cap2,...]} {file}
+# @RETURN: 0 if all okay; non-zero if failure and fallback
+# @DESCRIPTION:
+# fcaps sets the specified capabilities in the effective and permitted set of
+# the given file. In case of failure fcaps sets the given file-mode.
+fcaps() {
+ local uid_gid=$1
+ local perms=$2
+ local capset=$3
+ local path=$4
+ local res
+
+ chmod $perms $path && \
+ chown $uid_gid $path
+ res=$?
+
+ use caps || return $res
+
+ #set the capability
+ setcap "$capset=ep" "$path" &> /dev/null
+ #check if the capabilitiy got set correctly
+ setcap -v "$capset=ep" "$path" &> /dev/null
+ res=$?
+
+ if [ $res -ne 0 ]; then
+ ewarn "Failed to set capabilities. Probable reason is missed kernel support."
+ ewarn "Kernel must have SECURITY_FILE_CAPABILITIES, and <FS>_FS_SECURITY"
+ ewarn "enabled (e.g. EXT3_FS_SECURITY) where <FS> is the filesystem to store"
+ ewarn "${path}"
+ ewarn
+ ewarn "Falling back to suid now..."
+ chmod u+s ${path}
+ fi
+ return $res
+}