1 |
On Tue, 26 Aug 2014 13:30:58 +0200 |
2 |
Alan McKinnon <alan.mckinnon@×××××.com> wrote: |
3 |
|
4 |
> On 26/08/2014 12:00, Gevisz wrote: |
5 |
> > On Tue, 26 Aug 2014 10:42:01 +0100 |
6 |
> > Peter Humphrey <peter@××××××××××××.uk> wrote: |
7 |
> > |
8 |
> >> On Tuesday 26 August 2014 12:21:35 Gevisz wrote: |
9 |
> >>> I have just tried to upgrade my system (which I do almost every |
10 |
> >>> day) and found out that portage wants to install 6 new python |
11 |
> >>> packages that seem to be unnecessary because for example |
12 |
> >>> # equery depends dev-python/pyopenssl |
13 |
> >>> reports that no other package depends on this one. |
14 |
> >>> |
15 |
> >>> The same situation is with all the other python packages. |
16 |
> >>> |
17 |
> >>> # emerge --update --deep --with-bdeps=y --newuse --backtrack=60 |
18 |
> >>> --ask world |
19 |
> >> |
20 |
> >> It could be that "--with-bdeps=y" term. I took a long time to learn |
21 |
> >> that lesson, as old-timers may remember. |
22 |
> >> |
23 |
> >> What happens if you change y to n? |
24 |
> > |
25 |
> > In this case, the portage wants to update all the same "unnecessary" |
26 |
> > python packages and only decides not to update the eselect-ruby. |
27 |
> |
28 |
> |
29 |
> You've approached this in an inefficient way. |
30 |
> |
31 |
> When portage gives an odd list of dependencies to be emerged |
32 |
> (especially if they are new indicated by [ebuild N ]), then |
33 |
> always run emerge with the -t option. This will display the same |
34 |
> output in a tree view showing you what pulls things in. This exactly |
35 |
> answers the question you asked. |
36 |
|
37 |
Thank you for the hint. I will try it next time but now |
38 |
# emerge -t pyopenssl |
39 |
just re-emerged the package and I saw no dependencies. |
40 |
|
41 |
> Looking at emerge output without the -t option does not show this |
42 |
> information, so you don't know. |
43 |
> |
44 |
> When a package is to be installed new (i.e. not an update) then |
45 |
> "equery depends" is pointless. That form of the command shows the |
46 |
> dependencies for *installed*packages*, so obviously can't show the |
47 |
> deps for something not installed yet. |
48 |
|
49 |
Yes, now "equery depends" shows that pyopenssl is needed for ssl-fetch |
50 |
and ndg-httpsclient, ssl-fetch is needed for mirrorselect is needed for |
51 |
nothing. :) |
52 |
|
53 |
I do not remember installing mirrorselect, at least I never used it |
54 |
(just now found out what it is used for) but somehow it managed to get |
55 |
into my world file... |
56 |
|
57 |
May be I used it during my first Gentoo installation, my birth as Gentoo |
58 |
user. We usually do not remember what happened during our births. :) |
59 |
|
60 |
> There are options to equery that make it search the tree itself, |
61 |
> not your vdb, but they are slo-o-o-ow. maan equery for details. |
62 |
|
63 |
I am not in a hurry, so will look for this option too. :) |
64 |
|
65 |
> --with-bdeps=n omits eselect-ruby as it is a build depend for some |
66 |
> package. A build depend means you need it to build something not to |
67 |
> run it. Portage defaults to n on this to make things a little more |
68 |
> efficient and compile less stuff. In your case eselect-ruby will only |
69 |
> be updated when something else that needs it at build time is |
70 |
> updated. Until then you strictly speaking don't really need it to be |
71 |
> updated. |
72 |
|
73 |
Thank you for the explanations. |