Hinzufügen von Post-Deb-Installationsskripten

17

Also .debbaue ich ein , und ich muss ein paar Post-Install-Befehle ausführen (Bibliotheks-Pfade verknüpfen und ein paar andere Dinge).

Gibt es eine Möglichkeit, es so zu machen, wenn Sie sudo dpkg -i <pacakage-name>.debein Skript ausführen?

jrg
quelle

Antworten:

21

Sie können Befehle nach der Installation mit dem Postinst-Shell-Skript ausführen, das sich im debian-Ordner in der Quelle befindet.

Dies ist ein normales Shell-Skript, das alle Befehle enthält, die nach der Installation des Pakets (in der angegebenen Reihenfolge) ausgeführt werden sollen. dpkg wird dies automatisch ausführen. Alles, was Sie tun müssen, ist, ein Shell-Skript zu erstellen, bevor Sie Ihr Quellpaket in ein Binärpaket packen, es als 'postinst' bezeichnen und es in das Debian-Verzeichnis stellen.

Weitere Informationen finden Sie im Ubuntu Packaging Guide .

manipuliert
quelle
Die Seite existiert nicht mehr ...
Ionică Bizău
2
Die Seite existiert, der Link ist falsch (am Ende befindet sich ein Duplikat '/ html'). Der richtige Link lautet packaging.ubuntu.com/html . Aber vielleicht hat sich die Seite geändert, weil ich packaging.ubuntu.com/html/packaging-new-software.html nützlicher fand.
Knetic
Seien Sie vorsichtig, postinst wird nicht nach der "Installation des Pakets" ausgeführt, sondern nach dem "Extrahieren der Dateien aus dem deb-Paket". Möglicherweise schlägt der Installationsvorgang fehl und postinst wird noch ausgeführt.
Miguel Ortiz
Nein @Miguel, wenn der Installationsprozess vor den postinstLäufen auf einen Fehler stößt, postinstwird der nicht ausgeführt.
Stephen Kitt
@StephenKitt Ich arbeite derzeit mit einem Deb-Paket, das die Abhängigkeiten nicht erfüllt und die Postinst tatsächlich ausgeführt hat. Ich werde versuchen, meine Antwort mit den Laborinformationen zu aktualisieren.
Miguel Ortiz