This is a reference on how to indicate a specific package when interacting with Portage.
A version specifier is the precise format used to tell emerge exactly what package to install, with optional version, slot, or ebuild repository of origin. The format is also used in files in /etc/portage, and generally in Gentoo.
A version specifier is based on the category/package pair, with extra information if necessary. In some case the category may be omitted, if the package name is unique in all ebuild repositories configured with Portage, for example when using the emerge command.
Version specifiers are also known as "DEPEND atoms" in Portage documentation. For the ebuild development perspective, see the Gentoo Development Guide.
Version specifier format
Matches any version of a package.
When specifying a package version, a comparison operator must be used at the beginning of the atom.
Matches version and any revision.
Matches a version by the version range. Note that there's no "." before the "*".
Please note that
sys-devel/gdb-7.3*, for example, would also match
sys-devel/gdb-7.30(if that actually existed). Also, you cannot avoid this by trying with
7.3.(with a trailing dot) is not a valid version number.
Matches a version exactly.
Matches the specified version or any higher version.
Matches a version strictly later than specified.
Matches a version strictly older than specified.
Matches the specified version or any older version.
Matches package in the specified package SLOT. Note that there is no prefix.
By ebuild repository
Matches a package from a specific ebuild repository. This can be combined with other specifiers. The official Gentoo repository is ::gentoo.