Como criar pacotes RPM ou DEB pelo código-fonte utilizando FPM (Ruby on Rails)
Como criar pacotes RPM ou DEB pelo código-fonte utilizando FPM (Ruby on Rails)
Precisamos do Ruby on Rails. Para instala-lo no CentOS, leia esta dica. Em outras distribuições, provavelmente o modo de instalação é parecido, mas talvez mude o nome de algumas dependências e comandos (pesquise na internet, na dúvida).
Após a instalação do Ruby on Rails, digite no terminal:
# gem install fpm
Com isso, instalamos o FPM!
Após a instalação, compile o código-fonte normalmente como faria:
# ./configure
# make
Mas, ao invés de logo instalar o pacote no sistema, use os comandos:
mkdir /tmp/installdir
# make install DESTDIR=/tmp/installdir
Com isso, criamos o diretório /tmp/installdir e instalamos o programa nele.
Agora usaremos o FPM para tornar o diretório /tmp/installdir em um pacote RPM ou DEB. Podemos fazer isso por que, se você usar "ls -la" em /tmp/installdir, verá todos os arquivos que seriam adicionados ao sistema, inclusive a estrutura (geralmente começa com /usr). Para isso, use o comando:
cd /tmp/installdir
# fpm -s dir -t rpm -n glib -v 2.32.4 -C /tmp/installdir -p glib-VERSION_ARCH.rpm usr
- -s (source): informamos que queremos fazer um pacote a partir de um diretório.
- -t (type): Informamos o tipo de pacotes que criaremos (mude para deb caso queira criar um pacote para o Debian).
- -n (name): Nome do pacote. No exemplo do post, usamos o glib.
- -v (version): Versão do pacote.
- -C: diretório onde "instalamos" o pacote.
- -p: Nome do arquivo que será salvo o pacote. VERSION_ARCH é um parâmetro escrito automaticamente. VERSION é preenchido pelo -v e ARCH será preenchido pela arquitetura do sistema operacional (ix86 ou x86_64). No final, use .rpm ou .deb, dependendo do tipo de pacote que deseja criar.
- usr é o diretório onde está o programa instalado. Use ls -la em /tmp/installdir e use o diretório onde o programa está instalado (geralmente é usr, mas pode mudar).
Após a instalação, ele criará o pacote glib-2.32.4_x86_64.rpm em /tmp/installdir. Para instala-lo no sistema, use o comando:
# rpm -i glib-2.32.4_x86_64.rpm