GNU/Linux >> Linux の 問題 >  >> Linux

Linux 用の完全に統合されたパッケージ マネージャーがないのはなぜですか?

まず、あります。問題は、統合されたパッケージ マネージャーがないことではありません。問題は、それらが 10 個あることです – 真剣に。

私のお気に入りを見てみましょう:poldek .複数の異なるディストリビューションで実行でき、rpm のいずれかを管理できる、パッケージ管理用のユーザー フロント エンドです。 または deb パッケージ。 Poldek は rpm が行うことを行わず (それは rpm に任せます)、適切なコマンドを送信するだけで、ユーザーは混乱をすべて把握する必要がありません。

しかし、問題はそれだけではありません。ユーザー フロント エンドがどのように見えるべきか、どのように機能し、どのオプションを公開する必要があるかについて、誰もが異なる考えを持っています。したがって、他の人が自分で書いています。実際、今日の一般的なディストリビューションで使用されているパッケージ フロント エンド マネージャーの多くは、複数のバックエンドを処理できます。

しかし、結局のところ、問題(または利点)は、人々が物事を自分の望むとおりに機能することを好むことであり、すべての人を満足させようとするメタファッションではなく、本当に誰かを幸せにすることに失敗することです.これが、そもそも膨大な数のディストリビューションがある理由です。これが、私たちが非常に多くの異なるデスクトップ環境とウィンドウ マネージャーを持っている理由です (そして、それらは実際にはまったく異なる種類のものです)。

ユニバーサル パッケージを作成する方法、それらをすべて理解するマネージャーを用意する方法、または相互に変換するための API を使用する方法については、まだ未解決の提案があります。 . 各ツールは 1 つのことを適切に実行します .

複数のことをしようとするツールを持っている場合はいつでも、そのうちの 1 つがうまくいかないことになります。例:poldek deb パッケージの依存関係の処理が苦手です。


要するに、各ディストリビューションはパッケージ管理に異なるアプローチを使用するためです。それらは単に互換性がありません。 Ubuntu に最適な管理戦略は、Arch などではほとんど意味がありません。「ユニバーサル」(ディストリビューションに依存しない) パッケージ マネージャーは、ユーザー インターフェイスの単なる追加レイヤーであり、各ディストリビューションの特定のマネージャーほどうまく機能しません。

したがって、あなた自身の言葉で言えば、実行するのは難しく、したがって実用的ではありません - また、その恩恵を受ける人はほとんどいないからです。


主に歴史的な理由。同時期に、いくつかのパッケージ管理システム (特に .rpm と .deb) が確立されました。それぞれに支持者がいて、それぞれが十分に優れているため、単一のパッケージマネージャーには説得力のある利点はありません.ディストリビューターは、別のパッケージ マネージャーを実装するためにシステムを一から再構築する意味を理解していません。

これには、システム内の各パッケージ (debian の場合は 10,000 個) を再構築する必要もあります。また、システムのユーザーが古いパッケージ マネージャーから新しいパッケージ マネージャーに移行できるように、スムーズな移行システムを実装する必要があります。移行の作業は実行不可能なほど大きく、移行をテストするには指数関数的に大きくなるため、ほぼ確実に多くの破損が発生します。これは、多くの怒り狂ったパンターを生み出すでしょう.

各ディストリビューションは、そのリリース用にビルドされたものに基づいて、独自の依存関係のセットを維持します。依存関係の競合がほぼ確実に発生するため、ユニバーサル パッケージ リポジトリをディストリビューション間で調整するのは非常に困難です。したがって、統一されたパッケージ管理システム (ユニバーサル パッケージ) の実際の利点を実際に実現することは、とにかく不可能です。

最後に、ユニバーサル スタンダードのパッケージ マネージャーを選択できるのは誰でしょうか? OP のコメントで参照されている XKCD コミックは、この種の演習における通常の失敗モードをまとめたものです。この種のものを標準化することは非常に政治的であり、使用できないもの、または非常に欠陥のあるものになる可能性が高いため、標準についてさらに別の手間をかけたラウンドが発生します-当事者が合意に達することができれば.

したがって、基本的には、政治的すぎる、難しすぎる、リスクが高すぎる、そしてそれを行うことで実現するメリットがないということになります。


Linux
  1. Linux用のPythonアプリケーションをパッケージ化する方法

  2. なぜLinuxなのか? –Linuxに変換するいくつかの理由

  3. Linuxbrew –LinuxおよびMacOSX用の一般的なパッケージマネージャー

  1. Linux上のAPTパッケージマネージャーの説明

  2. Buttercup –Linux用の最新のパスワードマネージャー

  3. インタビューの質問:Linux パッケージ マネージャー (RPM)

  1. 制御が必要なためにLinuxに切り替えた理由

  2. Linux 用の SSH ブックマーク マネージャー

  3. Linux Hyper-V ゲストの IP アドレスが Hyper-V マネージャーに表示されないのはなぜですか