Handbook:Parts/Portage/Files/es

Directivas de configuración
Portage viene con una configuración predefinida guardada en. Toda la configuración de Portage se realiza a través de variables. A qué variables atiende Portage y que significan se describe un poco después.

Como muchas directivas de configuración varían de unas arquitecturas a otras, Portage también posee algunos archivos de configuración que son parte de perfil. Su perfil está apuntado por el enlace simbólico ; las configuraciones de Portage se realizan en los archivos de su perfil y de todos los perfiles padres. Explicaremos algo más sobre perfiles y el directorio más adelante.

Si está pensando en cambiar una variable de configuración, no modifique o. En lugar de eso utilice el cual tiene preferencia sobre los archivos anteriores. También encontrará. Como su propio nombre indica, este archivo es meramente un ejemplo y Portage no lo utilizará con ningún propósito.

También puede definir una variable de configuración para Portage como una variable de entorno, pero no es recomendable.

Información específica del perfil
Ya hemos hablado del directorio. Bien, exactamente no es un directorio sino un enlace simbólico a un perfil, por defecto uno perteneciente a aunque también puede crear un perfil en cualquier otro lado y apuntarlo. El perfil al cual apunta el enlace simbólico será el que tenga en cuenta su sistema.

Un perfil contiene información específica para Portage sobre cada arquitectura, tal como una lista de paquetes que pertenecen al sistema correspondiente con ese perfil, una lista de paquetes que no funcionan (o están enmascarados) para ese perfil, etc.

Configuración específica de usuario
Cuando necesite sobreescribir una característica de Portage relativa a la instalación de software, necesitará editar los archivos contenidos en. ¡Se recomienda encarecidamente que utilice los archivos pertenecientes a y está desaconsejada la sobreescritura de estas características con variables de entorno!

Dentro de puede crear los siguientes archivos:
 * el cual especifica los paquetes que nunca quiere que Portage instale en su sistema
 * especifica los paquetes que quiere instalar a pesar de haber sido desaconsejados por los desarrolladores de Gentoo
 * especifica los paquetes que quiere instalar a pesar de no haber sido considerados adecuados para su sistema o arquitectura (todavía)
 * especifica la lista de ajustes USE que quiere utilizar para unos determinados paquetes sin tener que utilizarlos para todo el sistema

Pero no tienen porque ser archivos; también pueden ser directorios que contengan un archivo por paquete. Podemos obtener más información acerca del directorio y una lista completa de archivos que pueden crearse allí en la página man de Portage:

Cambiar la ubicación de archivos y directorios de Portage
Los archivos de configuración mencionados anteriormente no pueden ser guardados en ningún otro sitio, Portage siempre los buscará exactamente en esos lugares. Sin embargo, Portage utiliza otras muchos lugares para varios propósitos: el directorio de compilación, el lugar donde guardar el código fuente, la localización del árbol de Portage, ...

Todos estos propósitos tienen unas direcciones predeterminadas muy claras pero puede cambiarlas por las que más le gusten indicándolo en. El resto de este capítulo explica los lugares destinados a un propósito especial que utiliza Portage y como puede ser modificada su ubicación en el sistema de archivos.

Este documento no pretende ser utilizado como referencia. Si necesita un conocimiento completo, por favor consulte las páginas man relativas a Portage y make.conf:

El árbol Portage
La ubicación predeterminada del árbol de Portage es. Esta definida por la variable PORTDIR. Cuando guarde el árbol de Portage en cualquier otro lugar (modificando esta variable), no olvide cambiar el enlace simbólico de acuerdo con su cambio.

Si modifica la variable PORTDIR, seguramente quiera cambiar las siguientes variables ya que no tienen constancia del cambio de PORTDIR. Esto es debido a cómo Portage maneja las variables: PKGDIR, DISTDIR, RPMDIR.

Binarios pre-compilados
Aunque Portage no utilice binarios pre-compilados por defecto, tiene un buen soporte para ellos. Cuando a Portage se le indica que trabaje con paquetes pre-compilados, los buscará en. Esta ubicación está definida por la variable PKGDIR.

Código Fuente
El código fuente de las aplicaciones se guarda por defecto en. Esta ubicación viene definida por la variable DISTDIR.

Base de datos de Portage
Portage guarda el estado del sistema (que paquetes están instalados, qué archivos pertenecen a cada paquete, ...) en.

Caché de Portage
La caché de Portage (con fechas de modificacion, paquetes virtuales, información del árbol de dependencias, ...) se guarda en. Esta ubicación es una caché real: se puede borrar si no se está ejecutando ninguna aplicación que tenga relación con Portage en este momento.

