Wie kann ich die Verpackung für Libvirt anwenden, um aus einer Git-Version ein Paket zu erstellen?

Wie kann ich die Verpackung für Libvirt anwenden, um aus einer Git-Version ein Paket zu erstellen?

Ich habe versucht, daran zu arbeitenein Patch für libvirt zum Aktivieren von Ceph/RBD-Speichervolumes.

Ich möchte meinen Code nun testen. Dies möchte ich als Paket (oder sogar als Launchpad PPA) tun, damit ich ihn sauber entfernen kann.

Offensichtlich hat bereits jemand die Arbeit erledigt, libvirt für Ubuntu und Debian zu paketieren.

Wie kann ich einen Git-Zweig nehmen und ihn in ein Paket einbauen, indem ich die Verpackung verwende, die das offizielle Ubuntu-Paket verwendet?

Bonuspunkte, wenn wir so etwas wie die Ausgabe erhalten können von

git describe --abbrev=7 --always --tags

als Version, sodass ich am Ende sowohl die Version (4.0.0) als auch den Git-Tag (gfd7cb8c) in einer Versionsnummer habe, sodass neuere Versionen für apt tatsächlich neu aussehen.

Antwort1

Ja, Sie können Verpackungsdateien aus der Distribution (Ubuntu/Debian) verwenden.

  1. Erstellen Sie ein Quellarchiv aus Ihrem Repository und benennen Sie es korrekt.

    <packagename>_<version>.orig.tar.gz
    

    Der Stammordner im Archiv sollte <packagename>-<version>den gesamten Quellbaum enthalten.

    Dann extrahieren Sie es.

  2. Laden Sie die Debian-Verpackungsdatei herunter .debian.tar.zxvon:

    https://packages.ubuntu.com/bionic/libvirt-bin

    Extrahieren Sie es und legen Sie debianden Ordner in <packagename>-<version>den Ordner aus dem vorherigen Schritt.

  3. Öffnen Sie das Terminal im <packagename>-<version>Ordner und erstellen Sie dann das Debian-Quellpaket.

    # if needed
    dch
    debuild clean
    # build source package only
    debuild -S
    
  4. Laden Sie es auf PPA hoch, das Binärpakete für Sie erstellt.

verwandte Informationen