回答のパッケージコードにリンクする必要がある場合、Launchpadのソースコードブラウザーが非常に役立つことが常にわかっています。 URLパターンは非常に単純(https://code.launchpad.net/ubuntu/+source/<package>
)であるため、アドレスバーにcode
と入力した後、最後のWordを置き換えることができます。しかし、最近では、実際のパッケージングコードを見つけるのがますます矛盾していることがわかりました。
例えば:
GDMパッケージ用のGitリポジトリがリストされていないことに注意してください。 GDMのようなその他: Bazaar自体 、 LightDM 、 zsh 、 Chromium 、...
そのすべてのパッケージングコードはどこに行きましたか?
パッケージコードをダウンロードしたくないので、apt-get source
があります。私はソフトウェアのソースコードを閲覧したくありません。そのためにLPの外を見るでしょう(もちろん、ソフトウェアがLPで開発されていない限り)。 Ubuntuのパッケージコードをオンラインで参照し、リンクできるようにしたいのですが。 Debianの場合、通常は Alioth でパッケージを掘り下げることができます。
簡単な答え:すべてを入手するには、ソースパッケージを個別にダウンロードする必要があります。現在一般的に利用できるUbuntu用の単一のパブリックブラウジングサービスはありません。しかし、私たちはそれに取り組んでいます!
長い答え:
すべてのUbuntuの正規のソースコードは、ソースパッケージとして利用できます。 https://launchpad.net/ubuntu/+source/hello に移動できます。たとえば、バージョン番号の1つをクリックすると、[ダウンロード]セクションからソースをダウンロードできます。 Ubuntuでこれまでに公開されたすべてのバージョンのhelloのソースを見つけるには、リンクをクリックして フル公開履歴 を表示し、そこから任意のバージョン番号文字列をクリックします。同じURLパターンは、どのソースパッケージでも機能します。ソースパッケージの名前を知る必要があるだけです。
ソースパッケージは、Ubuntu開発者がUbuntuを開発するために使用する基本単位であるため、標準です。しかし、それらはやや扱いにくいです。ソースパッケージを展開するには、いくつかのツールが必要です。 dget
パッケージのdevscripts
は、dscファイルへのURLを指定すると、1つのコマンドでソースパッケージをダウンロード、検証、および展開できます。
もちろん、これはあまり便利ではありません。
数年前、これを改善する努力がありました。 Ubuntuはこれを「Ubuntu Distributed Development」または略してUDDと呼び、この問題を解決するためにBazaarと呼ばれる分散バージョン管理システムを開発しました。この取り組みの一環として、ソースパッケージは、公開時にLaunchpad上のBazaar VCSホスティングプラットフォームに自動的にインポートされました。当時、理論的にはcode.launchpad.net
でパッケージのソースコードを見つけることができました。たとえば、 https://code.launchpad.net/ubuntu/+source/hello で、UbuntuのPreciseおよびTrustyリリースのhello
パッケージのBazaarインポートソースを引き続き表示できます。 =。
Bazaarは特定のユースケースに焦点を当てており、非常によく考えられたコマンドラインインターフェースを備えていました。開発者の1人であるJelmerVernooijは Bazaarの開発に関する興味深い回顧展 を書いています。これには、当時開発されていた他の分散バージョン管理システムとの適合性も含まれています。
やがて、gitが世界を席巻し、Bazaarが後部座席に座りました。その間、UDDはその亀裂を見せ始めていました。インポートに失敗したパッケージの数が増えており、修正するには手動による介入が必要でした。これは、ソースパッケージでのUbuntu開発が継続されたとしても、code.launchpad.net
のそれらのパッケージのBazaarビューの更新に失敗したことを意味しました。
最終的に、 DDインポーターはオフになりました 誰もそれを維持しておらず、それを実行し続ける価値がないと考えられていたためです。
これと並行して、2014年に buntu開発を実行するためにgitを使用していた方法に関するいくつかのメモ ;を公開しました。当時、Ubuntuパッケージは一般的にgitでメンテナンスされていませんでしたが。
このgitベースのワークフローは私のチーム(Ubuntu Serverチーム)で採用されており、Ubuntuソースをgitで利用できるようにする作業を続けています。同僚と私は ブログシリーズ (まだ未完成)を書き始め、私たちが何をしているかを説明しています。
一部のパッケージで見つかったgitリポジトリは、インポーターの結果です(~usd-import-team
)。私たちはまだこれに積極的に取り組んでいるので、すべてのパッケージがまだこの方法で利用できるわけではありません。まだ「ベータ」段階ではありません。準備が整う前にすべてのパッケージを再インポートし(以前のコミットハッシュをすべて壊す)、インポートされたすべてのリポジトリを最新のUbuntu開発作業で最新の状態に保っていません。ただし、パッケージの特定のバージョンをインポートした場合、参照するのに十分な精度が必要です。
今後数か月以内に、すべてのパッケージをインポートし、自動的に最新の状態に保つことを目指しています。
私たちの目標の1つは、あなたが求めている質問を正確に解決することです。すべてのUbuntuソースコードを参照できるLaunchpadに単一の公式な場所を置くことです。