As melhores fontes de documentação seriam o código-fonte simulado , o documentação oficial do rpm , o guia de embalagem do rpm , e qualquer outra documentação qualquer um desses recomendo. Quanto ao seu exemplo publicado, parece que o pacote example.src.rpm
não possui um arquivo de especificação adequado no local correto para o mock funcionar.
O mock tomará uma entrada de um arquivo src.rpm para reconstruir, ou você pode usar um diretório de arquivos de especificações e fontes para construir um rpm de origem (SRPM). Com alguma configuração extra, você pode até mesmo usar o mock diretamente com os checkouts do código-fonte. Uma vez que você tenha o mock instalado e um usuário configurado para usá-lo (o mock irá reclamar se você tentar usar como root, um usuário sem privilégios precisa estar no grupo simulado), é bastante simples de usar:
yumdownloader --source openssl
mkdir rpm-results
mock -r epel-7-x68_64 --resultdir=rpm-results openssl-*.src.rpm
Isso reconstruirá a distribuição fornecida pelo OpenSSL e colocará os pacotes resultantes no diretório rpm-results. Para fazer alterações no pacote fornecido, você deve instalar o src.rpm, fazer as alterações e construir os arquivos rpm resultantes:
yumdownloader --source openssl
rpm -ivh openssl-*.src.rpm
# usually this installs to ~/rpmbuild
# make your changes to ~/rpmbuild/SOURCES/* and ~/rpmbuild/SPEC/openssl.spec as necesary
mkdir rpm-results
mock -r epel-7-x68_64 --resultdir=rpm-results --buildsrpm ~/rpmbuild/SPEC/openssl.spec
mock -r epel-7-x68_64 --resultdir=rpm-results rpm-results/openssl-*.src.rpm
Não tenho certeza se versões mais recentes não exigem a compilação de duas etapas (SRPM = > RPM), mas é assim que usamos o simulado na minha loja. Você provavelmente deseja / precisa fazer isso para cada pacote que está tentando reconstruir. Eu não aconselharia empacotar tudo em um único pacote como você pede, mas nada o impede tecnicamente de fazer isso. Você só precisa criar seu próprio arquivo de especificação que combine tudo ou use uma ferramenta diferente, como FPM .