1 |
2011/7/15 Donnie Berkholz <dberkholz@g.o>: |
2 |
> On 06:22 Thu 14 Jul š š , áÌÅËÓÁÎÄÒ âÅÒÓÅÎÅ× wrote: |
3 |
>> - filter packages which are part of system profile in output |
4 |
> |
5 |
> Can you make this optional? If I'm working on a system-level package, I |
6 |
> might want to keep track of some of its system dependencies. |
7 |
Yes, this is already optional. I am trying to shrink an output, but |
8 |
there is --verbose key to show all packages, including "unknown" |
9 |
package and unknown stages and also there is --files key to show not |
10 |
only packages and stages, but also files accessed(including not |
11 |
founded and blocked). |
12 |
|
13 |
I think in most cases filtering system packages from output is useful |
14 |
because this packages almost never listed in dependencies and user has |
15 |
them installed in general case. |
16 |
|
17 |
>> - filter packages which having files accessed only, but not readed or |
18 |
>> writed or executed. |
19 |
> |
20 |
> Why does this happen, anyway? |
21 |
> |
22 |
This is very rare case, for example when program scans a directory. |
23 |
I've seen this for one or two times only. |
24 |
|
25 |
I am trying to get rid from non-dependency packages in output. Here is |
26 |
few examples. |
27 |
All non-system packages when "emerge lsof": |
28 |
dev-lang/python-3.1.3-r1 |
29 |
<many files here> |
30 |
dev-libs/openssl-1.0.0d : ['unpack', 'compile', |
31 |
'test', 'install'] |
32 |
/etc/sandbox.d/10openssl readed |
33 |
media-libs/fontconfig-2.8.0-r1 : ['unpack', 'compile', |
34 |
'test', 'install'] |
35 |
/etc/sandbox.d/37fontconfig readed |
36 |
net-zope/zope-fixers-1.0 : ['setup', 'unpack', |
37 |
'compile', 'test', 'install', 'preinst', 'postinst', 'prerm', |
38 |
'postrm'] |
39 |
/usr/lib64/python3.1/site-packages/zope.fixers-1.0-py3.1-nspkg.pth readed |
40 |
net-zope/zope-interface-3.6.2 : ['setup', 'unpack', |
41 |
'compile', 'test', 'install', 'preinst', 'postinst', 'prerm', |
42 |
'postrm'] |
43 |
/usr/lib64/python3.1/site-packages/zope.interface-3.6.2-py3.1-nspkg.pth readed |
44 |
sys-apps/sandbox-2.5 : ['unpack', 'compile', |
45 |
'test', 'install'] |
46 |
/etc/sandbox.d/00default readed |
47 |
/etc/sandbox.conf readed |
48 |
/usr/share/sandbox/sandbox.bashrc readed |
49 |
|
50 |
Openssl and fontconfig is here because /etc/sandbox.d/* is readed. I |
51 |
think about filtering this directory from logging. Python is here |
52 |
because it is not a part of system set. I don't know about zope-* |
53 |
packages and why they have files readed. |
54 |
|
55 |
While I do emerge bash I got more packages: |
56 |
sys-devel/crossdev-20110310 : ['compile'] |
57 |
/usr/share/config.site readed |
58 |
/usr/share/crossdev/include/site/linux readed |
59 |
sys-devel/gettext-0.18.1.1-r2 : ['compile'] |
60 |
/usr/bin/msgmerge readed |
61 |
/usr/bin/xgettext readed |
62 |
/usr/bin/msgfmt readed |
63 |
/usr/bin/gmsgfmt readed |
64 |
|
65 |
Gettext is a dependency of bash, but crossdev is unknown package. |
66 |
|
67 |
>> - highlight packages, used during package building but not listed in |
68 |
>> dependency lists of any level |
69 |
> |
70 |
> For DEPEND rather than RDEPEND ones, we'll want to make sure they're |
71 |
> definitely listed in dependencies of the ebuild being used, rather than |
72 |
> any level. |
73 |
|
74 |
The main drawback of hooklib approach is an inability to track what |
75 |
files have been loaded while exec call(runtime libraries). Most |
76 |
RDEPENDS are naturally filtered here. Fusefs approach logs all file |
77 |
system events. |
78 |
|
79 |
This is a difficult problem to distinguish RDEPENDS from DEPENDS. If I |
80 |
look on files accessed I can say if the dependency is runtime, but I |
81 |
haven't general strategy. I should watch more building logs of various |
82 |
packages to find a way. |
83 |
|
84 |
Best, |
85 |
Alexander Bersenev |