On Tue, 26 Aug 2014 13:30:58 +0200 Alan McKinnon <alan.mckin...@gmail.com> wrote:
> On 26/08/2014 12:00, Gevisz wrote: > > On Tue, 26 Aug 2014 10:42:01 +0100 > > Peter Humphrey <pe...@prh.myzen.co.uk> wrote: > > > >> On Tuesday 26 August 2014 12:21:35 Gevisz wrote: > >>> I have just tried to upgrade my system (which I do almost every > >>> day) and found out that portage wants to install 6 new python > >>> packages that seem to be unnecessary because for example > >>> # equery depends dev-python/pyopenssl > >>> reports that no other package depends on this one. > >>> > >>> The same situation is with all the other python packages. > >>> > >>> # emerge --update --deep --with-bdeps=y --newuse --backtrack=60 > >>> --ask world > >> > >> It could be that "--with-bdeps=y" term. I took a long time to learn > >> that lesson, as old-timers may remember. > >> > >> What happens if you change y to n? > > > > In this case, the portage wants to update all the same "unnecessary" > > python packages and only decides not to update the eselect-ruby. > > > You've approached this in an inefficient way. > > When portage gives an odd list of dependencies to be emerged > (especially if they are new indicated by [ebuild N ]), then > always run emerge with the -t option. This will display the same > output in a tree view showing you what pulls things in. This exactly > answers the question you asked. Thank you for the hint. I will try it next time but now # emerge -t pyopenssl just re-emerged the package and I saw no dependencies. > Looking at emerge output without the -t option does not show this > information, so you don't know. > > When a package is to be installed new (i.e. not an update) then > "equery depends" is pointless. That form of the command shows the > dependencies for *installed*packages*, so obviously can't show the > deps for something not installed yet. Yes, now "equery depends" shows that pyopenssl is needed for ssl-fetch and ndg-httpsclient, ssl-fetch is needed for mirrorselect is needed for nothing. :) I do not remember installing mirrorselect, at least I never used it (just now found out what it is used for) but somehow it managed to get into my world file... May be I used it during my first Gentoo installation, my birth as Gentoo user. We usually do not remember what happened during our births. :) > There are options to equery that make it search the tree itself, > not your vdb, but they are slo-o-o-ow. maan equery for details. I am not in a hurry, so will look for this option too. :) > --with-bdeps=n omits eselect-ruby as it is a build depend for some > package. A build depend means you need it to build something not to > run it. Portage defaults to n on this to make things a little more > efficient and compile less stuff. In your case eselect-ruby will only > be updated when something else that needs it at build time is > updated. Until then you strictly speaking don't really need it to be > updated. Thank you for the explanations.