¿Cuál es la forma oficial de extender los scripts postinst a la debconf?

¿Cuál es la forma oficial de extender los scripts postinst a la debconf?

tengo un nombre de proyectoregistrador instantáneoque uso para enviar registros a archivos, syslog, la consola o una computadora remota (lo que hace syslogd pero con muchas más funciones).

Siempre que otro proyecto quiera utilizar snaplogger, se espera que cree un subdirectorio de registro. Por ejemplo, micomunicadorEl proyecto hace eso:

PACKAGENAME=communicatord
USERNAME=communicatord
GROUPNAME=communicatord

[...snip...]

LOGDIR=/var/log/${PACKAGENAME}
LOGFILE=${LOGDIR}/${PACKAGENAME}.log
mkdir -p ${LOGDIR}
touch ${LOGFILE}
chown ${USERNAME}:${GROUPNAME} ${LOGFILE}
chmod 640 ${LOGFILE}

Lo que me gustaría hacer es mover las últimas 6 líneas a un script que snaploggerproporciona el proyecto. Entonces communicatordsimplemente usaría una función definida por el script. Quizás algo como esto:

prepare-snaplogger ${PACKAGENAME} ${USERNAME} ${GROUPNAME} true

Al truefinal significa que también queremos una subcarpeta de registro segura.

Dado que el script postinst se ejecuta con root, puede crear todo eso mientras que el servicio se ejecutará solo (es decir, tengo un communicatordusuario), por lo que no podrá crear esas carpetas.

Mi pregunta aquí es: ¿existe alguna forma documentada de proporcionar dichos scripts de extensión en Debian y/o Ubuntu?

Mi idea es que cada proyecto debería proporcionarlo en /usr/share/<project-name>/[debconf/?]. ¿Pero tal vez podamos usar la /var/share/debconf/...carpeta?


Como resultado, tendría una línea adicional para generar ese archivo como la siguiente que aparecería cerca del inicio del communicatord.postinstscript:

. /usr/share/snaplogger/debconf

información relacionada