Archivos temporales de Portage
Los archivos temporales de portage se guardan por defecto en. Esta ubicación se define en la variable PORTAGE_TMPDIR.

Si modifica la variable PORTAGE_TMPDIR, necesitará cambiar las siguientes variables ya que no tendrán constancia del cambio. Esto es debido a cómo Portage maneja la variable: BUILD_PREFIX.

Directorio de construcción
Portage crea directorios de compilación específicos dentro de para cada paquete que emerge. Esta ubicación viene definida por la variable BUILD_PREFIX.

Instalación en el sistema de archivos
Por defecto, Portage instala todas los archivos en el sistema de ficheros activo (/), pero puede cambiarse esta configuración a través de la variable de entorno ROOT. Esto es útil cuando quiera crear nuevas imágenes compiladas.

Registro de acciones de los ebuilds
Portage puede crear un registro por ebuild, pero solamente cuando la variable PORT_LOGDIR esté configurada y apuntando a una dirección con permisos de escritura para Portage (usuario Portage). De manera predeterminada está variable está desactivada. Si no configura PORT_LOGDIR no recibirá los registros con el sistema de registro actual, aunque tal vez reciba algún registro del nuevo sistema.

Si no tiene definido PORT_LOGDIR y usa, recibirá los registros de construcción de paquetes y cualquier otro registro guardado por elog, como se explica a continuación.

Portage ofrece un control muy ajustable sobre el registro de sistema mediante el uso de elog:
 * PORTAGE_ELOG_CLASSES: Es donde se define cqué tipo de mensajes serán registrados. Puede utilizarse cualquier cualquier combinación separada por espacios en blanco de info, warn, error, log y qa.
 * info: Registra los mensajes "einfo" generados por un ebuild
 * warn: Registra los mensajes "ewarn" generados por un ebuild
 * error: Registra los mensajes "eerror" generados por un ebuild
 * log: Registra los mensajes "elog" que se pueden encontrar en algunos ebuilds
 * qa:: Registra los mensajes del tipo "QA Notice" generados por un ebuild.


 * PORTAGE_ELOG_SYSTEM: Selecciona el módulo o módulos para procesar los mensajes de registro. Si se deja sin definir, se desactiva la función de registro. Puede usar cualquier combinación separada por espacios en blanco de save, custom, syslog, mail, save_summary y mail_summary. Debe seleccionar al menos un módulo para poder usar elog.
 * save: Almacena un registro por paquete en, o si $PORT_LOGDIR no está definida.
 * custom: Pasa todos los mensajes a una orden definida por el usuario en $PORTAGE_ELOG_COMMAND; se detalla más adelante.
 * syslog: Envía todos los mensajes al gestor de registro de sistema instalado.
 * mail: Pasa todos los mensaje a un servidor de correo definido por el usuario en $PORTAGE_ELOG_MAILURI; se detalla más adelante. Las características de correo de elog requieren un portage >=portage-2.1.1.
 * save_summary: parecido a save, pero fusionando todos los mensajes en, o si $PORT_LOGDIR fue definida.
 * mail_summary: parecido a mail, pero envía todos los mensajes en un solo mensaje de correo cuando emerge finaliza.


 * PORTAGE_ELOG_COMMAND: Esto solamente se usa al activarse el módulo custom. Aquí podemos especificar una orden con la cual se procesarán los mensajes de registro. Observe que puede hacer uso de dos variables de entorno: ${PACKAGE} es el nombre del paquete y la versión, mientras que ${LOGFILE} es la ruta absoluta del archivo de registro. A continuación se muestra un posible uso:


 * PORTAGE_ELOG_MAILURI: Contiene la configuración del módulo mail, tal como dirección, usuario, contraseña, servidor de correo y número de puerto. Por defecto está configurado a "root@localhost localhost". Aquí presentamos un ejemplo para un servidor smtp que requiere autenticación con nombre de usuario y contraseña en un puerto en particular (el puerto por defecto es el 25):


 * PORTAGE_ELOG_MAILFROM: Permite configurar la dirección "from" de los correos de registro; su valor por defecto es "portage".


 * PORTAGE_ELOG_MAILSUBJECT: Permite la creación de una línea de asunto para los correos de registro. Note que puede hacer uso de dos variables de entorno: ${PACKAGE} mostrará el nombre y la versión del paquete, mientras que ${HOST} es el nombre del dominio completo del anfitrión donde está corriendo Portage. Aquí está un posible uso: