Benutzer-Werkzeuge

Webseiten-Werkzeuge


debian_paketierung

Debian Paket erstellen

Simpel

Einfachste Variante, einfach zusammenbauen aufgrund der Ordnerstruktur im Projektverzeichnis:

  1. Ordner für Projekt anlegen (Z.B. example)
  2. Ordnerstruktur anlegen der Projektordner entspricht dabei /
    1. debian-Ordner anlegen
      1. control-Datei anlegen
    2. Ordnerstruktur mit gewünschten Dateien befüllen
    3. Rechte der Dateien setzen bzw. überprüfen
  3. in dem dem Projektordner übergeordneten Verzeichnis
    dpkg -b ./example example.deb

Weitere Werkzeuge

  • dh-make zum „Debianisieren“ eines Upstream-Quellpaketes
  • uupdate zur Datenübernahme für eine neue Upstream-Version

Mit Tarballs

  • dpkg-buildpackage -uc -us

Mit Git

FIXME Das hier sind erste Notizen. Wie eine neue Version zu einem vorhandenen Repository hinzugefügt werden kann ist leider noch völlig unklar. Diverse Versuche sind bisher fehlgeschlagen.

Debain-Paket lediglich mit Git verwalten Es stehen keine Tarballs zur Verfügung

Werkzeug: git-buildpackage

Wenn Änderungen gemacht wurden, so sind sie mit

git clean -fd
git checkout .

zu bereinigen Des weiteren dürfen keine Dateien mehr im Verzeichnis sein, die ggf. durch einen früheren Build-Prozeß erzeugt wurden und über z.B. .gitignore nicht angezeigt werden.

Gewünschten Tag auschecken

git checkout debian/3.5.14+dfsg1.orig-1
gbp buildpackage --git-ignore-branch

oder aktuelle version

git checkout debian/sid
gbp buildpackage

Changelogeintrag schreiben

export DEBEMAIL="mustermann@example.com"
gbp dch --snapshot --auto debian/

Änderungen mit neuem Changelog committen

Paket bauen

apt-get source <paket>
cd <paket>
dpkg-buildpackage -us -uc

Im übergeordneten Verzeichnis ist jetzt das neue Paket abgelegt.

Paket ändern

Es gibt mehrere Möglichkeiten:

  1. Änderungen in den Upstream einbauen
  2. Änderungen als Patch im Debian-Paket zur Verfügung stellen
    • dpatch, quilt
    • dch -i erhöht die Versionsnummer, ein entsprechender Changelogeintrag wird vorbereitet und angezeigt
  • apt-get source …
  • Versionsnummer änderen mit dch bzw. debchange
  • Changelog anpassen
    dch --local ccpi
  1. Paket herunterladen und lokal ändern
    apt-get source <paket>
    cd <paket>
    
    [...] Änderungen durchführen
    
    dpkg-source --commit
    Dadurch wird ein Patch innerhalb der Debian-Struktur erstellt
    
    dpkg-buildpackage -us -uc

Paket ändern mit Quilt

  1. Quellen holen
    apt-get source openssh
  2. Changelog-Eintrag schreiben NMU: Non Maintainer Update
    cd openssh-7.9p1
    dch --nmu
  3. Prüfe Format (sollte normalerweise quilt sein):
    cat debian/source/format 
    oder
    what-patch
  4. ~/.quiltrc konfigurieren bzw. prüfen
  5. Alle Patches einspielen
    quilt push -a
  6. Neuen Patch erstellen
    quilt new keylength-768.patch
  7. Quellen ändern mit
    quilt edit sshkey.h
      #define SSH_RSA_MINIMUM_MODULUS_SIZE    768
  8. Am Ende
    quilt refresh
  9. Paket(e) erstellen
    dpkg-buildpackage -us -uc

Das oder die Pakete liegen dann im Verzeichnis eine Ebene höher und können ganz normal mit dpkg eingespielt werden.

Referenzen

debian_paketierung.txt · Zuletzt geändert: 08.12.2023 15:24 von thooge

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki