Manual:AMD64/Portage/ArbolPersonalizado

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:AMD64/Portage/CustomTree and the translation is 100% complete.
Manual AMD64
Full/Installation
Acerca de la instalación
Elegir los medios
Configurar la red
Preparar los discos
Instalar el stage3
Instalar el sistema base
Configurar el núcleo
Configurar el sistema
Instalar las herramientas
Configurar el cargador de arranque
Terminar
Full/Working
Introducción a Portage
Ajustes USE
Características de Portage
Sistema de guiones de inicio
Variables de entorno
Full/Portage
Ficheros y directorios
Variables
Mezclar ramas de software
Herramientas adicionales
Repositorios personalizados de paquetes
Características avanzadas
Full/Networking
Comenzar
Configuración avanzada
Configuración de red modular
Conexión inalámbrica
Añadir funcionalidad
Gestión dinámica


Utilizando un subconjunto del repositorio Gentoo

Excluyendo categorías y paquetes

Puede realizar una actualización selectiva de ciertas categorías/paquetes e ignorar el resto. Esto se realiza indicando a rsync que excluya categorías/paquetes durante el proceso emerge --sync.

Necesita definir el nombre del archivo que contiene los patrones de exclusión en la variable PORTAGE_RSYNC_EXTRA_OPTS de su /etc/portage/make.conf:

ARCHIVO /etc/portage/make.confDefinir el archivo de exclusiones
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
ARCHIVO /etc/portage/rsync_excludesExcluir todos los juegos
games-*/*

Recuerde que esto puede provocar ciertos problemas con las dependencias, ya que paquetes nuevos y aceptados en su sistema pueden depender de otros excluidos.

Para que funcione este método, se debe deshabilitar la verificación del manifiesto, lo cual reducirá la seguridad del repositorio. Para deshabilitar esta verificación, bien deshabilite el ajuste USE rsync-verify en sys-apps/portage, bien defina sync-rsync-verify-metamanifest=no en la entrada repos.conf del repositorio de Gentoo.

Añadiendo Ebuilds no oficiales

Definir un repositorio de ebuild personalizado

Es posible instruir a Portage para que utilice ebuilds que no están oficialmente disponibles a través del repositorio de ebuilds de Gentoo. Para hacerlo, cree un nuevo directorio (por ejemplo, /var/db/repos/localrepo) en el que almacenar los ebuilds de terceros. Este nuevo repositorio requerirá la misma estructura de directorios que el repositorio oficial de Gentoo.

root #mkdir -p /var/db/repos/localrepo/{metadata,profiles}
root #chown -R portage:portage /var/db/repos/localrepo

A continuación, elija un nombre significativo para el repositorio. El siguiente ejemplo usa "repolocal" como nombre:

root #echo 'localrepo' > /var/db/repos/localrepo/profiles/repo_name

Indique a Portage que el repositorio maestro es el repositorio principal de ebuilds de Gentoo, y que el repositorio local no debe sincronizarse automáticamente (ya que no está respaldado por una fuente externa como un servidor rsync, servidor espejo git u otro tipo de repositorio):

ARCHIVO /var/db/repos/localrepo/metadata/layout.conf
masters = gentoo
auto-sync = false

Finalmente, hay que habilitar el repositorio para el sistema local creando un archivo de configuración de repositorio dentro de /etc/portage/repos.conf. Esto informará a Portage dónde se puede localizar nuestro repositorio personalizado:

ARCHIVO /etc/portage/repos.conf/repolocal.conf
[repolocal]
location = /var/db/repos/localrepo

Trabajando con varias extensiones (overlays)

Para los usuarios que desarrollan en varias extensiones, probar los paquetes antes de que lleguen al repositorio Gentoo o simplemente que quieren utilizar ebuilds no oficiales procedentes de varias fuentes, el paquete app-portage/layman incorpora layman, una herramienta que ayudará a conservar las extensiones actualizadas.

De forma alternativa, instale app-eselect/eselect-repository para utilizar la sincronización nativa en Portage. Lea también Eselect/Repository

eselect-repository

Añadir repositorios es sencillo con el módulo eselect (disponible vía app-eselect/eselect-repository):

Por ejemplo, para habilitar el recubrimiento hardened-development:

root #eselect repository enable hardened-development

La actualización de recubrimientos que se han añadido mediante este método se hace de forma natural con:

root #emerge --sync

Layman

En primer lugar instale y configure layman tal y como se muestra en as shown in la Guía del usuario de recubrimientos, y añada los repositorios deseados con layman -a.

Por ejemplo, para habilitar la extensión hardened-development:

root #layman -a hardened-development

Independientemente de cuantas extensiones use con layman, todos los repositorios pueden actualizarse con la siguiente orden:

root #layman -S

Para más información sobre el trabajo con extensiones, por favor, lea man layman y la Guía de usuario de layman/overlay del enlace antes mencionado.

Software no mantenido por Portage

Utilizando Portage con programas automantenidos

En algunos casos querrá configurar, instalar y mantener programas por sí mismo sin que Portage automatice el proceso, incluso aunque Portage pueda suministrarle esos programas. Conocidos son los casos de las fuentes del núcleo y los controladores de Nvidia. Puede configurar Portage para que conozca cuando un determinado paquete ha sido instalado manualmente en el sistema. Este proceso recibe el nombre de inyectar y está soportado por Portage a través del archivo /etc/portage/profile/package.provided.

Por ejemplo, si quiere informar a Portage sobre gentoo-sources-5.15.52 wh el cual ha sido instalado manualmente, añada la siguiente línea a /etc/portage/profile/package.provided:

ARCHIVO /etc/portage/profile/package.providedMarcar gentoo-sources-5.15.52 como instalado manualmente
sys-kernel/gentoo-sources-5.15.52
Nota
En este archivo se usan las versiones sin un operador =.