Wie kann ich mein eigenes Repository starten?

18

Ich bin ein begeisterter Entwickler, aber ich bin nie dazu gekommen, eine eigene PPA einzurichten - wie würde jemand so vorgehen? Häufige Probleme? Wie kann ich meinen Quellcode auf dem PPA zu Paketen kompilieren?

Marco Ceppi
quelle

Antworten:

15

Registrieren Sie sich auf Launchpad, wie txwikinger sagte, dann müssen Sie einen GPG-Schlüssel generieren

gpg --gen-key

und lade es auf Ubuntus Keyserver hoch

gpg --keyserver keyserver.ubuntu.com --publish-keys $KEYID

Ersetzen $KEYIDdurch die Zahl nach dem Schrägstrich in der Zeile "sec" von:

gpg -K --fingerprint

Klicken Sie auf das grüne + neben dem GPG-Schlüssel Ihres Profils und geben Sie ihm den Schlüsselfingerabdruck des vorherigen Befehls. Sie erhalten eine verschlüsselte E-Mail. Entschlüsseln Sie es (richten Sie Ihren GPG-Schlüssel in Ihrem E-Mail-Client ein, um dies zu vereinfachen) und klicken Sie dann auf den darin enthaltenen Link, um zu überprüfen, ob Sie den Schlüssel besitzen.

Klicken Sie auf Ihre launchpad.net-Seite, um eine neue PPA zu erstellen

Befolgen Sie die mit Source Lab verknüpften Verpackungsrichtlinien, aber anders als von Txwikinger angegeben, werden Sie keine Debs hochladen. Das liegt daran, dass deb ein Binärpaket ist und PPAs Quellpakete nehmen. Nachdem Sie die 4 notwendigen Dateien (/ debian / rules / debian / changelog / debian / control und / debian / copyright) in Ihrem Quellverzeichnis haben und ein Original-Tarball der Quelle außerhalb davon ausgeführt haben

debuild -S -sa

Es wird ein Quellpaket generiert, das aus einem .debian.tar.gz (bei Verwendung des Quellformats 3.0) oder .diff.tar.gz zusammen mit einer .dsc- und einer .changes-Datei besteht. Die .dsc- und .changes-Dateien müssen signiert werden, sodass Sie Ihre GPG-Passphrase zweimal eingeben müssen. Dies -sawird nur benötigt, wenn Sie das Paket zum ersten Mal auf die PPA hochladen. Spätere Überarbeitungen können Sie ausleben.

Dann wirst du laufen:

dput ppa:youruser/ppa *.changes

Wenn Sie Ihren eigenen Benutzernamen eingeben und einen benutzerdefinierten Namen für die PPA gewählt haben, setzen Sie diesen nach dem Schrägstrich. Die PPA-Seite im Launchpad gibt Ihnen die genaue ppa: -Syntax an.

maco
quelle
In 14,04 gpg --keyserver keyserver.ubuntu.com --publish-keys $KEYIDwird mit einem Fehler am Ende: gpg: Invalid option "--publish-keys". Man sollte die Verwendung --send-keysstatt: gpg --keyserver keyserver.ubuntu.com --send-keys $KEYIDals pro askubuntu.com/questions/220063/... .
Landroni
4

Es gibt einige Tools, mit denen Sie Quell-Tarballs + Debian-Steuerdateien auf Ihr PPA im Launchpad hochladen können. Und das wird Ihnen sagen, wie . Aber das Hochladen des Pakets ist ein sehr kleiner Teil von allem ...

Das Einrichten einer Build-Umgebung und einer Debian-Paket-Infrastruktur (.deb) ist keine einfache Sache! Es erfordert ein gutes Verständnis der Paketstruktur und der Funktionsweise verschiedener Skripttypen (insbesondere Make- und Shell-Skripte).

Ich habe festgestellt, dass diese beiden Handbücher sehr nützlich sind, als ich den
Ubuntu-Packungsleitfaden von Debian für neue Betreuer gepackt habe

Lesen Sie alle Ubuntu-Packungshinweise sorgfältig durch und Sie sollten auf dem Weg zum Sieg sein!

LassePoulsen
quelle
0

Sie registrieren sich für ein Konto in https://launchpad.net auf Ihrer Homepage und können Ihr eigenes ppa starten. Das ppa wird auf dem Launchpad gehostet.

Sie kompilieren Ihre Quellen, indem Sie ein .debPaket erstellen und es mit dem Befehl auf Ihren ppa hochladendput . Das Paket wird dann automatisch von der Launchpad-Compile-Farm kompiliert und ist auf einer Reihe von Plattformen verfügbar.

Weitere Informationen zur Verpackung finden Sie im Wiki zur Verpackung .

txwikinger
quelle
Ich denke, das hat mich mehr interessiert. Ich weiß, dass der ppa Bazaar für die Quellcodeverwaltung verwendet (glaube ich), also schiebe ich meinen Code einfach an die PPA und BLAM! Pakete, oder vereinfache ich das?
Marco Ceppi
1
Basar und ppa sind etwas zwei verschiedene Dinge. Sie können Bazaar verwenden, um die Revision Ihres gesamten Pakets zu kontrollieren (einschließlich der .deb-Addons für die Paketverwaltung), aber Bazaar würde es per se nicht benötigen und die Verpackung auch nicht für Sie. Bazzar ist im Grunde ein zentraler Zweig Ihrer bzr-Versionskontrolle, der über das Launchpad eine zusätzliche Verwaltung der Benutzerrechte bietet.
txwikinger
bzr ist wie git aber einfacher. Es hat nicht wirklich etwas mit Verpackung zu tun. Es gibt Rezepte für tägliche Builds von bzr, die jetzt für Lauchpad Beta-Tester verfügbar sind, aber Sie müssen noch einen Verpackungszweig erstellen.
Maco