Como falamos anteriormente,
Portage é visto por muitos como a melhor ferramenta de gerenciamento de pacotes para sistemas
Linux. Ele possui diversas características adicionais que tornam a experiência de usar o Gentoo definitivamente melhor. E muitas dessas características estão disponíveis por meio de softwares "agregados" que aumentam sua performance, segurança, estabilidade, e por aí vai.
Para habilitar ou desabilitar determinada característica do Portage precisamos editar o arquivo
/etc/make.conf e alterar o valor da variável FEATURES que contém as palavras-chave para o que desejamos, cada uma delas separada por espaços em branco. Será comum a necessidade de instalar ferramentas adicionais para que as características desejadas possam funcionar.
Neste artigo não trataremos de todas as características adicionais disponíveis para o Portage. Mas você pode ler página de manual do make.conf, ler por si mesmo, e provavelmente achará bem interessante.
COMPILANDO E DISTRIBUINDO: É possível usar o programa distcc para distribuir compilações para diversas máquinas na rede. Como isso funciona? O cliente distcc envia toda a informação necessária para os servidores distcc (rodando distccd) de forma que o servidor possa compilar partes do código fonte para o cliente. O resultado é um tempo de compilação muito menor, e dependendo de sua rede isso pode se mostrar muito útil.
Vejamos como instalar e ativar o distcc. Como o Distcc usa uma interface gráfica para tarefas de monitoramento das tarefas de compilação, coloque a palavra-chave "gnome" em sua variável USE. Porém se não for usar o GNOME, mas ainda quiser a interface gráfica, coloque a palavra-chave "gtk". A instalação é tão fácil como qualquer outra instalação com o Portage:
# emerge distcc
Agora vamos ativar o suporte ao Portage. Primeiro, inclua "distcc" para os valores da variável FEATURES em /etc/make.conf, e depois edite a variável MAKEOPTS conforme sua máquina.
O próximo passo é rodar distcc-config e digitar a lista de servidores distcc:
# distcc-config --set-hosts "192.168.0.112 192.168.1.113"
No exemplo acima assumimos a existência de dois servidores distcc. Não esqueça de rodar distccd:
# rc-update add distccd default
# /etc/init.d/distccd start
ACELERANDO A COMPILAÇÃO: Toda vez que compilamos um programa, o trabalho é iniciado do zero, refazendo todo o processo de compilação. Mas se usarmos ccache economizamos bastante tempo. O que o ccache faz é guardar os resultados intermediários do trabalho de compilação, de forma que, se precisarmos compilar o mesmo programa outra vez, o tempo será extremamente reduzido, talvez sendo 5 ou até 10 vezes mais rápido.
Para instalar, o "complicado" :) processo de sempre:
# emerge ccache
Novamente, inclua ccache à variável FEATURES. Depois acrescente uma nova variável no mesmo arquivo
/etc/make.conf. A nova variável deve ter o nome de CCACHE_SIZE, com conteúdo igual a "2G":
CCACHE_SIZE="2G"
O endereço padrão do Portage para o ccache é /var/tmp/ccache. Se por qualquer motivo você quiser alterá-lo, faça isso na variável CCACHE_DIR em /etc/make.conf.
Também podemos usar o ccache para compilações não realizadas pelo Portage, compilações feita 'na mão' mesmo. Para isso, devemos incluir /usr/lib/ccache/bin no início da variável PATH (antes de /usr/bin).
BUSCA PARALELA: Enquanto uma série de pacotes está sendo compilado, o Portage pode buscar os fontes para o próximo pacote da lista enquanto o outro pacote está sendo compilado. Isso é muito útil, pois é mais uma forma de diminuir o tempo de compilação. Para habilitar essa característica do Portage, acrescente o conteúdo "parallel-fetch" ao conteúdo da variável FEATURES.
Conclusão
Já estou com outros artigos preparados, falando sobre particularidades no uso do Portage e do Gentoo em geral. Daqui a alguns dias postarei a matéria. Até lá.