Was ist die offizielle Möglichkeit, Postinst-Skripte à la Debconf zu erweitern?

Was ist die offizielle Möglichkeit, Postinst-Skripte à la Debconf zu erweitern?

Ich habe einen ProjektnamenSchnapploggerdas ich verwende, um Protokolle an Dateien, Syslog, die Konsole oder einen Remotecomputer zu senden (was syslogd macht, aber mit vielen mehr Funktionen).

Wenn ein anderes Projekt das verwenden möchte snaplogger, wird erwartet, dass es ein Unterverzeichnis log erstellt. Zum Beispiel meinKommunikatorDas Projekt macht Folgendes:

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}

Ich möchte die letzten 6 Zeilen in ein Skript verschieben, das das snaploggerProjekt bereitstellt. Dann communicatordwürde es einfach eine Funktion verwenden, die das Skript definiert hat. Vielleicht so etwas wie das hier:

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

Das trueam Ende bedeutet, dass wir auch einen sicheren Protokollunterordner möchten.

Da das Postinst-Skript mit Root ausgeführt wird, kann es all dies erstellen, während der Dienst als er selbst ausgeführt wird (d. h. ich habe einen communicatordBenutzer) und daher diese Ordner nicht erstellen könnte.

Meine Frage hier ist: Gibt es eine dokumentierte Möglichkeit, solche Erweiterungsskripte in Debian und/oder Ubuntu bereitzustellen?

Meine Idee ist, dass jedes Projekt so etwas unter bereitstellen sollte . Aber vielleicht können wir den Ordner /usr/share/<project-name>/[debconf/?]verwenden ?/var/share/debconf/...


Als Ergebnis hätte ich eine zusätzliche Zeile zum Angeben der Quelle dieser Datei, etwa die folgende, die am Anfang des communicatord.postinstSkripts erscheinen würde:

. /usr/share/snaplogger/debconf

verwandte Informationen