12 de enero de 2026

Guía Gentoo 2026: Cómo usar Overlays sin romper tu sistema (El Método del Aislamiento)

En Gentoo, la tentación de añadir repositorios (overlays) para obtener versiones más recientes o paquetes exóticos es grande. Sin embargo, overlays populares como guru, gentoo-zh o bentoo pueden intentar sustituir paquetes críticos del sistema, provocando errores de compilación masivos.

Hoy aprenderemos a configurar nuestro sistema para que solo acepte un paquete específico de un overlay, manteniendo el resto del repositorio bloqueado.

El problema: La "contaminación" de paquetes

Cuando añadimos un overlay, Portage lo trata como una fuente válida para cualquier actualización. Si el overlay tiene una versión de openssl o gcc más alta que el repo oficial, Portage la instalará, rompiendo a menudo la estabilidad.

La solución: Bloqueo global y excepciones puntuales

Usaremos como ejemplo el editor antigravity del overlay gentoo-zh, pero este método sirve para Tilix u OneDrive.

Paso 1: Configurar la prioridad del repositorio

Debemos asegurarnos de que el repositorio oficial siempre tenga la última palabra. Editamos el archivo de configuración del overlay en /etc/portage/repos.conf/nombre-del-repo.conf:

vim /etc/portage/repos.conf/gentoo-zh-repo.conf:
[gentoo-zh]
priority = 50
location = /var/db/repos/gentoo-zh
sync-type = git
sync-uri = github.com
Usa el código con precaución.

Nota: El repositorio oficial tiene prioridad 1000 por defecto. Al poner 50, le decimos a Portage que este repo es secundario.

Paso 2: El Escudo Protector (Bloqueo Total)

Para evitar que Portage instale nada de este repositorio por accidente, vamos a enmascararlo completamente.

Crea el archivo /etc/portage/package.mask/overlays:

sudo vim /etc/portage/package.mask/gentoo-zh
# Bloqueamos todos los paquetes de estos repositorios
*/*::gentoo-zh

Usa el código con precaución.

Desde este momento, para Portage es como si esos repositorios estuvieran vacíos.

Paso 3: Crear el "agujero" en el escudo (Excepciones)

Ahora desenmascaramos únicamente los paquetes que necesitamos. Esto se hace en /etc/portage/package.unmask/.

Crea un archivo por cada paquete o uno general: 

sudo vim /etc/portage/package.unmask/antigravity 
app-editors/antigravity::gentoo-zh

Usa el código con precaución.

Paso 4: Verificación técnica

Antes de compilar, verificamos el estado con emerge -pv. Deberías ver algo así:

sudo emerge -pv  app-editors/antigravity  
These are the packages that would be merged, in order:
Calculating dependencies... done!
Dependency resolution took 1.83 s (backtrack: 0/20).
[ebuild   R   #] app-editors/antigravity-1.13.3::gentoo-zh  USE="egl wayland -kerberos" L10N="es es-419 -af -am -ar -bg -bn -ca -cs -da -de -el -en-GB -et -fa -fi -fil -fr -gu -he -hi -hr -hu -id -it -ja -kn -ko -lt -lv -ml -mr -ms -nb -nl -pl -pt-BR -pt-PT -ro -ru -sk -sl -sr -sv -sw -ta -te -th -tr -uk -ur -vi -zh-CN -zh-TW" 150.341 KiB
Total: 1 package (1 reinstall), Size of downloads: 150.341 KiB
 * IMPORTANT: 31 news items need reading for repository 'gentoo'.
 * Use eselect news read to view new items.

Usa el código con precaución.

El símbolo # indica que el paquete está técnicamente enmascarado por el archivo que creamos en el Paso 2, pero Portage lo permite gracias a la excepción del Paso 3. ¡Es el estado perfecto!

Bonus: ¿Qué pasa si el paquete pide dependencias del mismo overlay?

Si al intentar instalar Tilix te da errores de dependencias no encontradas, simplemente añade esas dependencias específicas al archivo de package.unmask siguiendo el mismo formato. Nunca quites la máscara global */*.

Conclusión

Este método nos permite disfrutar de lo mejor de ambos mundos:

  1. Estabilidad total: El 99% de tu sistema sigue el repositorio oficial de Gentoo.
  2. Flexibilidad: Puedes tener ese editor o herramienta que solo existe en un overlay sin riesgo de que una actualización de "rutina" rompa tu entorno gráfico o tu compilador.

Resumen de comandos útiles para el post:

  • Listar repos activos: eselect repository list
  • Sincronizar: emaint sync -a
  • Ver origen de un paquete: equery list -p paquete 

No hay comentarios:

Publicar un comentario

Guía Gentoo 2026: Cómo usar Overlays sin romper tu sistema (El Método del Aislamiento)

En Gentoo, la tentación de añadir repositorios (overlays) para obtener versiones más recientes o paquetes exóticos es grande. Sin embargo, o...