it-swarm.com.de

Wo genau ist der gesamte Quellcode von Launchpad durchsuchbar?

Ich habe den Quellcode-Browser von Launchpad immer als äußerst nützlich empfunden, wenn ich in einer Antwort auf den Verpackungscode verlinken muss. Das URL-Muster ist so einfach (https://code.launchpad.net/ubuntu/+source/<package>), dass ich oft nur das letzte Wort ersetzen kann, nachdem ich code in meine Adressleiste eingegeben habe. Aber in letzter Zeit habe ich festgestellt, dass es zunehmend inkonsistenter ist, den tatsächlichen Verpackungscode zu finden.

Zum Beispiel:

  • GDM - da ist nichts neuer als 15.10 (schlau). Aber aus dem Changelog geht hervor, dass sich der Verpackungscode seitdem geändert hat .
  • Bash - das ist interessant. Es gibt einen Link zu Git-Repositorys auf Launchpad auf dieser Seite, und dort können Sie die Verpackung für neuere Versionen sehen. Ähnliches gilt für apt , bash, git, grub2, ....

Beachten Sie, dass für GDM-Pakete keine Git-Repositorys aufgeführt sind. Andere mögen GDM: Basar selbst , LightDM , zsh , Chrom , ...

Wo ist der Verpackungscode geblieben?

Beachten Sie, dass ich den Verpackungscode nicht herunterladen möchte. Dafür habe ich apt-get source. Ich möchte den Software-Quellcode nicht durchsuchen. Ich würde danach außerhalb von LP suchen (es sei denn, die Software wurde auf LP entwickelt). Ich möchte den Paketcode für Ubuntu online durchsuchen und in der Lage sein, darauf zu verlinken. Für Debian kann ich die Verpackung normalerweise am Alioth ausgraben.

8
muru

Kurze Antwort: Um alles zu bekommen, müssen Sie die Quellpakete einzeln herunterladen. Für Ubuntu ist derzeit kein einziger öffentlicher Browsing-Dienst verfügbar. Aber wir arbeiten daran!

Lange Antwort:

Der kanonische Quellcode für Ubuntu ist als Quellcode verfügbar. Gehen Sie zu https://launchpad.net/ubuntu/+source/hello , klicken Sie beispielsweise auf eine der Versionsnummern, und laden Sie die Quellen aus dem Bereich Downloads herunter. Um den Quellcode für jede von Ubuntu veröffentlichte Version von hallo zu finden, können Sie dem Link folgen, um das vollständige Veröffentlichungsprotokoll anzuzeigen, und von dort aus auf eine beliebige Versionsnummer klicken. Das gleiche URL-Muster funktioniert für jedes Quellpaket. Sie müssen nur den Namen des Quellpakets kennen.

Die Quellpakete sind kanonisch, da sie die Basiseinheit sind, mit der Ubuntu-Entwickler Ubuntu entwickeln. Aber sie sind etwas unhandlich; Das Entpacken eines Quellpakets erfordert einige Werkzeuge. dget aus dem Paket devscripts kann ein Quellpaket mit einem Befehl herunterladen, überprüfen und entpacken, wenn Sie ihm die URL zur DSC-Datei geben.

Dies ist natürlich nicht sehr praktisch.

Vor Jahren gab es eine Anstrengung, dies zu verbessern. Ubuntu nannte es "Ubuntu Distributed Development", kurz UDD, und entwickelte ein verteiltes Versionskontrollsystem namens Bazaar, um dieses Problem zu lösen. Im Rahmen dieser Bemühungen wurden Quellpakete bei ihrer Veröffentlichung automatisch in die Bazaar VCS-Hostingplattform auf Launchpad importiert. Zu diesem Zeitpunkt konnten Sie theoretisch den Quellcode für jedes Paket unter code.launchpad.net finden. Beispielsweise können Sie weiterhin die von Bazaar importierten Quellen für das hello -Paket für die Precise and Trusty Ubuntu-Versionen unter https://code.launchpad.net/ubuntu/+source/hello anzeigen =.

Bazaar konzentrierte sich auf bestimmte Anwendungsfälle und verfügte über eine sehr gut durchdachte Befehlszeilenschnittstelle. Jelmer Vernooij, einer seiner Entwickler, hat eine interessante Retrospektive über die Entwicklung von Bazaar geschrieben, einschließlich dessen, wie dies zu den anderen verteilten Versionskontrollsystemen passte, die zu dieser Zeit entwickelt wurden.

Mit der Zeit eroberte Git die Welt und Bazaar trat in den Hintergrund. In der Zwischenzeit hatte UDD angefangen, seine Risse zu zeigen. Eine zunehmende Anzahl von Paketen konnte nicht importiert werden und musste manuell behoben werden. Dies bedeutete, dass die Bazaar-Ansicht dieser Pakete unter code.launchpad.net nicht aktualisiert werden konnte, obwohl die Ubuntu-Entwicklung für Quellpakete fortgesetzt wurde.

Schließlich der UDD-Importer wurde abgeschaltet ​​weil es niemand pflegte und es sich nicht lohnte, es am Laufen zu halten.

Parallel dazu veröffentlichte ich 2014 einige Hinweise, wie ich mit git Ubuntu entwickelt habe ; obwohl zu der Zeit Ubuntu-Pakete im Allgemeinen nicht in Git gepflegt wurden.

Dieser git-basierte Workflow wurde von meinem Team (dem Ubuntu Server-Team) übernommen und wir haben weiter daran gearbeitet, Ubuntu-Quellen über git verfügbar zu machen. Ein Kollege und ich haben begonnen, eine Blog-Serie (noch nicht abgeschlossen) zu schreiben, in der erklärt wird, was wir tun.

Die Git-Repositorys, die Sie für einige Pakete gefunden haben, sind ein Ergebnis unseres Importers (~usd-import-team). Wir arbeiten noch aktiv daran, weshalb noch nicht alle Pakete auf diese Weise verfügbar sind. Wir befinden uns noch nicht in der "Beta" -Stufe. Wir erwarten, dass alle Pakete erneut importiert werden, bevor wir fertig sind (alle vorherigen Commit-Hashes werden gelöscht), und wir halten noch nicht alle importierten Repositorys auf dem neuesten Stand der Ubuntu-Entwicklungsarbeit. Wenn wir jedoch eine bestimmte Version eines Pakets importiert haben, sollte sie genau genug sein, um durchsucht zu werden.

Wir hoffen, dass wir in den nächsten Monaten alle Pakete importieren und automatisch auf dem neuesten Stand halten können.

Eines unserer Ziele ist es, genau die Frage zu lösen, die Sie sich stellen: Einen einzigen offiziellen Ort auf dem Launchpad zu haben, an dem der gesamte Ubuntu-Quellcode durchsucht werden kann.

11
Robie Basak