Ubuntu:バニラソースに対して何をしているのですか?


12

私が間違っている場合は修正してください

私の知る限り、Debian / Ubuntu / Fedoraのようなディストリビューションは通常、パッケージを作成する前にバニラソースコードを変更します。これらの変更の背後にある理由は何ですか?元のソースに問題はありますか?特定のパッケージに加えられた変更のリストとそれらの変更の理由を取得するにはどうすればよいですか?

助けてくれてありがとう!

回答:


18
apt-get source package

2つまたは3つのファイルを取得します。「オリジナル」のtarball(変更されることもありますが、まれに...唯一の変更は多くの場合ファイル名です)-* .orig.tar.gzという名前、debianは* .diffの形式で変更されます.gzファイル、およびいくつかのメタデータ。.diff.gzファイルが欠落している場合があります。これは、パッケージがdebian / ubuntu専用に構築され、特定のディストリビューション作業を処理することを意味します... dakdebianアーカイブのアップロードを管理します。その後、すべてのコードは元のtarballにあります。

理由は複数あります:ソフトウェアのバグを修正する(アップストリームが望んでいない場合)、ソフトウェアをdebianに適応させる(ファイルパスを調整する)。Debianは、すべてのパッケージがFileSystem Hierarchy Standardに準拠することを望んでおり、これは非常に一般的な調整です。

元のtarballは、パッケージングの問題のために作成されたアップストリームと異なる場合があります。プログラムが複数のtarballで配布され、1つの実行可能ファイルしか生成されなかったのを覚えています。debianのメンテナーは、tarされたアップストリームtarballで構成される独自の「オリジナル」tarballを作成することにしました。もう1つの理由は、debianのメンテナーがパッケージにバイナリファイルを追加することを決定する場合があることです。.diff.gzファイル内にバイナリを配置するのは難しいため、元のtarballは変更されます(これは通常、パッケージのドキュメントで明確に説明されています)。

時々(ごくまれに)ライセンスが問題になることがあります。一部のライセンスが原因で、アップストリームが意味を理解していないか、理解したくない場合があります。Debianはすべてのライセンス問題を解決したいので、debianパッチが特定のことを行うか、元のtarballが違法に配布されたファイルから削除されます。

また、一部のコンテンツはライセンスされているため、使用することはできますが、配布することはできません。通常、(fe msttcorefontsflashplugin-nonfree)debianパッケージはパッケージのある種のインストーラーにすぎず、元のコンテンツはパッケージ内にありません。

pineパッケージは興味深いものです。なぜなら、ライセンスはコンパイルされたフォームの配布を禁止しているからです。したがって、pineバイナリパッケージはありませんが、pineソースパッケージはあります。上記のコマンドを使用してダウンロードし、自分用にdebianパッケージにコンパイルできます。


現在、パインは元のライセンス問題を回避するためにalpineとして開発されています-washington.edu/pine
theotherは

pineパッケージはまだリポジトリ内にあります。しかし、まあ、これはライセンスの問題が物事を難しくする方法です。
リオリ09

2

その理由は、おそらくメンテナーやパッケージと同じくらい多くあります。通常、彼らはソフトウェアを修正して、ディストリビューション内の他のソフトウェアとの統合を改善したり、「公式」バージョンではない機能を追加したりします。

sudo apt-get source PACKAGENAMEコマンドラインで入力することで、ソース(およびubuntu固有のdiff)を取得できます 。バニラソースとパッケージの差分を現在のディレクトリにダウンロードします。通常、ソースにはコメントも含まれます。


1

このように考えてください。元のソースtarballからを介してプログラムをインストールした場合./configure; make; make install、まだやるべきことがあります。メニューエントリを作成したり、設定ファイルを設定したりする必要があります。あなたは与える必要があります。ディストリビューションメンテナの変更は、これらのありふれたタスクの自動化にすぎないことがよくあります。./configure--prefix

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.