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.)
Exheres
format 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.profile
symlink.) 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 byexheres
format 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_cache
directory. 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
pkg
into 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
traditional
andexheres
. Optional, usually set by the distribution. use_manifest
- Whether to use Manifest2. Valid values are
use
,require
orignore
. Optional.