Agregar scripts de instalación posteriores a .deb


17

Así que estoy construyendo un .deb, y necesito hacer algunos comandos posteriores a la instalación (vincular rutas de bibliotecas y algunas otras cosas).

¿Hay alguna manera de tenerlo para que, cuando lo haga sudo dpkg -i <pacakage-name>.deb, se ejecute un script?

Respuestas:


21

Puede ejecutar comandos después de la instalación utilizando el script de shell postinst ubicado en la carpeta debian en la fuente.

Este es un script de shell normal que contiene todos los comandos que se ejecutarán (en orden) después de la instalación del paquete. dpkg ejecutará esto automáticamente. Por lo tanto, todo lo que necesita hacer es crear un script de shell antes de empaquetar su paquete fuente en un paquete binario, asígnele el nombre 'postinst' y colóquelo en el directorio debian.

Para obtener más información, visite la Guía de empaquetado de Ubuntu .


La página ya no existe ...
Ionică Bizău

2
La página existe, el enlace está mal (tiene un duplicado '/ html' al final). El enlace correcto es packaging.ubuntu.com/html . Pero tal vez la página ha cambiado, porque encontré que packaging.ubuntu.com/html/packaging-new-software.html es más útil.
Knetic

Tenga cuidado, postinst no se ejecuta después de "instalación del paquete" se ejecuta después de "extraer los archivos del paquete deb", el proceso de instalación puede fallar y el postinst todavía se está ejecutando.
Miguel Ortiz

No @Miguel, si el proceso de instalación encuentra un error antes de la ejecución, postinstentonces postinstno se ejecuta.
Stephen Kitt

@StephenKitt Actualmente estoy trabajando con un paquete deb que no cumplió con las dependencias y en realidad ejecutó el postinst. Intentaré actualizar mi respuesta con la información del laboratorio.
Miguel Ortiz
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.