PC-BSD PBI、廃止予定の理由は何ですか?

PC-BSD PBI、廃止予定の理由は何ですか?

最終的にPBIを放棄し、移植に戻るようにしたPC-BSDチームが直面している具体的な技術的/組織的理由は何ですか?

編集とパッケージ化が難しいからでしょうか?彼らが作ったハードリンクに何か問題があるからでしょうか?それとも、依存関係を収集して一緒にコンパイルするために多くの作業が必要なためですか?

ソフトウェアを作成したのと同じチームがなぜこう言うのか疑問に思います。GNUキャッシュ)、Windows用のスタンドアロンバージョンの提供に時間と労力を費やし、* NIXをコンパイラー/インストール・プログラムに任せます。

ポートとライブラリがなぜ良いのかを尋ねているわけではありません(簡単なセキュリティアップグレード、...)。私はパッケージとWindowsの好みや意見を求めるのではなく、PBIを使用しなくなった技術的な理由を尋ねるのではありません。特に、PBI(0install、NixOS)パスが技術的に実現可能でない、または広く採用されていない理由を尋ねたいと思います。

答え1

PC-BSDでPBIファイル形式が中断されたのは、実際には3つの理由があります。

  1. PBIフォーマットは、FreeBSD用のパッケージングフォーマットを提供するために作成されました(以前は「実際の」パッケージングシステムはありませんでした)。パッケージ- ポート収集のみ)。

    一度パッケージ結局、FreeBSD自体(9.2/10.0?)内で開発/実装されれば、競争形式を維持する理由はほとんどありません。これは、補助パッケージ形式よりも「公式」FreeBSDパッケージを変更するのに多くの人が貢献するからです。

  2. PBIファイル形式は、PC-BSDのユーザーの問題の最大の原因です。

    ほとんどのPC-BSDユーザーは、独立/制限されたアプリケーション範囲の概念を理解していない古いLinuxユーザーです。したがって、アプリケーション「A」がアプリケーション「B」を見つけるか起動できない場合(「A」が実行されているため)、制限されたコンテナはアプリケーション/システムエラーを想定します。同時に、すべてのさまざまなLinuxベースのアプリケーションがシステムとの統合に向かって着実に移動しているため(スタンドアロンアプリケーションの概念から離れて)、ますます多くのアプリケーションを制限された環境で実行することはできません。私たちがPBIからpkgに切り替えることを決めたとき、FreeBSDには、制限されたPBIコンテナで正常にパッケージング/実行できるアプリケーションが約200しかありませんでした。一方、標準に切り替えるとパッケージシステム私たちはFreeBSDの23,000以上のすべてのパッケージにすぐにアクセスできます。これはまた開発者のオーバーヘッドを減らします。 2人のPC-BSD開発者がすべてを別々のバージョンに維持するのではなく、FreeBSDコミュニティ全体がアプリケーションをテスト/修正することになるからです。

  3. 技術的な問題

    一般的なコンテナシステムとそれに伴う制限/制約に加えて、ファイル形式全体をあきらめたいくつかの技術的なバグがあります。

    • ロード時間

      PBIの起動には約30〜45秒かかり、pkgには約2秒かかります。これは主にコンテナを初期化し、コンテナ内にライブラリをロードするためです。

    • アプリケーションのコンパイル

      PBIは、通常のランタイムプレフィックスとは異なるランタイムプレフィックスを使用してコンパイルする必要があります。しなければならないサポートされていますが、アプリケーション自体には、アプリケーションが実際に正しく構築/実行されないようにするハードコーディングされたパス/設定があることがよくあります。これは、アプリケーションのビルドに問題があるときに別のビルド設定を使用するため、アプリケーション開発者やFreeBSDポーターからサポートを受けることができないことを意味します。

    • 開発者メンテナンス

      前述したように、PBIシステムはメンテナンスが非常に集約的です。アプリケーションをビルドすると(ランタイムプレフィックスの変更により)、ビルドシステムで奇妙な欠陥が発生し続けます。したビルド時に実際に実行されていることを確認するには、開発者が手動でロード/テストする必要があり(組み込みパスの問題を特定し)、アプリのメタ情報も更新/維持する必要があります(この追加情報を保持し続けます)。今はpkgシステムに関する追加情報の適用範囲として扱います。そのため、2人のメンテナンスが必要なだけでなく、ほとんどのLinuxアプリケーションが設計されているように、基本的なシステム環境に統合されていないため、アプリケーション自体はほとんど実行不可能になりました。

PBIファイル形式がPC-BSDから削除されたにもかかわらず、私たちはまだアプリケーションの分割に専念しています。代わりに、既存のFreeBSDサブシステム(Jailフレームワークなど)を使用して、信頼性が高く安全なランタイムコンテナを確保し、ユーザーがインストールした「標準」アプリケーションを他のオペレーティングシステムと同様によく/安定的に実行できるようにします。に焦点を当てました。

関連情報