Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Ubuntu Dapper + Xgl
Por mordecai
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Criando pequenos pacotes TGZ
Linux user
Publicado por Victor Guimarães Nunes em 15/08/2007

Login: vitimnunes, 105780 pontos
[ Hits: 5767 ]

Criando pequenos pacotes TGZ

Quem usa Slackware sabe como é chato nunca encontrar softwares com pacotes próprios para sua distro (tgz). Sempre é a mesma coisa... versões disponíveis: (.rpm), (.deb), (.tar.gz). E a gente acaba sempre tendo que compilar o programa, o que além de demorar muito mais, dificulta a remoção do programa caso este não atenda as nossas necessidades.

Por isto nesta dica irei demonstrar uma forma fácil de criar seus próprios pacotes sem dor de cabeça.

Obs.: A intenção desta dica não é criar pacotes Slackware de softwares de grande porte, mas sim de pequenas aplicações de sua própria autoria, já que seria necessário muito mais explanação, pois o processo é um pouco mais complicado.

O Slackware vem com uma ferramenta já instalada para criar pacotes que chama-se makepkg. Ela é útil, mas usar apenas ela causa alguns certos problemas, por isso junto a ela usaremos uma outra ferramenta que se chama checkinstall.

Você pode baixar o checkinstall a partir desde link:
Explicarei por que usaremos o checkinstall e o makepkg. A descrição do pacote .tgz que aparece quando o pacote é instalado deve ser criada em codificação UTF-8 e obedecer a uma série de parâmetros. Poderíamos fazê-lo manualmente, mas o checkinstall faz isso por nós.

Ok, crie uma pasta onde você colocará o seu projeto. Dentro desta pasta crie uma árvore de diretórios semelhante a do Linux... por exemplo, se o seu programa será instalado em /usr/bin a sua árvore será:

# mkdir diretoriocriado/usr/bin/exeprojeto

Feito isso crie uma pasta chamada install no seu diretório criado:

# mkdir diretoriocriado/install

Dentro do diretório criado, execute o comando:

# checkinstall -S --pkgname=nomedepacote --pkgversion=versao --pkgarch=arquiteturacompilada

Feito isso o checkinstall criará um editor para você digitar a descrição do seu pacote, esse editor sairá assim que você deixar uma linha em branco ou pressionar CTRL+D.

>>NomedoPrograma - O que o Programa Faz
>>várias
>>linhas
>>de
>>descrição

Feito isso o checkinstall pedirá para você verificar as suas configurações do pacote e criará um pacote.

Aqui está o X da questão, o checkinstall, pelo menos comigo, não cria a arvore de diretórios corretamente e o pacote fica defeituoso. Para solucionar isso:

# tar -xzvf nomedopacote-versao-arch-1.tgz

Extrairemos o pacote tgz criado para que os arquivos doinst.sh e slack-desc criados pelo checkinstall sejam aproveitados.

O arquivo doinst.sh muda permissões, cria links simbólicos e seta variáveis ao instalar o programa (se necessário).

O arquivo slack-desc é a descrição do pacote tgz digitada no editor do checkinstall

Esses dois arquivos ficam localizados dentro da pasta install.

Terminando de extrair o pacote, remova o arquivo .tgz e um arquivo description-pak criado pelo checkinstall. Feito isso execute o comando:

# makepkg nomedoprograma-versao-arch.tgz

Pronto, seu pacote será criado e estará pronto para usar!


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Instalando Linux em um Palmtop
   Dica Linux recomendada Limpando a memória cache no Linux
   Dica Linux recomendada Habilitando OmniVision Technologies, Inc. OV2640 Webcam no Ubuntu
   Dica Linux recomendada Como trocar o ícone do menu no Gnome
   Dica Linux recomendada H-Craft: Jogo de corrida com ótimos gráficos em 3D

Comentários
[1] Comentário enviado por chackal_sjc em 15/08/2007 - 09:47h:

legal, gostei muito da dica! valeu

parabéns!

[2] Comentário enviado por cvs em 05/10/2007 - 11:54h:

ajudou bastante... heheheh

valeu


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.