Criando um pacote .deb

Publicado por Leonardo Damasceno em 19/04/2011

[ Hits: 9.003 ]

Blog: https://techcraic.wordpress.com

 


Criando um pacote .deb



Um pacote .deb nada mais é do que um conjunto de instruções para instalação de um ou vários softwares. Uma forma errônea de descrever um pacote .deb é simplesmente dizer que ele é um software.

Uma forma de verificar isso é justamente ao criar um pacote, ou utilizar a opção -c junto ao comando dpkg para listar o conteúdo de determinado pacote .deb. Para quem não possui o conhecimento básico para tal operação, também irei explicar qual a funcionalidade de compactar uma instalação, e automatizar o processo. No exemplo desta dica, irei criar um script com extensão .sh, e este será copiado para um diretório como um arquivo executável.

Bom, tudo começou quando em meu trabalho, recebi uma solicitação para criar um pacote .deb e colocar este no repositório local. Inicialmente os programadores tinham que instalar o Eclipse (IDE para programação, focado em JAVA, porém possui suporte a outras linguagens de programação) utilizando um pacote .tar.gz. Apesar de básico, nenhum programador é obrigado a utilizar a linha de comando do Gnu/Linux, a partir daí, criava um problema, pois existia uma demora ao chamar o suporte para fazer algo relativamente simples.

Encare essa criação de um pacote como uma automatização da instalação, pois caso exista alguma dependência, esse pacote resolverá de maneira fácil.

A estrutura do pacote precisa conter os seguintes diretórios:
  • pacote
  • pacote/DEBIAN
  • pacote/usr/sbin

O primeiro diretório, nomeado como "pacote", é o diretório principal, a raiz. O diretório "DEBIAN", se encontra dentro do diretório principal "pacote". O diretório usr/sbin também se encontra dentro do diretório principal, e cada um possui uma função diferente que será explicada abaixo.
  • pacote: Esse diretório tem por função, ser o diretório raiz, que serve como base para todos os outros que estão dentro deste.
  • DEBIAN: Este diretório conterá um arquivo chamado control, que necessita de algumas informações sobre o pacote para a instalação.
  • usr/sbin - Este diretório foi especificado, para que qualquer script ou arquivo dentro deste diretório será copiado na instalação para /usr/sbin do sistema.

Se ficou confuso, vamos realizar a prática para um melhor entendimento.

Faça o login de root, utilizando o comando su ou sudo su, então inicie:

# mkdir -p pacote/DEBIAN
# mkdir -p pacote/usr/sbin


Após criar o pacote e seus sub-diretórios, em qualquer diretório que você deseje, crie e acesse o arquivo control dentro de pacote/DEBIAN:

# vim pacote/DEBIAN/control

Defina este conteúdo:

Package: DEFINA AQUI O NOME DO PACOTE
Priority: optional
Section: misc
Maintainer: DEFINA SEU NOME AQUI
Architecture: O TIPO DE ARQUITETURA, i386, all, OU QUALQUER OUTRA
Version: DEFINA A VERSÃO AQUI
Depends: DEFINA AS DEPENDÊNCIAS QUE ESTE PACOTE POSSUI
Description: UMA DESCRIÇÃO DO PACOTE

Segue o meu arquivo control:

Package: pacote
Priority: optional
Section: misc
Maintainer: Leonardo Damasceno
Architecture: all
Version: 1.0
Depends: sun-java6-jre, sun-java6-jdk, sun-java6-bin
Description: Pacote para instalação do Eclipse

Nosso pacote está quase pronto. Agora copie o arquivo executável para pacote/usr/sbin, pois quando o pacote for instalado, o executável será copiado para o diretório /usr/sbin do seu sistema.

Crie o pacote da seguinte forma:

# dpkg -b pacote pacote_1.0.deb

Agora instale o pacote que as dependências serão automaticamente baixadas, o arquivo executável será copiado e tudo funcionará perfeitamente.

Para instalar use:

# dpkg -i pacote_1.0.deb

Outras dicas deste autor

Adicionando o IMSpector em seu pfSense

Habilitando SSH no PFSense

Alterando a velocidade de sua placa de rede

Load Balance com PFSense

Iniciando Counter-Strike 1.6 no GNU/Linux

Leitura recomendada

Envy - Facilidade de instalar drivers NVIDIA e ATI

Ping no HD - Teste de latência

Google Chrome - Atualizando Flash Plugin no Linux Mint 64 bits

Stoq - Automação Comercial

Conky - caracteres especiais e data dia/mês/ano

  

Comentários
[1] Comentário enviado por doradu em 19/04/2011 - 18:52h

vou precisar dessa dica

[2] Comentário enviado por laerciomotta em 26/04/2011 - 09:25h

Funcionou muito bem..Eu fiz um pacote do DBDesigner4
Agora só falta descobrir como faz para criar os atalhos..
Segue o link: http://bit.ly/ihcdSA
para executar:
/usr/bin/DBDesigner4/DBDesigner4

[]'s

[3] Comentário enviado por removido em 21/07/2011 - 23:47h

Ressuscitando (nem tanto)...
Bacana a dica, apesar de bem sucinta...

Pra criar os atalhos neste link http://www.infoblogs.com.br/view.action?contentId=19945 tem as dicas. Também dá uma ajudar pra criar o .deb
Foi um dos muitos que segui pra criar. E funcinou.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts