web-dev-qa-db-ja.com

開発者として誰にアクセスするかについて言及する場合、アップストリームとダウンストリームの違いは何ですか?

開発者またはパッケージャーとして誰(またはどこ)にアクセスするかについて言及する場合、上流下流の違いは何ですか?

61
deinerson1

ソフトウェアを書いた人たちが川の源として、素晴らしい川だと考えてください。彼らは上流になり、さらに下流はあなたの分布になり、川の終わりにユーザーになります。 Ubuntuは川の真ん中にあります。

Upstreamは、Ubuntuがパッケージ化してユーザーに出荷するソフトウェアです。 GNOME、Firefox、X.org、Linuxカーネル、その他多くのアプリケーションなど。これは、上流プロジェクトのコレクションを表すため、アーカイブにあるものの大部分です。

Ubuntuには、Ubuntuの派生元であるDebianという特別なアップストリームがあります。したがって、カーネルなどの一部のパッケージでは、Ubuntuのアップストリームプロジェクトから直接Ubuntuパッケージが提供されますが、DebianはUbuntuのアップストリームであり、パッケージ化されるプロジェクトはDebianのアップストリームです。

Ubuntuのダウンストリームは、Linux MintのようなUbuntu派生ディストリビューションになります。

この用語の使用例は、コンテキストによって異なります。たとえば、Ubuntuが導入していないFirefoxのバグがある場合、「そのバグをアップストリームで報告していることを確認してください」という言葉を聞くかもしれません。人は、この場合、Firefoxにバグを直接報告することを意味します。

Ubuntuの場合、ユーザーから上流の開発者に適切なフィードバックを得ることが重要です。ここに私たちがしていることのいくつかのリンクがあります:

  • アップストリーム アプリケーション開発者向けの情報。この名前空間は、Ubuntuでの作業方法を理解したい上流のアプリケーション開発者向けのランディングページとして維持しています。
  • 上流のバグの報告報告 を参照してください。
  • ユーザーからのパッチの保証 上流に戻る 統合できるようにします。ディストリビューションに含まれるすべてのパッチにはエンジニアリングコストがかかり、全員のソフトウェアを改善することが目標であることを忘れないでください。
  • 私たちの仕事 Debianで。

あなたの質問にもっとよく答えるために、誰かがアップストリームに話すようにあなたに言う方法のいくつかの例があります:

  • 「Ubuntu用のマルチメディアアプリケーションを作成したい」-上流のgstreamerフレームワークを使用します。
  • 「自分のアプリがインターネット経由で他のアプリとやり取りしたい」-上流のテレパシーフレームワークを使用します。
  • 「Firefoxに機能を追加したい。」 -Firefoxに直接話しかけ、すべての作業を上流で行います。
  • 「Ubuntu固有の機能をFirefoxに追加したい」-アップストリームはその機能を望んでおらず、気にもかけない可能性が高いので、Ubuntuに話しかけます。メンテナからお知らせします。
  • 同様に、FirefoxではなくUbuntuの何かによって引き起こされたアップストリームアプリ(Firefoxなど)にバグを報告する場合、ダウンストリームのバグを報告するように指示されます。 (ありがとう tj111
69
Jorge Castro