The :: repository syntax should be mentioned in the emerge man pages, it's mostly seen in output and isn't described with much prominence. I'd have expected explicit mention in man emerge, so tried to rewite that section since I was thinking about these things today. Without options emerge primarily installs packages given to it as arguments, which can be: EBUILD The short form is any valid Portage package directory names, such as 'portage' or 'python'. Additional options for categories ( category/name ), versions ( =name-version ) and repositories ( name::repo ) can be added to each individual package argument. eg: emerge sys-apps/portage =python-x.x.x_beta::local Emerge ignores trailing slashes so files can be used for completions, and although it can work with .ebuild files directly this is not fully functional, can break things and is supported. ATOMS An atom can specify a package argument with more complex bounds, and always contains the category and package name. It allows selecting versions with more prefix operators ( > >= = <= < ~ ! !! ), matches in version postfixes ( atom-2*), slots ( atom:slot ) and other features as described in man (emerge (5)). Note that in many shells you will need to escape characters such as '<' and '='; use single- or double-quotes around the atom to get around escaping problems. SETS A set is a convenient shorthand for a large group of packages and must be prefixed with @ to be recognised as a set argument. Six sets are currently always available selected-packages contains the user-selected "world" packages that are listed in /var/lib/portage/world selected-sets contains the nested sets that may be listed in /var/lib/portage/world_sets. system profile both refer to sets of packages deemed necessary for your system to run properly (see portage(5)) selected selected-packages + selected-sets world selected+system+profile (See FILES below for more information.) Other sets can exist depending on the current configuration, user sets may be created by placing files in the /etc/portage/sets/ directory (see portage(5)) and the default set configuration is located in /usr/share/portage/config/sets. Note that a set is generally used in conjunction with --update. TBZ2FILE A tbz2file must be a valid .tbz2 created with 'ebuild <package>-<version>.ebuild package', emerge with --buildpkg or --buildpkgonly options or quickpkg. FILE A file must be a file or directory that has been installed by one or more packages. If an absolute path is not used then it must begin with either "./" or "../". For directories that are owned by multiple packages all owning packages will be selected. See the 'portageq owners' command if you would like to query the owners of one or more files or directories. Reproducible: Didn't try Steps to Reproduce: n/a Actual Results: n/a Expected Results: n/a