Ebuild

From Gentoo Wiki
Jump to:navigation Jump to:search
Resources

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 adhere to a specific EAPI version, and are standardized through the Package Manager Specification:

The ebuild file format is in its basic form a subset of the format of a bash script. The interpreter is assumed to be GNU bash

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...).

The default location for ebuilds in Gentoo is the Gentoo ebuild repository (/var/db/repos/gentoo/).

See also
See the ebuild repository article about what an ebuild repository is, the creating an ebuild repository article on how to create them, and the basic guide to write Gentoo Ebuilds for creating ebuilds to house in a repository.

"ebuild" command

ebuild is also the Portage command for running the various ebuild functions.

Note
Ebuilds can be installed with the ebuild command, however this is not recommended - this command is for development purposes only. Ebuilds should be placed in an ebuild repository then installed with the emerge command.

Information on the ebuild command can be found locally by running:

user $man 1 ebuild

Live ebuilds

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 PROPERTIES+=" live".

See also

External resources