ebuild and exheres Repository Formats
The ebuild repository format is used on Gentoo and derived distributions for repositories containing
ebuilds. The exheres repository format is used on Exherbo for repositories containing exheres packages.
Except where noted, all options described below are common to both formats.
As well as the general keys supported for all repositories, the following keys have meaning
for ebuild and exheres format repositories:
location- The location of the repository. Mandatory.
master_repository- If set to the name of another ebuild-format repository, that repository is used as a 'master' for any part of
this repository that is not defined. Also changes the default importance of this repository from 0 to 10. (In
Portage terms, this is similar to saying that this repository is an overlay with the master as the main repository.
However, identically named and versioned packages in this repository do not hide those in the master.)
Exheresformat repositories describe their own masters, so this option does not apply to them. profiles- A space separated list of directories to use as profiles. Later entries override earlier entries. Inherited from
a master if unspecified, mandatory otherwise. (In Portage terms, this is like the
/etc/make.profilesymlink.) eclassdirs- A space separated list of directories in which to find eclasses. The first directory is used to set
ECLASSDIR, but eclasses in later directories have priority. Optional, and not used byexheresformat repositories. distdir- Where to look for and save downloaded files. Inherited from a master. Optional.
setsdir- Where to look for repository-defined sets. Optional.
securitydir- Where to look for GLSAs (security advisories). Optional.
newsdir- Where to look for GLEP 42 news items. Optional.
cache- Where to look for read-only repository defined metadata cache items. If set to
/var/empty, no repository defined cache is used. Optional. write_cache- Where to look for and save generated metadata cache items. If set to
/var/empty, no write cache is used. Optional, but recommended for repositories that do not ship with their own metadata cache. append_repository_name_to_write_cache- Boolean. If true (default), the repository name is appended to the
write_cachedirectory. Optional, for internal use. ignore_deprecated_profiles- Boolean. If true (default is false), profiles deprecated files are ignored. Optional, for internal use.
eapi_when_unknown- The EAPI to use when a package's EAPI is unknown (e.g. before it has been sourced to generate its metadata, if it does not use an EAPI filename suffix). Optional, generally set by the distribution.
eapi_when_unspecified- The EAPI to use when a package does not specify an EAPI, either explicitly or by suffix. Optional, generally set by the distribution.
profile_eapi_when_unspecified- The EAPI to use for profiles when unspecified. Optional, generally set by the distribution.
names_cache- The directory in which to look for a names cache, and in which to generate a names cache. A names cache will
significantly speed up converting a
pkginto acat/pkg. See Getting Started for notes. Optional. sync- How to sync the repository. See Syncers for supported formats. Optional if the repository does not need to be synced.
sync_options- Any options to be passed to the syncer. Optional.
builddir- The temporary directory to use when building packages. Optional.
layout- The repository's layout. Supported values are
traditionalandexheres. Optional, usually set by the distribution. use_manifest- Whether to use Manifest2. Valid values are
use,requireorignore. Optional.
