emerge — configuration — ebuild repository — dispatch-conf
world file — USE flags — ebuilds — profiles
upgrades — using testing packages — binary packages
tools — gentoolkit — eselect
Portage FAQ — cheat sheet — FAQ
An ebuild file is a text file, usually stored in a repository, which identifies a specific software package and tells the Gentoo package manager how to handle it. Ebuilds use a bash-like syntax style and are standardized through the Package Manager Specification, by adhering to a specific EAPI version.
Ebuilds contain metadata about each version of a piece of available software (name, version number, license, home page address...), dependency information (both build-time and run-time), and instructions on how to build and install the software (configure, compile, build, install, test...).
Information on the ebuild command can be found locally by running:
man 1 ebuild
An ebuild is a live ebuild if the source is fetched from a revision control system (VCS). They tend to, but not necessarily, have the version number 9999 so that they can be easily distinguished from normal ebuilds based on upstream releases.
In a formal sense, an ebuild is live if it has a variable
PROPERTIES with a value "live" inside it. If an ebuild inherits a VCS eclass (e.g. git-r3, mercurial, darcs), it will be live, because these eclasses have a line
In the site packages.gentoo.org, a Live ebuild has the sign L . In the output of eix, it is marked with
- Basic guide to write Gentoo Ebuilds
- Submitting ebuilds — explains how to submit ebuilds for inclusion in the Gentoo ebuild repository
- Package Manager Specification — a standardization effort to ensure that the ebuild file format, the ebuild repository format (of which the Gentoo ebuild repository is the main incarnation), as well as behavior of the package managers interacting with these ebuilds is properly agreed upon and documented.
- Portage — the official package manager and distribution system for Gentoo.