¿Cómo mantener el contenido de BuildRoot?

11

Las buenas rpm antiguas al compilar el paquete en pasos simplemente mantuvieron el contenido de BuildRoot: fue muy útil para mí, porque si alguna pieza de software era difícil de crear, podría verificar BuildRoot si todo está bien.

Ahora, con todas las rpm "mejoradas", el contenido de BuildRoot se elimina automáticamente, por lo que realmente no puedo sumergirme en él (el paso de instalación no es tan largo).

Un truco que conozco sería agregar algún tipo de suspensión al final de la etapa de instalación a la especificación de rpm. Pero esto es feo.

Entonces, PREGUNTA : ¿cómo mantener el contenido de BuildRoot de una manera agradable? En otras palabras, ¿cómo deshabilitar la eliminación automática de una vez y para siempre?

Greenoldman
fuente

Respuestas:

6

¿Has intentado usarlo rpmbuild -bien las pruebas para que todo se acumule durante la %installfase? Eso debería mostrar lo que está sucediendo sin limpiar automáticamente después.

Luego, cuando esté satisfecho, construya con normalidad.

mattdm
fuente
Gracias. Este es el enfoque menos intrusivo y funciona.
greenoldman
7

Solo agrega

    %define __spec_install_pre /bin/true

encima del .specarchivo

domusofsail
fuente
1
A mí me funciona en RHEL / CentOS 7.
Como el
Esto funciona en Fedora 27.
Máté Wierdl
3

Intente agregar un maniquí %cleanal archivo de especificaciones. Algo como:

%clean
echo NOOP
iFred
fuente
no funciona, porque BUILDROOT se elimina al comienzo de% install, es parte de la inicialización de% install.
smcg
Si el objetivo es mantener buildroot después de la construcción, para la investigación, entonces funciona.
Ederag
0

Esto es molesto, estoy de acuerdo. Si no le importa modificar sus rpm, le sugiero que vaya a la fuente de rpm y descubra dónde se elimina BuildRoot, desactive esa línea (probablemente sea solo una línea) y vuelva a compilar. La otra cosa que sugeriría es presentar un error en la lista de deseos para restaurar el comportamiento anterior, que creo que fue configurable.

Pregunta: ¿en qué versión de rpm cambió este comportamiento?

Faheem Mitha
fuente
No conozco la versión, pero el cambio en las rpm oficiales sería difícil: lists.rpm.org/pipermail/rpm-list/2008-December/000040.html La explicación indica que la ideología juega un papel muy importante. Sin embargo, sería posible parchar rpm, gracias por la pista. Tal vez también podría revertir la creación automática de BuildRoot.
greenoldman 01 de
@macias: Miré las fuentes de rpm en Debian (4.9.0-2), pero no encontré nada útil. Sin embargo, incluso si los desarrolladores no están dispuestos a cambiarlo, espero que estén dispuestos a decirte cómo hacerlo por ti mismo.
Faheem Mitha
Afortunadamente, el modificador -bi funciona para este caso, por lo que omito los parches si puedo: la lista de software con regresiones se está alargando de todos modos.
greenoldman el