Handbook:Parts/Working/Features/es

Características de Portage
Portage tiene varias características adicionales que hacen de su experiencia con Gentoo algo mucho mejor. Muchas de estas características residen en ciertas herramientas software que mejoran el rendimiento, la estabilidad, la seguridad, ...

Para activar o desactivar ciertas características de Portage necesita editar la variable FEATURES del archivo. Esta variable contiene una lista con las palabras clave de cada característica separadas por un espacio en blanco. En algunos casos necesita además instalar la herramienta que implementa la característica.

No todas las características que soporta Portage están aquí reflejadas. Para una consulta completa por favor revise la página de la ayuda referente a

To find out what FEATURES are set by default, run and search for the FEATURES variable or  it out:

Usar distcc
is a program to distribute compilations across several, not necessarily identical, machines on a network. The distcc client sends all necessary information to the available distcc servers (running distccd) so they can compile pieces of source code for the client. The net result is a faster compilation time.

Puede encontrar información más detallada sobre distcc (e información de como tenerlo funcionando sobre Gentoo) en el artículo sobre Distcc.

Instalar distcc
Distcc ships with a graphical monitor to monitor tasks that the computer is sending away for compilation. This tool is automatically installed if  or   is set.

Activating Portage distcc support
Add distcc to the FEATURES variable inside. Next, edit the MAKEOPTS variable and increase the number of parallel build jobs that the system allows. A known guideline is to fill in "-jX" with X the number of CPUs that run distccd (including the current host) plus one, but that is just a guideline.

Now run and enter the list of available distcc servers. For a simple example assume that the available DistCC servers are 192.168.1.102 (the current host), 192.168.1.103 and 192.168.1.104 (two "remote" hosts):

Por supuesto, no se olvide ejecutar también el demonio distccd:

Acerca de ccache
is a fast compiler cache. Whenever an application is compiled, it will cache intermediate results so that, whenever the same program is recompiled, the compilation time is greatly reduced. The first time ccache is run, it will be much slower than a normal compilation. Subsequent recompiles however should be faster. ccache is only helpful if the same application will be recompiled many times (or upgrades of the same application are happening frequently); thus it's mostly only useful for software developers.

Para mas información sobre ccache, visite su página principal.

Instalar ccache
To install ccache run the following command:

Activating Portage ccache support
Open and add   to the FEATURES variable. Next, add a new variable called CCACHE_SIZE and set it to :

To check if ccache functions, ask ccache to provide its statistics. Because Portage uses a different ccache home directory, it is necessary to temporarily set the CCACHE_DIR variable:

The location is Portage' default ccache home directory; it can be changed by setting the CCACHE_DIR variable in.

When running standalone, it would use the default location of, which is why the CCACHE_DIR variable needs to be set when asking for the (Portage) ccache statistics.

Using ccache outside Portage
To use ccache for non-Portage compilations, add to the beginning of the PATH variable (before ). This can be accomplished by editing in the user's home directory. Using is one way to define PATH variables.

Crear paquetes binarios
Portage soporta la instalación de paquetes precompilados. A pesar de que Gentoo no proporciona paquetes precompilados por sí mismo, Portage puede funcionar perfectamente con paquetes precompilados.

Para crear un paquete precompilado puede utilizar  si el paquete está instado en su sistema, o emerge con las opciones   o.

To have Portage create prebuilt packages of every single package that gets installed, add  to the FEATURES variable.

More extended support for creating prebuilt package sets can be obtained with catalyst. For more information on catalyst please read the Catalyst FAQ.

Instalar Paquetes Precompilados
Although Gentoo doesn't provide one, it is possible to create a central repository where prebuilt packages are stored. In order to use this repository, it is necessary to make Portage aware of it by having the PORTAGE_BINHOST variable point to it. For instance, if the prebuilt packages are on ftp://buildhost/gentoo:

Cuando quiera instalar un paquete precompilado, añada la opción  a la orden emerge junto a la opción. La primera le indica a emerge que descargue el paquete precompilado del servidor definido previamente, mientras que el segundo indica a emerge que intente instalar el paquete precompilado antes de buscar el código fuente y compilarlo.

Por ejemplo, para instalar gnumeric a través de paquetes precompilados:

Más información sobre las opciones para utilizar paquetes precompilados con emerge puede consultarse en la página man de ayuda:

Distribuir paquetes precompilados a otros
Si distribuye paquetes precompilados a otros, asegúrese que eso está permitido. Compruebe los términos para la distribución del desarrollador del paquete. Por ejemplo, para un paquete publicado bajo GNU GPL, las fuentes deben estar disponibles junto con los binarios.

Ebuilds may define a  restriction in their RESTRICT variable if built binaries are not distributable. Sometimes this restriction is conditional on one or more USE flags.

By default, Portage will not mask any packages because of restrictions. This can be changed globally by setting the ACCEPT_RESTRICT variable in. For example, to mask packages that have a  restriction, add the following line to :

It is also possible to override the ACCEPT_RESTRICT variable by passing the  option to the  command. For example,  will temporarily mask packages with a   restriction.

Also consider setting the ACCEPT_LICENSE variable when distributing packages. See the Licenses section for this.

Userfetch
When Portage is run as root,  will allow Portage to drop root privileges while fetching package sources. This is a small security improvement.

Obtener instantáneas validadas del árbol de ebuilds de Gentoo
Los administradores puede optar por actualizar el árbol de ebuilds de Gentoo con una instantánea del árbol validada criptográficamente tal y como la publica el equipo de infraestructura de Gentoo. Con esto se asegura que ningún otro servidor réplica falso está añadiendo código no deseado u otros paquete al árbol que el sistema está descargando.

Las claves OpenPGP de los medios publicados por Gentoo están ahora disponibles como un llavero de claves binario que se puede instalar a través del paquete.

Esto instalará el llavero en la localización.

Asegúrese de que ha instalado :

Use to verify that the keys in the keyring are the correct keys:

Verifique las huellas digitales de la(s) clave(s) comparándolas con las que se muestran aquí : Project:RelEng

Repita la siguiente orden eat the following command for each key you wish to trust. (Substitute the keyid '0x...' for the desired key you wish to trust.)

El sistema está ahora preparado para sincronizar utilizando únicamente instantáneas verificadas mediante OpenPGP/gpg.

Algunas opciones de las órdenes están disponibles para realizar la sincronización.

Instrucciones de instalación y de configuración originales

To configure Portage to validate the snapshots, first create a truststore in which the keys of the Gentoo Infrastructure responsible for signing the Portage tree snapshots are stored. Of course, this OpenPGP key can be validated as per the proper guidelines (like checking the key fingerprint). The list of OpenPGP keys used by the release engineering team is available on their project page.

Asegúrese de que ha instalado :

En el siguiente conjunto de órdenes, sustituya las claves por aquéllas que se mencionab en el sitio de ingeniería de lanzamientos:

Next, edit and enable support for validating the signed Portage tree snapshots (using  ) and disabling updating the Portage tree using the regular  method.

In the file, clear the sync-type and sync-uri variables so that  no longer works (and thus no longer pulls in ebuilds that come from a potentially non-validated source):

That is it. Next time is ran, only the snapshots with a valid signature will be expanded on the filesystem.