Ich möchte nur ein Ubuntu-Paket aus den offiziellen Ubuntu-Repos verwenden, seine Quelle nur ein kleines bisschen ändern (es wird keine Abhängigkeiten oder irgendetwas beeinflussen) und es dann in ein Launchpad-PPA hochladen, das ich dafür erstellt habe.
Ich möchte kein professioneller Ubuntu-Paketbetreuer werden, daher ist es für mich zu viel des Guten, all die Dokumente zum Erstellen eines Ubuntu-Pakets von Grund auf zu lesen.
Gibt es für diese Aufgabe einige einfache Schritte?
PS:Ich mache das wegen dieses Fehlers in bpython und anderer Dinge, die mir an Ubuntu-Paketen in den offiziellen Ubuntu-Repos vielleicht nicht gefallen.
Akzeptierte Antwort:
Gibt es für diese Aufgabe einige einfache Schritte?
Es ist nur „einfach“, wenn Sie mit einem Paket beginnen, das in den Ubuntu- oder Debian-Repositorys vorhanden ist. Hier ist eine Gliederung:
- Verwenden Sie
apt-get source
um die Quellen/Diffs für das Paket herunterzuladen und anzuwenden. - Gehen Sie in das Verzeichnis hinein, wenden Sie Ihre Patches an/nehmen Sie Ihre Änderungen vor.
- Verwenden Sie
dch
um das Änderungsprotokoll mit dem zu aktualisieren, was Sie modifiziert haben, und um Ihre benutzerdefinierte Version zu „benennen“ (normalerweise eine `ppa1~series1-Typenbezeichnung). - Führen Sie
debuild -S -sd
aus oderdebuild -S -sa
, abhängig davon, ob Ihre ursprünglichen Paketquellen im Zielserien-Repository vorhanden sind oder nicht. - gpg-signieren Sie das Paket, wenn Sie dazu aufgefordert werden (der Schlüssel muss auf Launchpad registriert werden).
- Verwenden Sie
dput
um diexxxxxx.changes
hochzuladen Datei zu Launchpad, die auch die Diffs und vielleicht die Quelle enthält, je nachdem, wasdebuild
ist Schalter, die Sie gebaut haben - Entspannen Sie sich und überprüfen Sie Ihren PPA weiterhin auf den Build-Status/Updates.
Wenn Sie rückportieren oder hochmoderne Debian-Sid-Quellen usw. verwenden, ist es eine gute Idee, eine Chroot einzurichten und zwischen Schritt 3 und 4 dpkg-buildpackage -us -uc
auszuführen um Abhängigkeitsprobleme im Keim zu ersticken.