Ebuild repository/es

Dentro de Gentoo Linux, los usuarios disponen de un repositorio de paquetes "principal", en el pasado se denominaba "Árbol de Portage", aunque este término ya no debería utilizarse ya que hay otros gestores de paquetes aparte de Portage que pueden interactuar con los repositorios de paquetes de Gentoo. El repositorio principal contiene todos los paquetes de software (llamados ebuilds) que mantienen los desarrolladores de Gentoo. Los usuarios pueden añadir repositorios adicionales al árbol que "cubren" el árbol principal, de ahí el nombre: Overlays (Revestimientos).

Debido a que los repositorios de paquetes no son más (o menos) que un conjunto de ficheros (ebuilds, ficheros metadata, entradas en el registro de cambios, ...), éstos se pueden obtener de repositorios públicos (git, cvs, svn ...) o descargarse como ficheros empaquetados (tarballs) y desempaquetarse manualmente en el sistema. Se recomienda utilizar repositorios gestionados por terceros de confianza. Cualquier overaly instalado causará que Portage mire en los ficheros de overlay para decidir qué software instalar. Si se obtiene código comprometido desde un overlay, entonces se instalarían paquetes comprometidos en el sistema.

Repositorios
Los paquetes adicionales normalmente se mantienen en repositorios. Éstos son overlays que ya están preparados para incorporarse en sistemas Gentoo. La forma actual por defecto para gestionar repositorios es a través de que, como otras localizaciones de Portage, también puede ser un directorio.

Un método ya obsoleto pero aún permitido es utilizar la variable  dentro de. Esta variable puede apuntar a más de una localización adicional en el sistema de ficheros donde se pueden localizar repositorios. Es prefiere sin embargo utilizar el directorio.

Las definiciones de repositorio dentro de también informan a Portage si el repositorio se puede actualizar y cómo se puede realizar. Con todo esto, la lanzar emerge --sync se actualizarán todos los repositorios.

Para más información leer sobre /etc/portage/repos.conf y el artículo de Portage/Sync.

Prioridades
Each overlay has its unique priority. This makes sure that in the case of a specific version being found in several overlays, the resolution is unambiguous. Ebuilds from overlays with higher priorities take precedence over ebuilds from overlays with lower priorities.

The list of overlays with their priorities can be obtained through the output of the following command (look for the "Repositories" string):

The default Gentoo Portage tree will have a priority of -1000. That means that all other overlays generally take precedence as they are assigned a higher priority. That is the default behavior, because overlays are designed to "lay over/on top" of the portage tree.

Supporting tools
A number of tools support or integrate with overlays.

Layman
The layman application makes it easier to manage and update multiple additional overlays. It is a command-line application through which publicly available overlays can be listed, subscribed to and unsubscribed from, as well as update those repositories.

It supports both the as well as  method.
 * When using the method, layman manages a dedicated configuration file which should be sourced in by
 * When using, layman manages the file directly

For more information, see Layman and Project:Portage/Sync.

emaint
See Project:Portage/Sync and man 1 emaint.

eix
eix-sync is a wrapper starting emerge --sync (which in turn starts emaint sync --auto) followed by eix-update. For further details see the Eix article and man 1 eix.

Buenas prácticas

Generación de cache
When large overlays are installed, portage may take a long time to perform operations like dependency resolution. This is because overlays do not usually contain a metadata cache.

Generate a local metadata cache by running emerge --regen</tt> after syncing the overlays:

Be careful, because emerge --regen</tt> takes a lot of time and it's not recommended for rsync users as rsync updates the cache using server-side caches (most of users of portage are rsync users). Rsync users should simply run emerge --sync</tt> (or eix-sync</tt>) to regenerate the cache. It's probably only users of very large overlays should try emerge --regen</tt>.

Enmascaramiento cuando se utilicen overlays no seguros
Cuando se utilizan overlays con muchos paquetes o se cree que son de baja o desconocida calidad, es una buena práctica enmascarar todo el overlay.

Después de esto, desenmascarar los paquetes que se instalarán.

Véase también

 * Project:Overlays. El proyecto oficial de Gentoo de soporte de overlays.
 * Project:Overlays/User_Guide. Una guía de usuario escrita por el proyecto Overlay.
 * Guía del desarrollador de Overlays en Gentoo

Recursos externos

 * https://overlays.gentoo.org