Anda di halaman 1dari 5

Como criar metapacotes

Projeto LibertasBR http://www.libertasbr.org.br 26 de abril de 2005

Os meta-pacotes do LibertasBR constituem uma interface simples e direta para a instalao do ca sistema e de suas partes. Eles simplicam os processos de escolha, instalao e congurao dos ca ca pacotes mais comuns para cada modelo de usurio nal, podendo oferecer conjuntos de programas a j prontos para serem utilizados. Este documento tem por objetivo explicar como cri-los. a a

Como criar meta pacotes

Pacotes necessrios: a
equivs dpkg (inclu na base do debian) do

Sobre os pacotes: 1. EQUIVS: A ferramenta equivs utilizada para criar meta-pacotes simples, cujo unico proposito e e depender de outros pacotes. Ela pode ser utilizada tambm para criar modelos de controle e (ver apndice). e Para criar um .deb que depende apenas de outros pacotes (denio literal de meta-pacote), ca os seguintes passos devem ser seguidos: (a) criar um diretrio com o nome do pacote (pkg) o (b) dentro deste diretrio, executar o comando: o equivs-control <nome> No qual, <nome>se refere ao nome do pacote a ser criado. 1

(c) editar o arquivo <nome>, preenchendo os campos dispon veis1 . Os campos no utilia zados podem ser apagados. Pode-se tambm incluir os campos Preinst, Postinst, e Prerme Postrm. (d) executar comando: equivs-build <nome> Dessa forma o .deb ser criado e poder ser instalado, normalmente, com o comando: a a dpkg -i 2. DPKG -B O comando dpkg -b deve ser utilizado para criar pacotes mais elaborados (no necessariaa mente meta-pacotes). Sua sintaxe a seguinte: e

dpgk -b <diretrio do pacote> <arquivo .deb a ser gerado> o

A grande facilidade do dpkg -b possibilitar a incluso de arquivos no pacote. Para isso o e a diretrio do pacote deve ser gerado da seguinte maneira: o Dentro do diretrio raiz do pacote, deve haver, obrigatoriamente, um diretrio DEBIAN (em o o letras maisculas) e dentro deste diretrio, um arquivo control. u o O arquivo control deve ser semelhante (para no dizer igual) ao criado pelo equivs-control a (pode-se, inclusive, cri-lo utilizando equivs-control control e preenchendo os campos a exibidos). Dentro do diretrio DEBIAN, tambm se pode ter os arquivos changelog (vide apndice) o e e copyright, pretinst, postinst, prerm e postrm (que no precisam ser declarados no a arquivo de controle, como feito na criao utilizando equivs), sendo que esses 4 ultimos ca devem, pelo menos, ter permisso +x. a Um n abaixo do diretrio DEBIAN, deve-se ter um espelho do caminho raiz esperado do vel o sistema. Por exemplo, se queremos que o pacote coloque um arquivo em /etc/programa e outro em /usr/share/programa, deve-se ter os diretrios o <nome>/etc/programa e <nome>/usr/share/programa com os arquivos desejados dentro deles.
1 Vide

apndice para uma descrio mais detalhada dos campos. e ca

E de extrema importncia ressaltar que os arquivos NAO PODEM SER ARMAZENADOS a ALEATORIAMENTE. Para uma referncia detalhada, consulte o debian-policy no seguinte e endereo: c www.debian.org/devel Tendo em mente as localizaes-padro do debian, deve-se tambm tomar o cuidado de no co a e a sobrescrever arquivos ali presentes, pois isso resultaria num erro de instalao. ca Feito isso, pode-se sair do diretrio e executar o comando: o dpkg -b <nome> <nome do arquivo .deb> Com isso, ser gerado um arquivo.deb que poder ser normalmente instalado com o dpkg a a -i.

A
A.1

Apndice e
Campos do arquivo de controle:

Section: seo da arvore do dpkg em que o pacote ser encontrado. (ler debian-policy para ca a orientao) ca Priority: prioridade de instalao do pacote. Normalmente opcional (optional) para metaca pacotes (ler debian-policy para orientao). ca Standards-Version: pouco relevante. Deixe como o equivs criar. Package: nome do seu pacote. S pode ter caracteres alfanumricos, h o e fens e pontos. Mantainer: seu nome e seu email. Pre-Depends: Depends: pr-dependncias do pacote. (nomes dos pacotes separados por v e e rgulas)

dependncias do pacote (idem acima) e pacotes recomendados pelo seu pacote (idem acima)

Recomends: Suggests:

pacotes sugeridos pelo seu pacote (idem acima)

Provides: necessidades de pacotes virtuais que seu pacote satisfaz. Architecture: arquiteturas suportadas pelo seu pacote Preinst: shell script a ser executado antes da instalao do pacote. (deve ter permisso +x. No ca a caso de criao de pacotes com o dpkg -b - essa declarao faz com que o script declarado seja ca ca utilizado no lugar do arquivo padro preinst, postinst, prerm ou postrm). a 3

Postinst: shell script a ser executado depois da instalao do pacote. (idem acima) ca Prerm: shell script a ser executado antes da remoo do pacote. (idem acima) ca

Postrm: shell script a ser executado depois da remoo do pacote. (idem acima) ca Copyright: arquivo com informaes de copyright do seu pacote (No caso de criao de pacotes co ca com o dpkg -b, essa declarao faz com que o arquivo utilizado seja o especicado, em vez de ser ca o padro) a Changelog: arquivo com informaes de changelog do seu pacote (idem acima) (vide proximo co tpico) o Readme: arquivo de README do seu pacote (idem copyright) Extra-Files: arquivos adicionais necessrios para sua documentao, que caro obrigatoria ca a amente no diretrio doc do seu programa. o Description: descrio breve do seu programa. A prxima linha dever ser precedida por 2 ca o a espaos e poder conter uma descrio mais detalhada do pacote. c a ca

A.2

Changelog

O arquivo de changelog muito importante, e deve ser sempre mantido com mais cuidado. Ele e tambm tem um formato espec e co que deve ser respeitado (sob penalidade de erro na criao do ca pacote). Ele pode ser criado, junto com toda a estrutura do pacote utilizando a ferramenta dh make (leia man dh-make para maiores detalhes) e mantido com o comando dch -i. Pode tambm ser e criado manualmente utilizando editores de texto (o prprio VIM suporta o formato de changelogs). o Exemplo: (formato de cada reviso de changelog)2 a ~O) stable/unstable/testing; urgency=low/medium/high NOME-DO-PACOT (VERSA (a parte da sintaxe aps o ;, pode ser omitida) o

2 atenao c

para os espaos que precedem as linhas e os caracteres especiais c

Crditos e

Documento Como criar metapacotes Direitos Autorais Reservados (c) Universidade Federal de Minas Gerais Departamento de Cincia da Computao e ca Projeto LibertasBR Mateus Rocha - mahdi@dcc.ufmg.br

Esta documentao livre; voc pode redistribu e/ou modic-la sob os termos da Licena ca e e -la a c Pblica Geral GNU conforme publicada pela Free Software Foundation; tanto na sua verso 2, u a como qualquer verso posterior (a seu critrio) . a e A distribuio desta documentao feita na expectativa de que ela seja util, porm, sem ca ca e e nenhuma garantia; nem mesmo a garantia impl cita de comerciabilidade ou adequao a ca uma nalidade espec ca. Consulte a Licena Pblica Geral do GNU para mais detalhes. c u

http://creativecommons.org/licenses/GPL/2.0/ http://creativecommons.org/licenses/GPL/2.0/legalcode.pt

Anda mungkin juga menyukai