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.330 ]

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

Configuração de impressão do SIAFI no Ubuntu

Adicionando o ISO Master ao menu de contexto do Nautilus

Pacotes RPM no CentOS - Erro: "Warning: RPMDB altered outside of yum" [Resolvido]

Como restaurar o tema padrão do Ubuntu

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

Leitura recomendada

Erro: PacketTracer não abre no Linux Mint 18.1 [Resolvido]

Simple Web Browser

VPN FortiVPN no Ubuntu

GitLab no CentOS 7

Qnext - Compartilhador de arquivos, cliente IRC, MSN e outros

  

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