10

Well, some packages are installed by my explicit request. These packages are listed in /var/lib/portage/world.

But there are packages installed because they required by some of these explicitly installed packages.

Let's say I found out that some package aaa/bbb-1.2.3 is installed on my system. It's not in the world set. So there must be one or several packages in the world set which require (may be indirectly) the aaa/bbb package. How can I find out what are these packages? As a bonus I want to be able to understand why is is version 1.2.3 which is installed.

equery (d)epends command (installed by app-portage/gentoolkit package) can "list all packages directly depending on ATOM". But it's quite far from what I need.

2
  • equery can work this way, equery depends bbb-1.2.3. Besides, rare packages depend on a specific version. Most of them depend on other packages like, >aaa/bbb-1.0.0. So if some time later, bbb has a new version, say 1.2.5, then when you upgrade Gentoo, bbb will be updated to 1.2.5, because 1.2.5 is greater than 1.0.0, it still satisfy the dependency. I mean IMO understanding why this version is installed is not that meaningful.
    – Bruce
    Commented Dec 7, 2017 at 0:09
  • @Bruce equery depends bbb produces a list of all the packages that require bbb. Even those not installed. emerge -pv --depclean reports only installed packages - very convenient. Update: Hmm, help says it should report only installed packages. Strange.
    – lesnik
    Commented Dec 7, 2017 at 18:21

1 Answer 1

10

You can see all the packages that depend on the package (and which version they pull in) with:

emerge -pv --depclean <package-name>

Or maybe the output from

equery d -D <package-name>

is what you want: a tree of all the packages that indirectly depend on the package

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .