回答:
Ubuntuなどのシステムでは、ほとんどのソフトウェアは、必要なプログラムとライブラリを含む素敵な.deb(またはRed Hatのような.rpm)ファイルにパッケージ化されています。これらのファイルは、ダウンロードするか、CDで入手できます(UbuntuのCDにはそれらがいっぱいです)。リポジトリは、パッケージのセットを含むサーバーです。
Personal Package Archives(PPA)を使用すると、Ubuntuソースパッケージをアップロードして、Launchpadによってaptリポジトリとしてビルドおよび公開できます。
まとめると:
私はこの質問に対する受け入れられた答えに反対しなければなりません。私はその答えに対するコメントとして以下を書いたでしょうが、長すぎます。
PPAは、ランチパッドサーバーでホストされるパッケージのコレクションでもあります。
特に、PPAは単一のパッケージではなく、非常に曖昧に定式化されたポイント「PPAはパッケージ(/ソフトウェアのコレクション)」です。受け入れられた答えで信じることにつながるかもしれません。さらに、パッケージは(必ずしも)ソフトウェアのコレクションではないため、その点がさらに混乱します。
主な違いはホスティング会社です。基本的に、プログラマーであり、独自のパッケージを開発および配布したい場合、およびインターネットに独自のルートサーバーがある場合は、独自のリポジトリをセットアップできます。すばらしいです!しかし、ルートサーバーがなく、料金を支払いたくないが、独自のパッケージを開発および配布したい場合はどうでしょうか。それでは、Launchpadがあります。まさにそのユースケースのためのサービスとしてPPAを提供しています。基本的に、Launchpadで独自のリポジトリを作成し、そこで独自のパッケージを管理できます。
説明する例を見てみましょう。
まず、Ubuntu Saucy SalamanderにMATEデスクトップ環境(Gnome 2フォーク)をインストールするとします。公式リポジトリには含まれておらず、開発者はPPAを維持していません。代わりに、独自のレポがあります。次のように追加できます。
$ sudo add-apt-repository http://packages.mate-desktop.org/repo/ubuntu
これにより、次のエントリが追加され/etc/apt/sources.list
ます。
deb http://packages.mate-desktop.org/repo/ubuntu saucy main
第二に、シナモン (別のGnome 2フォーク)も見てみたいと仮定します。これは、13.04以降の公式リポジトリに含まれていますが、開発者によって維持されているPPAがまだあります。たとえば、新しいリリースをすばやく入手したい場合に便利です。次のように追加できます。
$ sudo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
これにより、次のエントリが追加され/etc/apt/sources.list.d/gwendal-lebihan-dev-cinnamon-stable-saucy.list
ます。
deb http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-stable/ubuntu saucy main
ご覧のとおり、後者のエントリはポイント(1)で作成したエントリと非常によく似ています。実際、どちらもUbuntuの観点からはリポジトリのURLにすぎません。
実際、ポイント(1)と同じ構文で Cinnamon PPA を追加することもできますが、これはPPA を追加する一般的な方法ではありません。
$ sudo add-apt-repository http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-stable/ubuntu
これにより、次のエントリが追加され/etc/apt/sources.list
ます。
deb http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-stable/ubuntu saucy main
これは、ポイント(2)とまったく同じエントリです。これらのエントリが書き込まれるファイルのみがわずかに異なる方法で処理されますが、最終的には実質的な違いはありません。どちらの場合も、常に正規の後に常に、シナモンPPAからのパッケージがシステムで使用可能になりますsudo apt-get update
。
add-apt-repository
Xenialのマニュアルによると、ppa:<user>/<ppa-name>
フォームが使用される場合、「新しく追加されたPPAのGPG公開キーもダウンロードされ、aptのキーリングに追加されます。」URLフォームが使用されている場合、これは当てはまらないと思います。実際、マニュアルでは、1および3で使用するURLフォームの種類を使用できるとは記載されていませんが、「sources.listに直接追加できる行」です。それでも、使用するフォームは機能しているようです。
add-apt-repository
は確かに不完全です。add-apt-repository --help
を使用して、1と3で使用したURLフォームが実際に正しいこと、および考えられるオプションであることを確認してください。さらに、あなたの仮定は絶対に正しいです:PPAのGPG公開キーは、URLフォームを使用するときに追加されません。それは便利な追加です、ありがとう!:) 3で説明したフォームを使用してPPAを追加することはお勧めしません。これは、実際にはPPAが特定の種類のリポジトリであることを示すための例示にすぎません。
APTに関する限り、リポジトリとPPAの間に技術的な違いはありません。どちらもパッケージを提供するソフトウェアリポジトリです。APTの観点からは、パッケージをインストールするメカニズムと同じです。
PPAは、Launchpadをバックエンドとして使用するパッケージのリポジトリです。同じことの単なる別の名前です。(少なくとも原則として)個人的な理由で通常使用されます。これは、手動で行うか、独自のサービスを設定する必要があったほとんどの操作を自動化します。
リポジトリは、ソフトウェアが存在するすべての場所です。この場合、Debianベースのディストリビューションにインストールされるパッケージリストとパッケージです。
Launchpadを使用せずに個人用リポジトリを作成できます。個人用であるため、PPAと呼ぶこともできます。
使用法の唯一の違いは、Launchpad以外のリポジトリに必要な完全なURLをユーザーに強制的に書き込む代わりにadd-apt-repository
、magicキーワードを使用する構文のみppa:
です。
リポジトリは言ったソフトウェアをダウンロードしてインストールするapt-getのようなソフトウェア、適性などを可能にし、様々なソフトウェアの集合です。それらの内容は、すべての人が検査できるように表示されます。啓発のためのリポジトリに関するUbuntuヘルプページをお読みください。
PPAは、ソフトウェアの特別なリポジトリであり、ディストリビューションリーダーシップによってコミュニティ全体にまだ採用されていません。PPAソフトウェアには一般的なリポジトリとして広範囲にレビューされていないため、欠陥があり、マルウェアに使用されることさえあります。詳しくは、LaunchpadのPPAの説明およびこのPPAの説明を参照してください。
リポジトリは、ダウンロードまたは更新のためにパッケージが保存または維持される場所です。これらは、パッケージのセットを含むサーバーです。
A 個人パッケージアーカイブ(PPA)のLaunchpadによってAPTリポジトリまたは同様のアプリケーションとして構築され、公表されるようにソースパッケージをアップロードするための特殊なソフトウェアリポジトリです。ほとんどの場合、公式のUbuntu開発者ではない人々によって管理されています