Se o pacote rpm, que você deseja descompactar, for para o Fedora 11 ou anterior, o Fedora 11 {rpm, rpm2cpio} pode extrair o arquivo com, por exemplo, unPack_rpm.sh
:
#!/bin/bash
# Purpose: Unpack RPM archives (by @unSpawn)
# Args: /path/to/archive
# Deps: Bash, GNU utils, RPM
rpmDetails() { for Q in changelog provides requires scripts triggers triggerscripts; do
rpm -q -p --${Q} "${f}" 2>&1 | grep -v NOKEY > "${Q}.log"; done; }
rpmUnpack() { f=$(readlink -f "${f}"); file "${f}"|grep -q "RPM.v" && \
{ d=$(basename "${f}" .rpm); d="./${d:=ERROR_$$}"; mkdir -p "${d}" && \
{ cd "${d}" && rpm2cpio "${f}" | cpio -idmv && rpmDetails "${f}"; }; }; }
for f in $@; do rpmUnpack "${f}"; done
exit 0
Quando você tiver editado os arquivos descompactados, copie o diretório / diretórios principais para BUILDROOT /. Quando / se rpmbuild -bb name.spec
relatar "não encontrado", crie a pasta com o nome do aplicativo solicitado dentro de BUILDROOT / e copie seus arquivos lá. E execute rpmbuild -bb name.spec
novamente.