1 |
On Sun, 6 Mar 2011 17:34:29 +0100 |
2 |
Constanze Hausner <constanze@g.o> wrote: |
3 |
|
4 |
> On 17:44 Sat 05 Mar , Ciaran McCreesh wrote: |
5 |
> > * some filesystems don't support xattrs at all, and the package |
6 |
> > manager needs to support installing to them, even if the user is |
7 |
> > building on a filesystem that does support it |
8 |
> |
9 |
> While GSoC I was not able to come up with a good fallback mechanism. |
10 |
> I'm going to give the new ideas some thought over the week and |
11 |
> hopefully come up with something good :). |
12 |
|
13 |
How about that: |
14 |
1) src_install() installs a file, like in: |
15 |
/var/lib/gentoo/filecaps.d/${PF} |
16 |
specifying which caps have to applied to which files, |
17 |
|
18 |
2) the eclass depends on an ebuild, installing a kind |
19 |
of 'filecaps-apply' tool, reading information from that file and trying |
20 |
to apply filecaps as necessary (and flipping setuid bits), |
21 |
|
22 |
3) the eclass calls that tool in pkg_postinst() to apply the caps |
23 |
on the target filesystem. |
24 |
|
25 |
This should help with all the issues mentioned, including binpkg |
26 |
support. Moreover, user could use the tool manually to restore/reset |
27 |
filecaps if they were lost or unapplied (e.g. due to incorrect kernel |
28 |
config). |
29 |
|
30 |
-- |
31 |
Best regards, |
32 |
Michał Górny |