Handbook:Parts/Working/Features/it

Funzionalità di Portage
Portage possiede numerose funzionalità aggiuntive che rendono l'esperienza di Gentoo persino migliore. Molte di queste funzioni dipendono da certi strumenti software che migliorano prestazioni, affidabilità, sicurezza, ...

Per abilitare o disabilitare certe funzionalità di Portage, modificare ed aggiornare o impostare la variabile FEATURES che contiene le parole chiave associate alle varie funzionalità, separate da uno spazio bianco. In numerosi casi è anche necessario installare lo strumento aggiuntivo dal quale le funzionalità dipendono.

Non tutte le funzionalità che Portage supporta sono elencate qui. Per una panoramica completa, consultare la pagina manuale :

Per scoprire quali FEATURES (caratteristiche) sono impostate in via predefinita, eseguire e cercare la variabile FEATURES o ricavarla con :

Usare distcc
è un programma per distribuire le compilazioni attraverso molte, non necessariamente identiche, macchine su una rete. Il client (committente) distcc invia tutte le informazioni necessarie ai server (servitori) distcc disponibili (eseguendo distccd), così essi possono compilare parti di codice sorgente per il client. Il risultato con la rete consiste in un tempo di compilazione più veloce.

Più informazioni riguardo distcc (e come averlo in funzione su Gentoo) si trovano nell'articolo Distcc.

Installare distcc
Distcc viene fornito con un monitor grafico per monitorare le attività che il computer sta inviando per la compilazione. Questo strumento è automaticamente installato se sono impostati  o.

Attivare il supporto distcc su Portage
Aggiungere  alla variabile FEATURES dentro. Poi, modificare la variabile MAKEOPTS ed aumentare il numero di attività di compilazione parallele che il sistema permette. Una nota linea guida consiste nell'inserire  dove   è il numero dei processori (CPU) che eseguono distccd (incluso l'attuale host) più uno, ma è giusto un'indicazione di massima.

Ora eseguire ed inserire l'elenco dei server distcc disponibili. Per fare un semplice esempio, supponiamo che i server DistCC disponibili siano 192.168.1.102 (l'attuale host), 192.168.1.103 e 192.168.1.104 (due host "remoti"):

Non dimenticare di eseguire anche il servizio distccd (daemon):

Riguardo ccache
è una cache di compilazione veloce. Ogni volta che un'applicazione viene compilata, memorizzerà i risultati intermedi nella cache in modo che, ogni volta che lo stesso programma viene ricompilato, il tempo di compilazione viene notevolmente ridotto. La prima volta che ccache viene eseguito, sarà molto più lento rispeto ad una normale compilazione. Le ricompilazioni successive tuttavia dovrebbero essere più veloci. ccache è utile solo se la stessa applicazione verrà ricompilata molte volte (o se gli aggiornamenti della stessa applicazione si verificano frequentemente); quindi è principalmente utile solo per gli sviluppatori di software.

Per maggiori informazioni su ccache, si visiti la sua homepage.

Installare ccache
Per installare ccache eseguire il seguente comando:

Attivare il supporto ccache su Portage
Aprire ed aggiungere   a qualsiasi valore definito nella variabile FEATURES. Se FEATURES non esiste, la si crei. Poi, aggiungere una nuova variabile chiamata CCACHE_SIZE (dimensione della cache) ed impostarla con :

Per verificare che ccache funzioni, chiedere a ccache di fornire le sue statistiche. Siccome Portage usa una diversa cartella home per ccache, è necessario impostare temporaneamente la variabile CCACHE_DIR :

La posizione è la cartella home di ccache predefinita di Portage; si può cambiare impostando la variabile CCACHE_DIR su.

Eseguendo in modo a sé stante (standalone), verrebbe usato il percorso predefinito, motivo per cui è necessario impostare la variabile CCACHE_DIR quando si richiedono le statistiche ccache (di Portage).

Usare ccache fuori da Portage
Per usare ccache nelle compilazioni non-Portage, aggiungere all'inizio della variabile PATH (prima ). Ciò può esser fatto modificando nella cartella home dell'utente. Usare è un modo per definire le variabili PATH (percorso).

Creare pacchetti precompilati
Portage supporta l'installazione dei pacchetti precompilati. Anche se Gentoo non fornisce pacchetti precompilati da sé, Portage può essere pienamente consapevole dei pacchetti precompilati.

Per creare un pacchetto precompilato usare il comando se il pacchetto è già installato nel sistema, o costruirlo con le opzioni   o.

Per far sì che Portage crei pacchetti precompilati per ogni singolo pacchetto che viene installato, aggiungere  alla variabile FEATURES.

Un supporto più ampio nella creazione dei pacchetti precompilati si può ottenere con catalyst. Per maggiori informazioni su catalyst, leggere le FAQ di Catalyst.

Installare i pacchetti precompilati
Sebbene Gentoo non ne fornisce uno, è possibile creare un repositorio centrale dove i pacchetti precompilati vengono depositati. Al fine di usare questo repositorio, è necessario mettere Portage a conoscenza di esso tramite la variabile PORTAGE_BINHOST che dovrà puntare lì. Per esempio, se i pacchetti precompilati stanno su ftp://buildhost/gentoo:

Per installare un pacchetto precompilato, aggiungere l'opzione  al comando emerge accanto all'opzione. La prima opzione dice ad emerge di scaricare il pacchetto precompilato dal server precedentemente definito, mentre la seconda chiede ad emerge di provare ad installare il pacchetto precompilato prima di recuperare i sorgenti e compilarlo.

Per esempio, per installare gnumeric con i pacchetti precompilati:

Maggiori informazioni sulle opzioni per i pacchetti precompilati di emerge si possono trovare nella pagina manuale di emerge:

Distribuire pacchetti precompilati ad altri
Se i pacchetti precompilati devono essere distribuiti ad altri, allora ci si assicuri che ciò sia permesso. Per questo si controllino i termini di distribuzione posti all'origine del pacchetto. Per esempio, per un pacchetto rilasciato sotto GNU GPL, i sorgenti vanno resi disponibili insieme ai binari.

Gli ebuild possono definire una restrizione  nella loro variabile RESTRICT qualora i binari compilati non fossero distribuibili. Talvolta questa restrizione è condizionale sulla base di una o più opzioni USE.

In via predefinita, Portage non maschererà alcun pacchetto sulla base delle restrizioni. Ciò può essere globalmente modificato impostando la variabile ACCEPT_RESTRICT dentro. Per esempio, per nascondere i pacchetti che hanno una restrizione, aggiungere la seguente linea a :

È anche possibile sovrascrivere la variabile ACCEPT_RESTRICT passando l'opzione  al comando. Per esempio,  nasconderà temporaneamente i pacchetti con una restrizione.

Si consideri anche l'impostazione della variabile ACCEPT_LICENSE qualora si distribuiscano pacchetti. Vedere la sezione licenze per questo.

Userfetch
Quando Portage viene eseguito come amministratore (root),  metterà Portage nella condizione di eliminare i privilegi di root durante il recupero dei sorgenti dei pacchetti. Questo è un piccolo miglioramento della sicurezza.

If  is set in FEATURES be sure to change the owner of all the files beneath  using the  command with root privileges:

Verify distfiles
To re-verify the integrity and (potentially) re-download previously removed/corrupted distfiles for all currently installed packages, run: