O arquivo binário foi corrompido após o empacotamento

2

Uma visão geral rápida, o que estou fazendo é agrupar um aplicativo nodejs usando enclose.js em um único binário e, em seguida, usando rpmbuild para Transforme todo o projeto com arquivos de configuração em um único pacote. Está tudo bem antes do empacotamento, mas há um arquivo binário corrompido depois que o resultado do rpm é instalado. Esse arquivo é um binário de 40MB, enquanto o rpm é de 52MB, mas após a instalação, o binário extraído é de apenas 15MB.

Este é o meu arquivo de especificação:

Name: Packager
Version: 2.0
Release: 0
License: Proprietary
Group: System/Extras
Distribution: Linux CentOS
Packager: Ammar Lakis <[email protected]>
Requires: mongodb-server
Summary: A quick packager

%description
Package made for packaging

%build
cd %{my_source}
npm run build

%install
cp -r %{my_source}/pkg/ $RPM_BUILD_ROOT

%post
systemctl enable packager

%files
/usr/bin/packager
/usr/bin/packager-tools
/etc/packager

e o processo de construção é feito com este comando

rpmbuild -bb --define 'my_source /root/Packager/' packager.spec

Existe alguma coisa causando o truncamento dos arquivos incluídos?

    
por Ammar Lakis 08.05.2016 / 18:20

1 resposta

3

Por padrão, o rpmbuild retira binários e bibliotecas (usando /usr/lib/rpm/brp-compress ) depois de terem sido colocados no arquivo rpm. Você deve ser capaz de desabilitar isso adicionando ao início do seu arquivo de especificação

%global __os_install_post %{nil}
    
por 08.05.2016 / 19:08