Um olhar sobre o Portage Tools - Parte II

Na primeira parte deste artigo vimos alguns conceitos sobre as ferramentas que o Portage utiliza para trabalhar. Apresentei superficialmente o emerge e suas próprias ferramentas: ebuilds, atoms, set e tbz2. Pois bem, é hora de continuarmos nossa jornada por dentro do Portage Tools, através de seus arquivos de configuração.

[ Hits: 7.611 ]

Por: Luiz Santos em 24/03/2016


Arquivos do diretório /usr/portage/profile - continuação



Continuando com os arquivos do diretório /etc/portage/profiles, temos em seguida o arquivo packages.

packages: este arquivo prove a lista de pacotes que compõem os arquivos SET @system e @profile. Este é um arquivo de configuração como todos os outros.
  • Comentários começam com (#).
  • Deve ser informado apenas um ATOM como dependência (DEPEND) por linha.
  • Pacotes que deverão ser adicionados ao @system, devem começar com *.
  • Pacotes que deverão ser adicionados ao @profile, não necessitam de prefixo.

Por exemplo, se quisermos adicionar o pacote app-portage/eix/eix-0.30.4 ao @system, faremos desta forma:

#colocar o pacote eix, versão 0.30.4 no @system
*app-portage/eix-0.30.4

#colocar o pacote sys-apps/attr/attr-2.4.47-r2, no @profile
sys-apps/attr-2.4.47-r2

packages.build: este arquivo é uma lista de pacotes (um por linha), que são utilizados para construir o tarball do stage1.

package.bashrc: contém lista de arquivos bashrc por pacote. Cada arquivo será processado antes de instalar (emergir) um pacote (atom).

package.provided: lista de pacotes que o Portage deve assumir que foi provisionado. Os pacotes aqui listados serão assumidos pelo Portage que não deverão ser instalados e nem atualizados, salvo se outro pacote explicitar que precisa de determinado (que estiver listado aqui) pacote atualizado.

package.use.force e package.use.stable.force: aqui forçamos determinados pacotes a serem instalados com determinadas USE flags habilitadas ou desabilitadas. Por ex.:

#força a instalação do pacote sys-apps/attr-2.4.47-r2 com a USE flag doc
=sys-apps/attr-2.4.47-r2 doc

#força desabilitar a USE flag doc para o pacote attr-2.4.47-r2
=sys-apps/attr-2.4.47-r2 -doc

É importante notar que as flags devem ser separadas por um espaço após o pacote ser informado.

package.use.mask e package.use.stable.mask: neste arquivo especificamos determinados pacotes a serem mascarados com determinadas USE flags. O formato para inserir pacotes aqui, é o mesmo do arquivo anterior.

parent: este arquivo contém caminhos (paths), absolutos ou relativos, para os perfis.

profile.bashrc: caso necessário, este arquivo será usado para configurar ambientes especiais para os ebuilds de forma diferente da utilizada pelo ambiente root.

soname.provided: lista de bibliotecas compartilhadas (soname) que o Portage deverá assumir que já foi provisionado pelo usuário. Por ex.:

x86_32 ld-linux.so.2 libc.so.6
x86_64 ld-linux-x86-64.so.2 libc.so.6

use.force e use.stable.force: força a instalação de pacotes com as USE flags listadas aqui.

use.mask e use.stable.mask: algumas USE flags que não fazem sentido serem habilitadas em determinadas arquiteturas, ou que ainda não foram exaustivamente testadas. Por exemplo: habilitar USE flags da arquitetura sparc em um x86.

virtuals: este arquivo controla preferências padronizadas que são definidas através da variável PROVIDE dos ebuilds, porém este tipo de arquivo não é mais suportado no Gentoo.

O fato acima se deve através de um projeto do Gentoo chamado de GLEP.

GLEP (Gentoo Linux Enhancement Proposal, ou, Proposta de Aprimoramento do Gentoo Linux) consiste em manter, solicitar e coletar propostas para melhorar o Gentoo. Qualquer usuário ou desenvolvedor pode enviar uma GLEP sugestionando possíveis melhorias para o sistema. Este é um dos caminhos que temos para interagir com os mantenedores do Gentoo.

Através da GLEP37 foi definido que o arquivo virtuals (e pacotes que entram nesta categoria) não seriam mais suportados pelo Gentoo. Segundo os autores desta GLEP - Thomas de Grenier de Latour, Ciaran McCreesh, Brian Harring and Stephen Bennett - este tipo de sistema é descentralizado e não há maneiras do Portage encontrar um pacote, de categoria virtual, específico. Assim o Portage precisaria verificar em todos os pacotes por esta categoria específica. Isto, claramente, provoca uma diminuição significativa de desempenho. Sendo assim, foi criada a GLEP37 que aboliu o sistema/pacotes virtuals.

Este projeto não é parte exclusiva do Portage, porém achei melhor explicar um pouquinho mais sobre o que envolve o Gentoo e suas ferramentas. Neste caso específico, esta GLEP está ligada diretamente ao Portage, sendo assim, creio que coube sua explicação.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Portage - o coração do Gentoo
   3. /usr/portage/profile
   4. Arquivos do diretório /usr/portage/profile
   5. Arquivos do diretório /usr/portage/profile - continuação
   6. /etc/portage/
   7. /etc/portage/ - continuação
   8. Finalizando
Outros artigos deste autor

Um olhar sobre o Portage-tools - Parte I

Um olhar sobre o Portage-Tools - Parte III

Leitura recomendada

Importando extratos do Banco do Brasil para o Kmymoney (gerenciador de finanças pessoais)

MySQL e PHPMyAdmin no Slackware

Um tour pelos visualizadores de imagem para Linux

CUDA: Programe a sua NVIDIA

Ligando e abrindo somente uma aplicação no Linux

  
Comentários
[1] Comentário enviado por removido em 25/03/2016 - 01:28h

Dissecando o Portage.
Simples e direto.
Parabéns.

----------------------------------------------------------------------------------------------------------------
http://24.media.tumblr.com/tumblr_m62bwpSi291qdlh1io1_250.gif

# apt-get purge systemd (não é prá digitar isso!)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden

[2] Comentário enviado por spylinux em 26/03/2016 - 01:52h

Ótima sequência de artigos sobre o portage...mas ficou uma dúvida.
É citado "O Gentoo é um sistema rolling release robusto".

Mas por padrão, o Gentoo não é rolling release, correto? Pode-se transformá-lo em RR, assim como o Funtoo por padrão é rolling release, mas pode-se transformá-lo em Stable. Estou errado nesta informação?

Abraço
[]'s spylinux
Comunidade Manjaro Geek -www.manjaro-geek.org

[3] Comentário enviado por luiztux em 26/03/2016 - 16:31h


[2] Comentário enviado por spylinux em 26/03/2016 - 01:52h

Ótima sequência de artigos sobre o portage...mas ficou uma dúvida.
É citado "O Gentoo é um sistema rolling release robusto".

Mas por padrão, o Gentoo não é rolling release, correto? Pode-se transformá-lo em RR, assim como o Funtoo por padrão é rolling release, mas pode-se transformá-lo em Stable. Estou errado nesta informação?

Abraço
[]'s spylinux
Comunidade Manjaro Geek -www.manjaro-geek.org


Opa, e aí meu caro.

Primeiramente obrigado pelo apoio.

O Gentoo é, por padrão, uma distro Rolling Release, assim como seus derivados. Tanto é que não existe versão para o Gentoo, pois não existe um lançamento, assim como ocorre nas distros que não são Rolling Release. O fato, e isto é muito bom, é que todos os softwares são liberados após extensivos testes. Veja, o Gentoo serve pra qualquer coisa. Você pode instalá-lo num pager, se quiser. Por este e tantos outros motivos, os devs mantém esta preocupação em liberar apenas softwares que foram extensivamente testados. Sendo assim, por consequência, os mesmos são extremamente estáveis. Talvez aí haja esta pequena dúvida. O Gentoo é super estável, mas Rolling Release por padrão. Ok?

Grande abraço.

[4] Comentário enviado por luiztux em 26/03/2016 - 16:31h


[1] Comentário enviado por listeiro_037 em 25/03/2016 - 01:28h

Dissecando o Portage.
Simples e direto.
Parabéns.

----------------------------------------------------------------------------------------------------------------
http://24.media.tumblr.com/tumblr_m62bwpSi291qdlh1io1_250.gif

# apt-get purge systemd (não é prá digitar isso!)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden


Valeu meu caro..obrigado pelo apoio!

[5] Comentário enviado por GlauberAnjos em 02/04/2016 - 01:09h

Mais uma vez, meus parabéns pelo artigo, é de muito ajuda.

[6] Comentário enviado por albfneto em 06/04/2016 - 18:51h

Fantástica a segunda parte também. Muito bom tá isso! Favoritado!
lendo seus artigos, o leigo em gentoo e o iniciante podem ver...
eu sempre digo.... Portage "fala" com vc! Ele te diz o que está errado e o que fazer...
eu adoro Portage, é uma Obra-Prima de programação!

Muito legal do Gentoo é que ele fica duro como pedra, ou mole como geléia... grande com KDE, ou só con Flux, ou sem nada, pelado etc... Totalmente personalizável...
embora Rolling, se vc quiser, vc não atualiza, mantém versões antigas de coisas.... protege, desprotege... tira e coloca dependências etc...
se quiser, até coloca pacote muito instável, é só desmascarar...
Com gentoo, realmente, o Root pode tudo... tudo mesmo!

Porisso que gosto de Gentoo e Distros baseadas nele... é um tipo MUITO diferente de Linux...
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Albfneto,
Ribeirão Preto, S.P., Brasil.
Usuário Linux, Linux Counter: #479903.
Distros Favoritas: [i] Sabayon, Gentoo, OpenSUSE, Mageia e OpenMandriva[/i].


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts