Como utilizar o repositório SlackBuilds

Você sabia que existe mais uma forma de instalar pacotes no Slackware? Conheça então o SlackBuilds, um repositório mais diferente do que tudo que você já viu!

[ Hits: 16.924 ]

Por: Talvanes Ferreira de Sousa em 18/08/2010


Introdução



Como meu primeiro artigo aqui no VOL, falarei de uma outra maneira de instalar pacotes no Slackware: o repositório SlackBuilds .
Linux: Como utilizar o repositório SlackBuilds
Imagem 1 - site http://slackbuild.org
Todos nós sabemos que existem duas maneiras de instalar programas no Slackware: compilar os fontes .tar.gz ou .tar.bz2 (os famosos tarball), procedimento oficial no Linux e em outros sistemas Unix, ou instalar diretamente o pacote compilado .tgz (em todas as versões) ou .txz (a partir da versão 13.0-current).

Mas compilar pacotes é algo muito trabalhoso e exige muito conhecimento técnico por parte do usuário, o que dá maior vantagem ao pacote pré-compilado. Porém, nem sempre a última versão deste pacote disponível em muitos repositórios é a versão mais atual já lançada, que geralmente é a que o usuário deseja.

Para isso foi criado o repositório Slackbuilds, que é uma maneira de automatizar o processo, pois cada pacote Slackbuild, que é totalmente diferente do pacote-fonte do desenvolvedor e deve ser obtido à parte, reúne, pelo menos, 4 arquivos: um script aplicativo.Slackbuild, um arquivo aplicativo.info, e os arquivos-texto slack-desc e README. Assim:
  • script aplicativo.Slackbuild: reúne instruções de comando que fazem a correta, rápida e fácil compilação do pacote;
  • aplicativo.info: possui informações sobre o pacote (nome, versão, md5sum, autor, entre outros), em forma de atribuição chave-valor (VARIAVEL=valor);
  • slack-desc: contém a descrição completa do pacote, que também aparece no console no processo de instalação do pacote Slackware pré-compilado;
  • README: que reúne informações acerca do software, presente também no slack-desc.

Procedimentos de instalação

Para entendermos melhor isso, relatarei, por exemplo, o processo de instalação do elinks, um navegador modo-texto baseado no famoso links, usando o método Slackbuild.

No campo de pesquisa, procure por "elinks" (sem as aspas). Você pode pesquisar tanto pela versão de seu Slackware (a partir da versão 11.0) quanto fazer a mesma busca para todas as versões (opção all).

Linux: Como utilizar o repositório SlackBuilds
Imagem 2 - campo de pesquisa: elinks
Selecione, então, a versão do pacote desejada (a partir do momento em que foi escrito o artigo, a versão mais atual do aplicativo era 0.11.5).
Linux: Como utilizar o repositório SlackBuilds
Imagem 3 - resultados da pesquisa por "elinks"
Agora, faça o seguinte: baixe o pacote Slackbuild e, em seguida, o pacote-fonte original do desenvolvedor, correspondentes ao aplicativo elinks, já que, como eu disse, o Slackbuild em si não inclui o fonte:
Linux: Como utilizar o repositório SlackBuilds
Imagem 4 - página do elinks - SlackBuilds.org
Baixando o pacote SlackBuilds:

wget http://slackbuilds.org/slackbuilds/13.1/network/elinks.tar.gz

Descompactando o Slackbuild:

tar -zxf elinks.tar.gz

Entrando no diretório recém-criado:

cd elinks

Baixando o fonte do desenvolvedor (desta vez não descompacte, pois o script .SlackBuild o fará por você):

wget http://elinks.or.cz/download/elinks-0.11.5.tar.bz2

O mais importante: executar o Slackbuild (para o elinks, elinks.Slackbuild) - neste caso, é obrigatório se tornar root (superusuário), pois o script elinks.Slackbuild chama make install, um comando que também só pode ser usado dessa forma:

# ./elinks.SlackBuild

Agora ele cuidará do resto, mais ou menos como se fosse um simples ./configure && make && make install (esse processo, dependendo do processador, pode demorar horas, porém, neste caso, como o elinks é um programa pequeno, será apenas alguns minutos).

Ao final, o script elinks.Slackbuild gerará um arquivo .tgz para o diretório /tmp. De lá, para instalar o aplicativo propriamente dito, basta dar um installpkg, como em:

# cd /tmp
# installpkg /tmp/elinks-0.11.5-i386-SBo.tgz


E o navegador elinks já está instalado e plenamente funcional!

Obs.: o método SlackBuild NÃO resolve dependências, então se a instalação do aplicativo não puder se concluir de forma correta, basta olhar atentamente a mensagem de erro que aparecer (é sempre ao final, pois uma vez detectado erro de dependência, a instalação para justamente naquele ponto; então o que se deve fazer é baixar o pacote que falta, e começar a instalação tudo de novo, até que se possa verificar o correto funcionamento do aplicativo).

Conclusão

Apesar de havermos relatado a instalação de apenas um aplicativo, o mesmo procedimento serve para todos os programas disponíveis no SlackBuilds. Basta procurar pelo nome do aplicativo, escolher a versão desejada do pacote e baixar os arquivos (SlackBuilds e tarball). Você verá que é muito mais fácil do que parece. Além disso, este é um exemplo de como podemos aprender mais a cada dia...

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Suporte a impressão e escâner em multifuncionais da HP (configuração completa)

