Portage (software)
# Portage (software)

Portage es el gestor de paquetes oficial de la distribución de Linux Gentoo y de sus derivadas Funtoo, Calculate Linux, así como de Chrome OS.

Portage (implementado en Python y Bash) está inspirado en los Ports BSD, aunque implementa ciertas características avanzadas que no están presentes en los ports BSD: gestión de dependencias, afinamiento preciso de los paquetes a gusto del administrador, instalaciones falsas (al estilo OpenBSD), entornos de prueba durante la compilación, desinstalación segura, perfiles de sistema, paquetes virtuales, gestión de los ficheros de configuración y múltiples ranuras para distintas versiones de un mismo paquete.

Portage dispone de un árbol local que contiene las descripciones de los paquetes de software, así como los scripts necesarios para instalarlos. Este árbol se puede sincronizar con un servidor remoto mediante una orden:

    emaint -a sync

Cuando un paquete de software es seleccionado para ser instalado, Portage descarga los archivos con el código fuente y los compila en ese momento, generando los archivos ejecutables y documentación correspondiente. Es posible especificar las optimizaciones que emplear en la compilación, así como utilizar una variable llamada USE que indica la compatibilidad con otros programas.

La posibilidad de indicar las optimizaciones y el parámetro USE permiten crear una distribución a medida. De todas formas, Portage también soporta la instalación de binarios, ya sean paquetes precompilados por el mismo sistema o paquetes que se encuentran exclusivamente en formato binario.

Portage permite mantener el software actualizado y controlar las versiones que se encuentran instaladas, proporcionando unas posibilidades similares a las de APT de Debian (excepto que APT utiliza por defecto binarios precompilados). Así, por ejemplo, es posible actualizar todos los paquetes instalados a la última versión estable sin necesidad de intervención del usuario:

    emerge --update @world

## Paquetes binarios

Gentoo tiene un formato de empaquetado binario, que es un archivo .tbz2 (tar con compresión bzip2) con metadatos adicionales. Esta característica permite la construcción de paquetes binarios en un sistema (usando buildpkg o quickpkg de Portage) seguido de una instalación rápida en sistemas compatibles (con getbinpkg o emerge -K de Portage). Consulte las Características de Portage en el Manual de Gentoo Linux para obtener más información.

