Como criar pacotes RPM ou DEB pelo código-fonte utilizando FPM (Ruby on Rails)

Publicado por Eduardo Mozart de Oliveira em 21/09/2016

[ Hits: 3.772 ]

Blog: http://www.eduardomozartdeoliveira.wordpress.com/

 


Como criar pacotes RPM ou DEB pelo código-fonte utilizando FPM (Ruby on Rails)



Queria ter a aparência vendida pelo Xfce na página inicial do projeto no CentOS 5.
Linux: Como criar pacotes RPM ou DEB pelo código-fonte utilizando FPM (Ruby on Rails)
Infelizmente não tive sucesso. Mas aprendi coisas bem interessantes, como criar pacotes RPM ou DEB no Unix.

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

Referência

USE CASE. Package something that uses 'make install' s.l., 2015 https://github.com/jordansissel/fpm/wiki/PackageMakeInstall (acessado em 28 outubro 2015)

Outras dicas deste autor

Como lidar com arquivos de imagem .WIM

dolphin-emu gamepad not working since upgrade to 5.0 [Resolvido]

Alterar mapeamento de teclas da extensão Media Keys do Firefox

Associar uma extensão a um programa no Ubuntu

Adicionando o ISO Master ao menu de contexto do Nautilus

Leitura recomendada

Dando "banho" no Linux

Usando impressora local no openSUSE 11.3 64 bits com rdesktop acessando Windows Server 2008 64 bits

Como normalizar seus arquivos MP3 para que fiquem no mesmo volume

Calendário direto no terminal Linux

Corrigindo erro do VMware e seus botões "browse"

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts