2011-06-15 14 views

Respuesta

0

Creo que es un concepto llamado parche. Empecé a parchear el primer srpm usando este link. Pero la idea básica es que, obtenga el srpm, instale srpm, cree su parche dentro del directorio del área de compilación y especifique el archivo de revisión% patch0 -p1 en el archivo de especificación. Entonces haz la construcción de rpm. ¡Feliz parche!

+0

es el principal problema que estoy enfrentando es que no tengo una fuente RPM. Solo tengo la construcción de RPM. – Monojeet

+0

@Monojeet, luego averigua las rpm de origen? Es lógico por qué srpm está ahí porque cuando aplicamos parches, necesitamos las * fuentes * rpm y no las rpm incorporadas. – Jasonw

+0

Entonces, ¿no hay forma de que pueda editar un RPM sin SRPM correcto? – Monojeet

13

La mejor manera de modificar un RPM que no tiene la fuente de es seguir estos pasos:

  1. desempaquetar las rpm en un directorio con el comando rpm2cpio
  2. hacer los cambios necesarios en el interior ese subdirectorio
  3. Haga un archivo de especificación "ficticio" y compárelo.

Ese archivo spec maniquí podría tener este aspecto:

Name: blah 
Version: 1.0 
Release: 1 
Summary: blah 
License: blah 
Distribution: blah 
Group: blah 
Packager: me 
BuildRoot: /path/to/dir/with/mods 

%description 
blah 

%files 
/path/to/dir/with/mods/* 

reemplazar cada "bla" aquí con el valor real (rpm -qpi rpm file utilizar para obtener los valores). Reemplace BuildRoot en el directorio donde tiene las rpm modificadas sin envolver. Luego ejecute rpmbuild -bb dummy.spec.

Dado que no hay pasos de preparación/instalación/construcción/instalación definidos, solo tomará lo que está en la raíz de construcción y hará un RPM.

Si el paquete de rpm tiene archivos de script, también tendrá que ponerlos en este archivo de especificaciones ficticias. Para ver si el paquete tiene scripts, ejecute: rpm -qp --scripts rpm file. Lo mismo ocurre con las dependencias, prerrequisitos, etc.

Puede haber otros detalles que me faltan, pero esto debería ser suficiente para comenzar.

ACTUALIZACIÓN: Por lo que vale la pena, también http://rpmrebuild.sourceforge.net/

+0

+1 para '--scripts'. No sabía sobre eso. – Brandan

+0

FWIW también hay http://rpmrebuild.sourceforge.net/ –

+1

Esto no funciona sin especificar/modificar la configuración 'BUILDROOT' de' rpmbuild'. – jmtd

Cuestiones relacionadas