- Como eu recupero o SRPM usando o yumdownloader --source? Quando eu executo o comando, ele diz que os SRPMs não foram encontrados. Como adiciono o repositório? Eu estou falando sobre pacotes oficiais do CentOS aqui.
Este é um problema com o CentOS: link
Assumindo que você é o CentOS 5, crie este arquivo em /etc/yum.repos.d/CentOS-SRPMS.repo
[base-SRPMS]
name=CentOS-$releasever - Base SRPMS
baseurl=http://mirror.centos.org/centos/$releasever/os/SRPMS/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
enabled=1
#released updates
[update-SRPMS]
name=CentOS-$releasever - Updates SRPMS
baseurl=http://mirror.centos.org/centos/$releasever/updates/SRPMS/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
enabled=1
#packages used/produced in the build but not released
[addons-SRPMS]
name=CentOS-$releasever - Addons SRPMS
baseurl=http://mirror.centos.org/centos/$releasever/addons/SRPMS/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
enabled=1
#additional packages that may be useful
[extras-SRPMS]
name=CentOS-$releasever - Extras SRPMS
baseurl=http://mirror.centos.org/centos/$releasever/extras/SRPMS/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
enabled=1
#additional packages that extend functionality of existing packages
[centosplus-SRPMS]
name=CentOS-$releasever - Plus SRPMS
baseurl=http://mirror.centos.org/centos/$releasever/centosplus/SRPMS/
gpgcheck=1
enabled=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
#contrib - packages by Centos Users
[contrib-SRPMS]
name=CentOS-$releasever - Contrib SRPMS
baseurl=http://mirror.centos.org/centos/$releasever/contrib/SRPMS/
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
- Uma vez baixado, qual é o comando para descompactar o SRPM para que eu possa editar os arquivos?
rpm -ivh your.src.rpm
Isso pressupõe que você tenha diretórios necessários, se você não executar mkdir -p /usr/src/redhat/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
para criá-los.
O arquivo que você normalmente deseja editar é o arquivo de especificação em /usr/src/redhat/SPECS/packagename.spec.
- Por fim, quando terminar de modificar, qual é o comando para reconstruir o RPM de origem modificado?
rpmbuild -bb /usr/src/redhat/SPECS/your.spec
para apenas criar o RPM
rpmbuild -ba /usr/src/redhat/SPECS/your.spec
apenas para criar o RPM e um SRPM
- A partir de um SRPM, como criar um RPM?
rpmbuild --rebuild your.src.rpm
Se você precisa criar RPMs, você deve procurar usar o simulado .