Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 454908 - gnome-base/gnome-keyring: convert to fcaps.eclass
Summary: gnome-base/gnome-keyring: convert to fcaps.eclass
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords: NeedPatch
Depends on:
Blocks:
 
Reported: 2013-01-31 22:11 UTC by SpanKY
Modified: 2014-06-22 09:25 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description SpanKY gentoo-dev 2013-01-31 22:11:50 UTC
we have fcaps.eclass now.  no need to implement the logic in the ebuild itself.
Comment 1 Pacho Ramos gentoo-dev 2013-04-27 06:55:16 UTC
Could you guide me a bit about hot to migrate? The problem is that options are passed differently in both implementations... and I don't have much idea about caps :S

-> current gnome-keyring implementation passes:
fcaps {uid:gid} {file-mode} {cap1[,cap2,...]} {file}

-> fcaps.eclass needs:
[-o <owner>] [-g <group>] [-m <mode>] [-M <caps mode>] <capabilities> <file[s]>

We currently run the following:
fcaps 0:0 755 cap_ipc_lock "${EROOT}"/usr/bin/gnome-keyring-daemon

I guess it should be converted to:
fcaps -o 0 -g 0 -m 755 -M (???? no idea) cap_ipc_lock "${EROOT}"/usr/bin/gnome-keyring-daemon

Thanks for your help
Comment 2 SpanKY gentoo-dev 2013-04-27 07:19:54 UTC
(In reply to comment #1)

pretty sure you just want:

pkg_postinst() {
    fcaps cap_ipc_lock usr/bin/gnome-keyring-daemon
    gnome2_pkg_postinst
}
Comment 3 Pacho Ramos gentoo-dev 2013-04-27 09:38:35 UTC
I have seen eclass relies on sys-libs/libcap while gnome-keyring is depending on sys-libs/libcap-ng, not sure if it will work ok :/
Comment 4 SpanKY gentoo-dev 2013-04-27 10:21:24 UTC
(In reply to comment #3)

they don't block each other, and since many packages already depend on one or the other, i imagine most people already have both installed.

we can file a bug to extend the eclass to support both, but i don't think it should block updating the gnome ebuild.
Comment 5 Pacho Ramos gentoo-dev 2013-04-27 10:32:12 UTC
The problem is that looks like gnome-keyring relies on libcap-ng at runtime (as I can see in its configure and current RDEPEND value)
Comment 6 SpanKY gentoo-dev 2013-04-27 11:21:53 UTC
(In reply to comment #5)

why does that matter ?  the only change you need to make is the one i posted.  you shouldn't modify anything else in the ebuild (other than deleting the fcaps func and inheriting the new eclass).
Comment 7 Pacho Ramos gentoo-dev 2013-04-27 11:50:30 UTC
One last question: should filecaps USE flag be used also for compiling libcap-ng support instead of "caps" USE flag? Currently, fcaps is run when USE "caps" is set, relying on eclass would end it being run when USE="filecaps" is set. Not sure if that is expected (I mean, people having "caps" USE flag but not getting fcaps run because they don't have filecaps enabled)
Comment 8 SpanKY gentoo-dev 2013-04-27 17:09:35 UTC
(In reply to comment #7)

no.  USE=caps and USE=filecaps are orthogonal.

the eclass defaults to +filecaps, so i wouldn't worry about that.
Comment 9 SpanKY gentoo-dev 2013-04-28 04:25:19 UTC
the libcap-ng filecaps command line interface is pretty crappy, but i've added support for it now:
http://sources.gentoo.org/eclass/fcaps.eclass?r1=1.4&r2=1.5
Comment 10 Pacho Ramos gentoo-dev 2013-04-28 13:39:30 UTC
+*gnome-keyring-3.8.1 (28 Apr 2013)
+
+  28 Apr 2013; Pacho Ramos <pacho@gentoo.org> +gnome-keyring-3.8.1.ebuild,
+  -gnome-keyring-3.6.2.ebuild:
+  Version bump, use fcaps.eclass (#454908 by SpanKY), fix dependencies (#467416
+  by Tolga Dalman), drop unexisting configure options. Drop old
+