Pregunta

Estoy reempaquetando algún software (que tiene su propio instalador) para uso privado en un sistema basado en Debian.Ese software ya está compilado (sin fuente), así que básicamente ejecuto el instalador en el $DESTDIR árbol.

Desafortunadamente, el instalador requiere que se cree previamente un nombre de usuario del sistema y un nombre de grupo.Ahora, sé que es una simple cuestión de hacerlo "a mano" antes de construir (e instalar) el paquete Debian.Pero me pregunto si es posible indicarle a debuild que "falsifique la creación de un usuario" (mientras se ejecuta como root con fakeroot).Editando el debian/preinst.ex y debian/postrm.ex files funciona para realizar esas operaciones, pero esto también concierne a la construir etapa, donde esos usuarios se vuelven innecesarios después de la compilación.

Básicamente, esto equivale a permitir que las herramientas de compilación de Debian (y las herramientas que se ejecutan dentro de la compilación) "crean" que un determinado usuario ya existe.Aparte de ejecutar en un entorno chroot (como pbuilder), ¿cómo puedo hacer esto?

¿Fue útil?

Solución

Un poco tarde, pero mi mejor conjetura sería un LD_PRELOAD, que requiere construir un archivo C separado compilado en una biblioteca dinámica que puede anular, p. getpwnam() que es probablemente lo que usa el instalador para verificar el usuario.

Pero primero, realmente miraría para ver si el " instalador " no se puede forzar al modo desempaquetado. Muchos instaladores pueden, usando opciones ocultas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top