A finalidade de um pacote deb é realizar tarefas como: instalação de aplicativos, instalação de ferramentas, codecs, plugins, fazer configurações, etc.
Veja como é simples criar um pacote deb seguindo este exemplo passo-a-passo:
Passo 1 - Definir exatamente o objetivo do pacote é uma das etapas mais importante de todo processo. Para este simples exemplo será criado um pacote deb, que irá automaticamente colocar um arquivo chamado script-raf, dentro diretório /usr/lib/cups/filter.
Passo 2 - Para dar início a criação de um pacote precisamos criar um diretório base onde toda a estrutura do pacote será montada, lembrando-se que é aconselhável que o nome deste diretório seja sugestivo em relação à funcionalidade do pacote. Para este exemplo o diretório base será chamado de "pacteste", e este será criado dentro do diretório /tmp.
Comando necessário:
Criando o diretório pacteste:
# mkdir /tmp/pacteste
Passo 3 - Após criar o diretório pacteste, vamos criar dentro dele o diretório principal do pacote, que obrigatoriamente deverá ser chamado de DEBIAN (o nome do diretório deverá ser escrito em maiúsculo). Este é o diretório que conterá os arquivos de controle do pacote.
[2] Comentário enviado por tjpp em 08/08/2007 - 09:03h
?comentario=
No final da página 4 tem um erro: se o script-raf existir e for referenciado por outro pacote, ele não será gravado: o dpkg retornará erro, se não for usado o --force-overwrite (você teria que acrescentar o Replaces: no control).
Outro ponto importante é que você não tocou no problema de como explicitar as dependências. Eu achei o tutorial bem legal, mas pacotes criados com ele podem quebrar o sistema ou mesmo não funcionar (já que a dependência não foi instalada). O exemplo que você deu, exceto pelo que eu citei no primeiro parágrafo) vai funcionar, mas pacotes binários, ou para o X, podem dar problemas.
[3] Comentário enviado por tenchi em 08/08/2007 - 10:22h
Legal.
Uma dica para quem não quer criar toda a a árvore de diretórios na mão é o uso da opção DESTDIR= ou PREFIX=, nos programas que usam o autoconf e o cmake.
como em:
$ make install DESTDIR=/tmp/pacote
Se não funcionar, tente
$ make install PREFIX=/tmp/pacote
Fico com uma certa raiva quando nenhum destes funcionam, pois acho que não custa nada o desenvolvedor utilizar uma ferramenta padrão (autotools ou cmake) para facilitar o manuseio do código-fonte do seu programa. Aí tem uns que inventam e criam uns scripts que ninguém entende...
Boa dica mesmo. Usei o ubuntu durante uma época, e precisei muito de um tuto assim, mas não achei. O problema é que nem o próprio checkinstall, que cria um pacote um tanto quanto grosseiro, não é capaz de criar um pacote deb com todos os recursos, ou a maioria destes.
[12] Comentário enviado por Journeyman em 29/01/2009 - 16:57h
Muito boa.
Só um complemento que me foi muito útil.
Dentro da pasta DEBIAN da pra colocar, além do control mais alguns arquivos para função especificas
preinst - shell script para ser executado antes da cópia dos arquivos
postinst - shell script para ser executado DEPOIS da cópia dos arquivos
prerm - shell script para ser executado antes da remoção do pacote
postrm - shell script para ser executado DEPOIS da remoção do pacote
Todos tem que ter chmod +x (permissão de execução)
[16] Comentário enviado por brunojti em 23/09/2009 - 17:10h
Cara, ótimo tutorial.
Eu consegui fazer um .deb pro "DBDesigner" perfeitamente...
porém a instalação do DBDesigner exige que uma biblioteca seja instalada antes, e um arquivo precisa ser executado...
existe uma maneira em que eu consiga automatizar todo o processo pelo .deb?
[21] Comentário enviado por CotidianoLinux em 15/08/2010 - 16:49h
Sou um novato no mundo #Linux, estou usando o Ubuntu 10.04 e estava tentando criar um pacote .deb para um shell script que eu adaptei, o intuito dele é randomizar os papéis de parede. Estou usando .sh juntamente com zenity e estava querendo fazer um pequeno pacote de instalação para divulgar o script para a comunidade Linux. Achei muito bom o seu tutorial, deu pra entender como criar um pacote Debian facilmente. Vlw
[22] Comentário enviado por onjahyr em 07/12/2010 - 20:07h
Ressucitando o tópico, alguém saberia como faço para criar o link no menu do Gnome (Ubuntu 10.10) para, ao clicar, seja solicitado a senha de root e em seguida abrir meu programa, bem como um ícone para este link? Meu programa configura o Grub e é necessário executar como root.