Como criar pacotes para o Gentoo ou Sabayon Linux

Este artigo explica e exemplifica, um procedimento fácil para fazer pacotes para o Gentoo ou Sabayon.

[ Hits: 17.257 ]

Por: Alberto Federman Neto. em 20/05/2013 | Blog: http://www.angelfire.com/wa/brasbeto/


Introdução



Há alguns dias, nosso amigo aqui do VOL, Lucas Meneses, havia perguntado como fazer pacotes para o Sabayon Linux, ou seja, os pacotes para o instalador Entropy.

Eu tenho uma instalação antiga de Sabayon, atualizada Rolling Release e Bleeding Edge, desde a versão 5.2. Está na "13 Experimental", portanto, mais de 3 anos.

Fazia um tempão que eu queria empacotar programas que eu uso, mas que não estão mais nas bases de dados e repositórios do Entropy, por vários motivos:
  • Porque foram removidos do Portage pelo time do Gentoo (pacotes para Sabayon são feitos de Ebuilds e pacotes para Gentoo);
  • Ou porque não são mais desenvolvidos (mas as versões antigas funcionam);
  • Ou porque são considerados instáveis ou obsoletos ("deprecated").

Todos são pacotes que, atualmente, não existem mais no Sabayon, não podendo, portanto, ser atualizados. Mas, como eu uso, eu queria protegê-los. Esses pacotes, se não deseja compilar, empacotar, etc, você pode baixá-los dos links de meu espaço na nuvem do Dropbox.

Os pacotes, são:

1. sexy-python :: uma biblioteca gráfica auxiliar, que eu uso como aceleradora de Compiz:
2. Portato :: uma excelente interface gráfica para Portage, que não existe mais, porque seu desenvolvedor, o alemão Necoro, a descontinuou. É muito boa, funciona bem, eu uso muito e inclusive, eu fui o tradutor dela para português do Brasil:


3. Kuroo4, outra ótima interface gráfica para Portage, feita para KDE. Foi descontinuada, depois voltou a ser desenvolvida:
4. Serpentine :: um pacote para criar CDs de áudio:
5. Meu Compiz completo, existe no Portage e no Entropy, mas volta e meia, é mascarado para remoção pelo time Gentoo, com a alegação de que é instável, e acaba sempre voltando a ser recolocado, porque é muito usado e os usuários exigem. Eu queria proteger o da minha instalação:
6. MuCommander, excelente gerenciador de arquivos em Java:
7. Outro pequeno e leve gerenciador de arquivos em GTK, chamado Gentoo, mesmo, porque foi originalmente feito para ser usado em Gentoo:
8. Tem mais um pacote, exemplo principal deste artigo, o corretor ortográfico, em português do Brasil, para LibreOffice (myspell-pt-br) existente para Gentoo (Portage), mas não para Sabayon (Entropy):

Para Sabayon:
Para Gentoo:
    Próxima página

Páginas do artigo
   1. Introdução
   2. Preparando o sistema
   3. Fazendo e instalando um pacote para Gentoo
   4. Fazendo e instalando um pacote para Sabayon
   5. Empacotando programas já instalados no sistema
   6. Conclusão
Outros artigos deste autor

As características de personalidade dos usuários de Linux

Fish - Um shell fácil de usar

Alternativas ao Google - Sites de busca e motores de procura

Como instalar pacotes no Sabayon

Ambiente gráfico MATE no Sabayon Linux

Leitura recomendada

APTonCD - Seu repositório portátil

Café com leite, gerenciador de lan house e cyber café

O "Synaptic"

Conhecendo o Slpkg (gerenciador de pacotes para Slackware)

Jogos via Internet em 2 minutos com Hamachi

  
Comentários
[1] Comentário enviado por albfneto em 20/05/2013 - 07:59h

ERRATA E COMPLEMENTOS DO ARTIGO:

Atualizado até 6 de Fevereiro de 2015.

IMPORTANTE

uma versão do pacote MYSPELL-PT-BR, agora, baixe deste Link:

https://www.dropbox.com/s/n0n5eax8jut8xke/app-dicts%3Amyspell-pt-br-2.1.1.a89f1d3613f5c1b8ec11efc457...

mas ele já está no repositório normal do sabayon, instalável com equo.



A) ERRATA:
Página 1, há um erro no link para baixar o pacote Serpentine, página 1. Onde se lê "href =" o correto é sem "href =".

Pagina 4, onde se lê: "para não delte para Sabayonetar nada, nenhum Ebuild", lê-se: "para não deletar nada, nenhum Ebuild, ou Diretório".

Página 1,onde se lê:"protegê-lo da minha instalação", lê-se: proteger o da minha instalação".


B) COMPLEMENTOS. MAIS PACOTES.

Aqui irei colocar Links para downloads de mais pacotes que estou fazendo e guardando, podem baixar livremente.

Formando um pequeno repositório de pacotes para Sabayon e Gentoo:

Mais pacotes que criei e disponibilizei.

B1) Sulfur, a antiga interface gráfica do Entropy (para Sabayon, antecessora do Rigo). O Sulfur é mais prático quando você quer controlar quais pacotes instalar:

http://www.vivaolinux.com.br/dica/Sabayon-Linux-Usando-os-dois-instaladores-graficos-tanto-Rigo-como...

Pode ser baixada deste endereço:

https://www.dropbox.com/s/sr2wbxb6cwiwapd/app-admin%3Asulfur-1.0_rc107.c393e29a7b729783b5b2bd722bb88...

B2) Um Firefox, Experimental, 64 Bits, versão 21,compilado em Português do Brasil, com suporte inclusive ao antigo Gstreamer, para Sabayon:

https://www.hidrive.strato.com/lnk/bErhkkvl
https://www.dropbox.com/s/lpgd1mcod7l4g1i/www-client%3Afirefox-21.0.01a466a30551917b3fc8921e8d525658...

B3) ConsoleKit, necessário em alguns casos para manter o botão desligar ativo:

http://www.vivaolinux.com.br/dica/Sabayon-Linux-com-MATE-ou-KDE-Botao-de-Desligar-sumiu-Resolvido/

Baixe de:

https://www.dropbox.com/s/592umm11cwq5h8w/sys-auth%3Aconsolekit-0.4.5_p20120320-r1%7E0.tbz2
https://www.dropbox.com/s/ax6dgqwmbnwitgs/sys-auth%3Aconsolekit-0.4.5_p20120320-r2.fe9df300c1975bcca...

B4) Protobuf antigo, 2.4.1, anterior à versão 2.5.0, necessário para manter fusion-icon funcionando, com o protobuf novo, não funciona.

baixem de:

https://www.dropbox.com/s/uq1lsm41whyzegl/dev-libs%3Aprotobuf-2.4.1.a36e506628aeb01fd9bc41c9306f9186...

B5) Alguns Codecs de Audio Uteis. o Win32Codecs, já tem no Sabayon, mas aqui estão AMD64Codec, FAAC, MAC (Monkey's Audio Codecs)

AMD64CODECS:
https://www.dropbox.com/s/9x7w1pc52zz8n79/media-libs%3Aamd64codecs-20071007.2b5536ed09c0b543e3b9edef...

FAAC:
https://www.dropbox.com/s/lcvdneslfeidsy1/media-libs%3Afaac-1.28-r3.426d594fa34f97179a44a932fea3c1c1...

MAC:
https://www.dropbox.com/s/dhad9scku6fw608/media-sound%3Amac-3.99.4.5.7-r1.dd6b639a0952a64f9d09307580...

WIN32CODECS:
https://www.dropbox.com/s/8e4trlkeulwtel5/media-libs%3Awin32codecs-20071007-r4.659aabc928faff0508fee...

Para Gentoo:
https://www.dropbox.com/sh/xsgnqxg9vwx4qhb/X9o-305vKh
https://www.dropbox.com/sh/y801qaewvp9gwxq/0cdQa3iMJl

B6) Este é um Kernel Estável (3.9.11) que não dá nenhum problema com NVIDIA, nem com ATI, nem com Systemd,

porque o 3.10 dá problemas.

Se quiser usar esse Kernel, baixe de:

https://www.dropbox.com/s/5ort7o6dk1q84i4/sys-kernel%3Alinux-sabayon-3.9.11.30981542b966d78d6b6e2446...

B7) Para a GUI de Portage, Kuroo,há uma nova versão, consulte este meu Artigo:

https://gnutwoall.wordpress.com/2013/10/28/compilando-kuroo4-64-bits-em-sabayon-eou-gentoo/

B8) Versão de 2012 do Amule Adunanza. Agradecimentos a Sabayonino, Itália pela compilação.

Pode ser baixado da minha área do Dropbox:

https://www.dropbox.com/s/tijoitg2029tda0/net-p2p%3Aamuleadu-9999.99059dda93a20df7536c3e5c81c777074e...

Ou da de Sabayonino:

https://www.dropbox.com/s/6a58r9ewnmtud16/net-p2p%3Aamuleadu-9999.99059dda93a20df7536c3e5c81c777074e...

também veja este outro meu artigo sôbre o Amule Adunanza:

https://gnutwoall.wordpress.com/2014/07/07/amule-adunanza-em-sabayon/









C) SCREENSHOT:

Este Screenshot mostra o aplicativo empacotado Portato, que foi baixado do Link e instalado em outro computador:

http://www.vivaolinux.com.br/screenshot/KDE-Preservando-Pacote-Classico-que-nao-existe-mais/

Isso demostra, confirma, que o Pacote criado está funcionando.





[2] Comentário enviado por removido em 20/05/2013 - 10:25h

Ótimo artigo Alberto (como sempre). Testei aqui as duas formas para Gentoo (estou com Funtoo) e funcionou perfeitamente. Depois de ver o seu artigo eu cheguei a uma conclusão: o Daniel e o Fábio são gênios. Interessante que no caso do portage, ele mesmo procura pelas dependências e empacota-as, pensei que ele empacotaria somente o pacote que mandei, mas ele empacotou as dependências também. Tenho apenas algumas perguntas:
1º Para criar pacotes para Sabayon eu precisaria ter o entropy instalado aqui no meu Funtoo? Ou tem outra forma de criar sem usar o entropy?
2º Como faria para empacotar direto dos fontes de um programa, teria que escrever uma ebuild para o portage?

