Jag har en RPM som jag byggde. Och jag letar efter hur jag extraherar Spec-filen ur den. Jag har försökt:
rpm --scripts -qp sampleBuild.rpm
Det fungerade inte. Känner någon rätt kommando?
Svar
Vanligtvis har endast källrpms en spec-fil. Du kan extrahera den med
rpm2cpio myrpm.src.rpm | cpio -civ "*.spec"
eller så kan du installera src rpm, som användare, med rpm -i myrpm.src.rpm
, när katalogen rpmbuild/SPECS/
får specifikfilen.
Kommentarer
Svar
Jag grävde lite mer och även om jag inte kan extrahera SPEC-filen till en annan fil, till exempel text, kan jag använda rpmrebuild
för att visa SPEC-filen och redigera den. Med detta sagt, här är kommandot jag använde:
rpmrebuild -e -p sampleBuild.rpm
Kommentarer
- Detta fungerar bra för RPM (inte SRPM) där den ursprungliga specifikationen saknas, eftersom den genererar en falsk specifikation. e är
rpmrebuild
. - Fungerar bra på CentOS 6.10 förutsatt att du ' har rpmrebuild (finns i EPEL repo inte i basrepo) installerad. Du kan ladda ner epel rpm härifrån: download-ib01.fedoraproject.org/pub/epel/6/i386/…
yumdownloader --source yourpackagename
.