Manual:Partes/Portage/ArbolPersonalizado

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:Parts/Portage/CustomTree and the translation is 100% complete.


Advertencia
Los lectores no deben intentar seguir las instrucciones directamente desde el espacio de nombres Handbook:Parts (¡que es ESTA página!). Las secciones que se muestran a continuación se utilizan como una estructura para transclusión de información en los manuales específicos de las diferentes arquitecturas de procesador y, por lo tanto, carecen de información crítica.

Por favor visite la lista de Manuales para leer instrucciones relevantes para cada arquitectura de procesador.
Manual Parts
Instalación
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
Trabajar con Gentoo
Introducción a Portage
Ajustes USE
Características de Portage
Sistema de guiones de inicio
Variables de entorno
Trabajar con Portage
Ficheros y directorios
Variables
Mezclar ramas de software
Herramientas adicionales
Repositorios personalizados de paquetes
Características avanzadas
Configuración de la red
Comenzar
Configuración avanzada
Configuración de red modular
Conexión inalámbrica
Añadir funcionalidad
Gestión dinámica


Utilizar un subconjunto del repositorio Gentoo

Excluir paquetes y categorías

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.

Advertencia
Para que este método funcione, la verificación del manifiesto debe estar deshabilitada. Esto reducirá la seguridad del repositorio. Para deshabilitar la verificación, deshabilite el indicador USE rsync-verify en el paquete sys-apps/portage o configure sync-rsync-verify-metamanifest=no (consulte man 5 portage) en la línea de repos.conf correspondiente al repositorio de ebuilds de Gentoo.

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-*/*
Advertencia
Excluir partes de los repositorios de ebuilds, especialmente en el repositorio de ebuild de Gentoo, puede generar problemas de dependencias. Los paquetes nuevos permitidos pueden depender de paquetes nuevos pero excluidos. Las exclusiones no son compatibles, proceda teniendo en cuenta este riesgo.

Añadir ebuilds no oficiales

Crear un repositorio de ebuilds personalizado

Creación manual

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

A continuación, defina la EAPI utilizada para los perfiles dentro del repositorio:

root #echo '8' > /var/db/repos/localrepo/profiles/eapi

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
thin-manifests = true
sign-manifests = 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

Opcional: Crear un repositorio usando eselect repository

Como alternativa, se puede crear rápidamente un repositorio de ebuilds personalizado utilizando el módulo de repositorio de eselect (desde app-eselect/eselect-repository). En el siguiente ejemplo, sustituya localrepo por un nombre de su elección:

root #eselect repository create localrepo
Adding localrepo to /etc/portage/repos.conf/eselect-repo.conf ...
Repository <ebuild_repository_name> created and added

Un repositorio vacío llamado "localrepo" estará disponible en /var/db/repos/localrepo.

Trabajar con múltiples repositorios

Para quienes deseen desarrollar varios repositorios de ebuild, probar paquetes antes de que lleguen al repositorio Gentoo o quieran usar ebuilds no oficiales de varias fuentes, el paquete app-eselect/eselect-repository también proporciona herramientas para ayudar a mantener los repositorios actualizados. Consulte también el artículo sobre eselect repository.

Añadir un repositorio con eselect repository

Por ejemplo, para habilitar el repositorio GURU:

root #eselect repository enable guru

La actualización de los repositorios agregados con estos métodos se realizará automáticamente en cada sincronización:

root #emerge --sync

Software no mantenido por Portage

Usar Portage con programas auto-mantenidos

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 paquetes como 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-6.6.21 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-6.6.21 como instalado manualmente
sys-kernel/gentoo-sources-6.6.21
Nota
En este archivo se usan las versiones sin un operador =.