Muito bom o seu artigo! Favoritado!

[3] Comentário enviado por albfneto em 20/05/2013 - 12:23h

Sim, precisa, porque para empacotar para Sabayon (que é entropy), precisa ter o Entropy. Como viu no meu artigo, o pacote entropy pode ser feito do pacote gentoo normal, mas a conversão, pacote gentoo para pacote sabayon, é feita pelo Entropy.

vc pode tentar instalar entropy no funtoo, ele está no Overlay Sabayon, mas se não quiser mudar o Funtoo, colocando instalador binário nele, faça um duplo boot comum sabayon pequeno, tipo com fluxbox, só para criar pacotes de sabayon.

Sim, ele empacota as dependencias, principalmente se vc instalar o pacote a ser criado no seu micro antes.
Concordo com vc, Portage e Entropy são Obras-Primas de Programação, muito bem bolados.

Inclusive, Fábio disse, na época que fez o entropy,que entropy e portage usam inteligência artificialpara a detecção das dependências. São aplicativos fabulosos, pq portage é um GCC automático, e o Entropy, baixa o pacote, acerta com o portage, compara (portage triggering) e depois usa o portage para instalá-lo

Inclusive gentoístas que criticam muito Sabayon, possívelmente nunca testaram sabayon, pq mesmo o Daniel, disse para mim que gosta de Sabayon, e que usou no notebook dele, para não precisar recompilar tudo, pq isso esquentava o notebook.

Resposta da sua pergunta dois: sim precisa, o Ebuild é o script guia, que "fala" pro Portage o que ele deve fazer. Tem alguns artigos e tutoriais na net de como escrever ebuilds,mas é uma coisa meio difícil para mim, pq não sou profissional de TI, mas acredito que quem faz Bash Scripts e Scripts em Python (tanto Portage como Entropy foram escritos em Python), consiga.

[4] Comentário enviado por removido em 20/05/2013 - 13:49h


[3] Comentário enviado por albfneto em 20/05/2013 - 12:23h:

Sim, precisa, porque para empacotar para Sabayon (que é entropy), precisa ter o Entropy. Como viu no meu artigo, o pacote entropy pode ser feito do pacote gentoo normal, mas a conversão, pacote gentoo para pacote sabayon, é feita pelo Entropy.

vc pode tentar instalar entropy no funtoo, ele está no Overlay Sabayon, mas se não quiser mudar o Funtoo, colocando instalador binário nele, faça um duplo boot comum sabayon pequeno, tipo com fluxbox, só para criar pacotes de sabayon.

Sim, ele empacota as dependencias, principalmente se vc instalar o pacote a ser criado no seu micro antes.
Concordo com vc, Portage e Entropy são Obras-Primas de Programação, muito bem bolados.

Inclusive, Fábio disse, na época que fez o entropy,que entropy e portage usam inteligência artificialpara a detecção das dependências. São aplicativos fabulosos, pq portage é um GCC automático, e o Entropy, baixa o pacote, acerta com o portage, compara (portage triggering) e depois usa o portage para instalá-lo

Inclusive gentoístas que criticam muito Sabayon, possívelmente nunca testaram sabayon, pq mesmo o Daniel, disse para mim que gosta de Sabayon, e que usou no notebook dele, para não precisar recompilar tudo, pq isso esquentava o notebook.

Resposta da sua pergunta dois: sim precisa, o Ebuild é o script guia, que "fala" pro Portage o que ele deve fazer. Tem alguns artigos e tutoriais na net de como escrever ebuilds,mas é uma coisa meio difícil para mim, pq não sou profissional de TI, mas acredito que quem faz Bash Scripts e Scripts em Python (tanto Portage como Entropy foram escritos em Python), consiga.


Obrigado pelas respostas Alberto! Estou pensando em empacotar algumas coisas para Sabayon e disponibilizar por exemplo no MEGA ou no Dropbox. Principalmente esses pacotes pouco conhecidos, esses dias eu vi no grupo do sabayon o pessoal querendo um pacote que não tinha no repo do sabayon e nem na árvore do Gentoo... Por isso estou mais interessado empacotar direto dos fontes, vou ver se consigo aprender a escrever as ebuilds.
__________________________
Dei uma pesquisada e uma olhada nas ebuilds e realmente parecem ser difíceis rsrsrs. As PKGBUILDs do Arch são muito mais simples.

[5] Comentário enviado por azk4n em 23/05/2013 - 01:33h

Excelente contribuição...

favoritado
;-))

[6] Comentário enviado por felipealexandre em 30/05/2013 - 00:24h

Muito bom artigo, é muito útil para criar um pacote proprietário ou algum software que não é disponibilizado nos repositórios.

[7] Comentário enviado por fabiojlbc1982 em 22/03/2017 - 15:44h

mudou algum procedimento neste tutorial?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts