On Mon, Mar 12, 2012 at 1:05 PM, Bruce Hill, Jr.
<da...@happypenguincomputers.com> wrote:
>  These virtual apps are irritating me, and the fanboi answers in #gentoo
> are worse.
>
> What is the purpose of virtual/shadow and why would I want it?

Virtual packages are kind of an abstraction layer for compatible
alternative packages. Other packages can depend on the virtual instead
of depending on every combination of possible alternatives, and the
user can install whichever of the alternatives he prefers.

For example, MariaDB is a drop-in replacement for MySQL. From a
dependency standpoint, they are compatible. Instead of any program
depending on MySQL being modified to check for either MySQL or
MariaDB, virtual/mysql was created and it can be satisfied by either
dev-db/mysql or dev-db/mariadb being installed.

In the case of shadow, he new virtual is to allow you to use either
sys-apps/shadow or sys-apps/hardened-shadow. See here:
http://www.gossamer-threads.com/lists/gentoo/dev/249394

If you view the virtual package's ebuild, this line is the key:
RDEPEND="|| ( >=sys-apps/shadow-4.1 sys-apps/hardened-shadow )"


HTH :)

Reply via email to