When some dependency needs virtual/xyz, xyz is resolved according to /usr/portage/profiles/base/virtuals, but that's possibly not what the user wants. For example, when mail-mta/ssmtp would be installed, one would like to find out 1. which virtual is satisfied by mail-mta/ssmtp? 2. which packages provide this virtual? I see no possibility but something like grep -rls "PROVIDE=.*virtual/xyz" /usr/portage/* which runs very long. IMHO equery should provide that function. It would be a direct support of the gentoo main goal to assist the user in being flexible about what implementation of some service (s)he wants to use. Reproducible: Always Steps to Reproduce: (see "Details")
reminder: add aux-get.py functionality to equery
(In reply to comment #0) > IMHO equery should provide that function. This would be a good feature for emerge --search too.
> reminder: add aux-get.py functionality to equery That has been done in the -0.3.0_rc11 and up. equery has {aux_get_key} value but so far it is just a simple text lookup for matching, so some keys are not useful lookups. Useful ones are SLOT, repository, EAPI, LICENSE, FEATURES, NEEDED, LDFLAGS, INHERITED...
Now that old style virtuals are removed from the tree, this can be done with the following command: # equery depgraph virtual/mta * Searching for mta in virtual ... * dependency graph for virtual/mta-0 `-- virtual/mta-0 amd64 `-- mail-mta/ssmtp-2.64-r2 (>=mail-mta/ssmtp-2.64-r2) ~amd64 [mta] `-- mail-mta/ssmtp-2.64-r1 (<mail-mta/ssmtp-2.64-r2) ~amd64 `-- mail-mta/courier-0.65.2-r1 (mail-mta/courier) amd64 `-- mail-mta/esmtp-1.2 (mail-mta/esmtp) amd64 `-- mail-mta/exim-4.76 (mail-mta/exim) amd64 `-- mail-mta/mini-qmail-1.06 (mail-mta/mini-qmail) ~amd64 `-- mail-mta/msmtp-1.4.24 (>=mail-mta/msmtp-1.4.19-r1) ~amd64 [mta] `-- mail-mta/nbsmtp-1.00-r3 (mail-mta/nbsmtp) ~amd64 `-- mail-mta/netqmail-1.06 (mail-mta/netqmail) amd64 `-- mail-mta/nullmailer-1.04 (mail-mta/nullmailer) amd64 `-- mail-mta/postfix-2.8.3-r1 (mail-mta/postfix) ~amd64 `-- mail-mta/qmail-ldap-1.03-r8 (mail-mta/qmail-ldap) ~amd64 `-- mail-mta/sendmail-8.14.5 (mail-mta/sendmail) ~amd64 `-- mail-mta/citadel-7.86 (mail-mta/citadel) ~amd64 [-postfix] [ virtual/mta-0 stats: packages (15), max depth (1) ] Any overlays with old style virtuals should be able to be queried with equery has in gentoolkit-0.3.0.4