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

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

Convertendo arquivos para PDF a partir do menu de contexto do Nautilus

Desabilitando o NetworkManager no CentOS

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

Instalação do driver Realtek r8169 no Ubuntu 8

Exibindo comandos em apresentações através do Screenkey

Leitura recomendada

Instalação do GoogleEarth 6.0

Chromium no Ubuntu 14.04 e Linux Mint 17

repacman - reempacote um programa no Arch Linux

Usando o Notable no Slackware

Instalação do Lazarus no Slackware 12.0

  

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