Extensões imperdíveis para quem usa o Git (e o GitHub) no Brackets

Leitura recomendada

Usando aMSN com plugin Music com suporte ao Juk e Amarok

Linguagem LOGO: Crianças programando de maneira divertida

Manual de implantação do inventário CACIC

Segurança em sistemas abertos e fechados

Processadores duplos e quádruplos

  
Comentários
[1] Comentário enviado por douglascrp em 18/08/2010 - 14:12h

Outra dica legal é usar o sbopkg, que automatiza todos os passos acima...
baixe ele aqui http://www.sbopkg.org/

abraço

[2] Comentário enviado por removido em 18/08/2010 - 17:32h

Esse slackbuild é muito bom.

Mas esses dias me bateu uma dúvida

Alguns pacotes vem em formato rpm.

Então dá no mesmo usar o rpm2tgz ou compilar o pacote?

[3] Comentário enviado por talbas em 18/08/2010 - 20:15h

Gedimar, os RPM são um formato de empacotamento de software desenvolvido pela Red Hat Enterprise. Até hoje, é usado por muitas distros Linux baseadas nele (Fedora, Suse, OpenSuse, Mandriva, CentOS). Agora, quanto ao rpm2tgz, ele só pode lidar diretamente com os pacotes RPM compilados, que, por sua vez, não são tão diferentes dos chamados RPM "source" (i.e. pacotes do tipo xxxx-0.0.0-src.rpm), exceto pelo fato de que estes contêm dentro um arquivo-texto .spec, o qual dá as diretrizes de compilação do pacote dentro do sistema Red Hat, produzindo os binários e fontes necessários (informação extraída de http://www.rpm.org/max-rpm/s1-rpm-miscellania-srpms.html).
Espero ter ajudado, e muito obrigado pelos comentários.

Um abraço,
Talbas...

[4] Comentário enviado por talbas em 18/08/2010 - 20:20h

Douglascrp, você está certo. Realmente, o sbopkg automatiza isso tudo o que passei no artigo. Muito obrigado pela sugestão.

Um abraço,
Talbas...

[5] Comentário enviado por removido em 18/08/2010 - 20:31h

Eu me referia à pacotes em rpm, que estão no próprio slackybuilds.

O opera 10.60 vem em rpm, e não em tar.gz

Isso é muito curioso né?

[6] Comentário enviado por xerxeslins em 19/08/2010 - 14:46h

Muito bom!

Apesar de existir o Sbopkg para automatizar esse processo, é sempre interessante saber como é o método tradicional.


[7] Comentário enviado por Lisandro em 19/08/2010 - 22:28h

Gedimar, não dá no mesmo não.
Não é a mesma coisa compilar e usar o rpm2tgz.
O que pode acontecer é que o script do slackbuild desempacota o RPM e reempacota para o Slack, mas aí não é compilação. Ou o script pode pegar do RPM componentes necessários à compilação, aí teria que analisar, mas não tô podendo agora.
Abraço.

[8] Comentário enviado por Slacker em 20/08/2010 - 16:34h

Exato! O slackbuilds desempacota e empacota de novo no formato do Slack. Ele faz isso com os pacoes do Google Earth também que são .deb.

[9] Comentário enviado por Fellype em 25/08/2010 - 12:07h

Bom artigo! Mas vale lembrar que nem sempre o repositório SlackBuilds.org tem os aplicativos mais atuais e muitas vezes não tem todos os programas que desejamos/precisamos.
Além do que foi dito no artigo e nos comentários, existe a opção de utilizar os "buildscripts" do SBo como base para a criação de seus próprios scripts. Assim, a gente nunca fica na mão.

[10] Comentário enviado por nfermat em 26/08/2010 - 02:45h

Só uma correção,

O que obriga executar um slackbuild como root é o programa makepkg
e não o make install, aliais, em todos os scripts slackbuilds rodam um
make install.

[11] Comentário enviado por talbas em 26/08/2010 - 11:29h

Tá, mas o comando "make install" só pode ser usado como root, já que o mesmo faz a instalação do aplicativo no sistema.

[12] Comentário enviado por nfermat em 26/08/2010 - 19:58h

De fato, o "make install" assim só pode ser usado pelo root, contudo
"make install DESTDIR=/tmp/SBo" como é usado nos slackbuilds
pode ser executado por qualquer usuário.

[13] Comentário enviado por futrica em 16/03/2014 - 03:12h

depois de ficar umas 3 horas baixando o "vlc " tudo na mão,
criei um script em python para fazer isso por mim
no meu blog tem um tutorial de como usar:
http://programmertask.blogspot.com.br/2014/03/slackbuildsdownloader.html
o código está em: https://github.com/futrica/slackbuilds_downloader
só copiar a url do arquivo que quer e esperar o processo.

abraço.

[14] Comentário enviado por RafaelSP em 14/08/2014 - 23:45h

Boa explicação, sempre tive dúvida sobre o SlackBuilds.

[15] Comentário enviado por removido em 09/07/2017 - 23:38h



Muito bom.

sbopkg -i programa


Contribuir com comentário