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

Repositorios
Package repositories are nothing more (or less) than a set of files (ebuilds, metadata files, ChangeLog entries ...). These can be pulled in from public repositories (git, cvs, svn ...) or downloaded as tarballs and extracted manually onto the system. It is advised to use managed repositories by trusted third parties; any installed overlay will cause Portage to look through the overlaid files when deciding which software to install. If compromised code is in the overlay, then compromised packages could be installed on the system.

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.

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.

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.

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

Prioridades
Cada overlay tiene su propia prioridad única. Esto asegura que en el caso de que una versión en particular se encuentre en varios overalys, la resolución de la misma no es ambigua. Los ebuilds de los overalys con mayor prioridad tienen preferencia sobre los ebuilds con menor prioridad.

Se puede obtener sa lista de overalys y sus prioridades consultando la salida de la siguiente orden (Buscar la palabra "Repositories"):

El árbol Portage por defecto de Gentoo tiene una prioridad de -1000. Esto implica que, por lo general, el resto de overlays tienen mayor precedencia ya que se les asigna un prioridad mayor. Este es el comportamiento por defecto ya que los overlays se han diseñado para "colocarse encima" del árbol portage.

Herramientas de soporte
Existen algunas herramientas de soporte para integrar los overlays.

Layman
La aplicación layman facilita la gestión y actualización de múltiples overlays adicionales. Se trata de una aplicación de la línea de órdenes a través de la cual se pueden listar los overlays disponibles al público, suscritos o no suscritos así como la actualización de esos repositorios.

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

Para más información, consultar Layman y Project:Portage/Sync.

emaint
Echar un vistazo a Project:Portage/Sync y a man 1 emaint.

eix
eix-sync es un envoltorio para emerge --sync (que de hecho arranca emaint sync --auto) seguido de eix-update. Para más detalles, leer el artículo sobre Eix y su página del manual man 1 eix.

Buenas prácticas

Generación de cache
Cuando se instalan overlays muy voluminosos, a portage le puede llevar mucho tiempo realizar operaciones como la resolución de dependencias. Esto es debido a que los overlays no suelen contener una caché para los metadatos.

Generar una caché local para metadatos lanzando emerge --regen después de sincronizar los overlays:

Hay que ser cuidadoso ya que emerge --regen lleva bastante tiempo y no se recomienda a los usuarios de rsync ya que rsync actualiza la caché usando caché del servidor (la mayoría de los usuarios de portage son usuarios rsync). Estos usuarios deberían simplemente correr emerge --sync</tt> (o eix-sync</tt>) para regenerar la caché. Probablemente solo los usuarios de overlays muy voluminosos deberían correr 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