Neste artigo pretendo demonstrar como montar seu pacote RPM. Aqui será definido o que significa RPM, o que é necessário para criar seu pacote, como montar um arquivo de spec e finalmente como gerar seu pacote.
[ Hits: 57.190 ]
Por: Alexandre Felipe Muller de Souza em 08/10/2007
Ao contrário do que se pensa, não é preciso ter um sistema baseado no Red-Hat para montar seu pacote RPM. Se você tiver uma distribuição baseada no Debian também é possível desenvolver seus pacotinhos. Para isso você precisa ter instalado o rpm. Por exemplo, no Debian digite:
# apt-get install rpm
Tendo feito isso verifique se existe o comando "rpmbuild".
Caso você já esteja usando uma distro RPM-Based, não precisa fazer nada.
Existem dois tipos de pacotes, um pacote pré-compilado ou um pacote com fontes. Para isso é preciso ter os fontes do software. No caso de pacotes com fontes, estes serão compilados no momento da instalação do pacote.
Agora temos que criar o arquivo de spec. Neste arquivo ficarão todas as informações sobre seu pacote, tais como nome, versão, dependências. Este arquivo tem os seguintes campos:
Summary: Contém o nome do seu software completo;
Name: Nome curto do pacote;
Version: Versão do software que será empacotado;
Release: O número de entrega, por exemplo, cada vez que empacota você aumenta esse número;
License: A licença do pacote por exemplo GPL, LGPL, BSD, Public, EULA, FREEWARE;
Group: A categoria a qual este pacote pertence;
URL: O site oficial do pacote, aonde será encontrado sua documentação;
BuildRoot: Aonde este pacote será compilado;
Vendor: A organização que detém os direitos do software;
Packager:O nome do empacotador.
Além destes campos existem as diretivas:
%prep, lista quais os comandos devem ser executados para preparar o seu software a ser compilado;
%build, lista de comandos necessários para compilação dos fontes;
%install, lista de comandos necessários para instalação do pacote no sistema;
%files, lista de arquivos que este pacote pertence. Ou seja, todos os arquivos do seu software dentro desta diretiva. Você pode usar ainda %defattr (determina propriedades dos arquivos) e %doc (determina arquivos de documentação);
%clean, esta seção contém uma lista de comandos que limpam arquivos extras que tenham sido criados. Por exemplo, uma pasta dentro do /tmp que você tenha criado na compilação.