staging.inyokaproject.org

Paketbau

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Artikel für fortgeschrittene Anwender

Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.

Eine der mächtigsten Funktionen Debian-basierender Distributionen einschließlich Ubuntus ist die Paketverwaltung mittels des „Advanced Package Tool“ (APT). Mittels dieses Programms (und seiner Unterprogramme) wird für den Anwender auf einfachste Art und Weise die Verwaltung von Software realisiert. Um APT nutzen zu können, muss die Software im Paketformat .deb vorliegen.

Nicht behandelt wird hier die Erstellung eigener Pakete – dazu siehe Programme kompilieren. Dieser Artikel soll als (rudimentäre) Hilfe für das Erstellen von standardkonformen Debian-Paketen dienen, die man auch im Internet veröffentlichen kann. Eine umfassendere Schritt-für-Schritt-Anleitung findet man im Artikel Grundlagen der Paketerstellung.

Grundlagen

Die Erstellung guter Pakete erfordert eine Menge Hintergrundwissen. Eine hervorragende und umfassende Einführung bietet die Debian-Dokumentation 🇬🇧. Ein paar kurze Hinweise geben die folgenden Abschnitte.

Hinweis:

Schritte zur Paketerstellung

Eine Build-Umgebung einrichten (optional)

Es empfiehlt sich zunächst eine kontrollierte Umgebung bereitzustellen, in der das Paket gebaut werden kann. So wird vermieden, dass ungewollte Abhängigkeiten zu dem System, auf dem das Paket erstellt wird, entstehen. Eine solche abgeschlossene Umgebung wird mittels pbuilder-dist eingerichtet.

Quellcode vorbereiten

"Debianisierung" mit dh_make

Wird als Grundlage eine Software genommen, für die noch kein Debian-Paket existiert, müssen dem Quellcode Verwaltungsinformationen bzw. ein Unterordner debian hinzugefügt werden. Dazu wird dh make verwendet. Dies beinhaltet auch Aufgaben, die beim Installieren oder Deinstallieren des Pakets noch zu erledigen sind.

Verwendung existierender Quellpakete

Wenn ein Debian-Paket bereits in einer anderen Distribution oder einer anderen Ubuntu-Version existiert, kann man auch das zugehörige Quellpaket als Grundlage nehmen. Im Artikel apt-get steht, wie man Quellpakete und die zum Paketbau nötigen Abhängigkeiten installiert.

Paket bauen

Schließlich wird aus den Paketinformationen, die mit dh make angelegt und eventuell noch angepasst wurden, das eigentliche Ubuntu-Paket gebaut. Diese Aufgabe lässt sich mit dpkg-buildpackage innerhalb der Chroot-Umgebung von pbuilder-dist erfüllen.

Problembehebung

Paket aus installiertem Programm erstellen

Mithilfe von dpkg-repack 🇬🇧 kann man bereits installierte Programme wieder in ein .deb-Paket packen. Die genaue Vorgehensweise wird im Artikel dpkg-repack erläutert.

Halbautomatiserte Erstellung von Backports

Das Programm prevu versuchte, alle Abhängigkeiten, die ein Paket aus der neueren Version von Ubuntu benötigt, aufzulösen und zurückzuportieren. Daneben konnte man das Programm auch benutzen, um modifizierte Versionen von Quellpaketen in ein Binärpaket zu wandeln.

Inzwischen stellt Canonical über Backports aktualisierte Pakete außerhalb der normalen Veröffentlichungszyklen bereit.

Intern

Extern

Diese Revision wurde am 9. Februar 2020 19:23 von Heinrich_Schwietering erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Paketbau, Paketverwaltung, Programmierung