FreeBSD ポート

From Wikipedia, the free encyclopedia

FreeBSD Ports コレクションは、FreeBSDオペレーティング システムパッケージ管理システムです。2020 年 2 月の時点で、コレクションには38,487 を超えるポート[1]が用意されています。pkgsrcシステムの基礎としてNetBSDにも採用されています。

ソースからのインストール

ポートコレクションは、makeコマンドを使用してソフトウェアをビルドインストール、およびアンインストールできるように、ディレクトリ階層に配置されたMakefileを使用します。アプリケーションをインストールする場合、目的のアプリケーションのポート ディレクトリでmake installmake install clean などの開始コマンドを発行した後は、(もしあれば) ユーザーの介入はほとんど必要ありません。ほとんどの場合、ソフトウェアはインターネットから自動的にダウンロードされ、必要に応じてパッチ構成が適用され、コンパイルされます。、パッケージ データベースにインストールおよび登録されます。新しいポートが他のアプリケーションやライブラリに依存する必要がある場合、これらは事前に自動的にインストールされます。

ほとんどのポートは、ほとんどのユーザーに一般的に適切であると見なされているデフォルト オプションで既に構成されています。ただし、これらの構成オプション (ノブと呼ばれます) は、インストール前にmake configコマンドを使用して変更できる場合があります。これにより、ユーザーが目的のオプションを選択できるテキストベースのインターフェイスが表示されます。

歴史的に、各ポート (またはソフトウェア パッケージ) は、ポートの最新性を確保し、一般的なサポートを提供する責任を負う個々のポート メンテナーによって維持されてきました。現在、多くのポートは特別なタスク フォースまたはサブプロジェクトによって維持されており、それぞれが専用のメーリング リスト([email protected][email protected] など) を持っていますが、維持されていないポートは一般的なグループ ports@ に割り当てられています。 FreeBSD.org. 一般に、お気に入りのソフトウェアをコレクションに寄稿することで、誰でもポート メンテナになることができます。アクティブなメンテナなしで既存のポートを維持することを選択することもできます。[2]

パッケージ

コンパイル済み (バイナリ) ポートは、パッケージと呼ばれます。make packageコマンドを使用して、対応するポートからパッケージを作成できます。ビルド済みのパッケージは、FreeBSD がホストするパッケージ リポジトリからダウンロードすることもできます。ユーザーは、パッケージ名をpkg installコマンドに渡すことで、パッケージをインストールできます。これにより、インストールされている FreeBSD リリースバージョンの適切なパッケージがダウンロードされます。をクリックし、ソフトウェアの依存関係を含め、アプリケーションをインストールします。デフォルトでは、パッケージはメインの FreeBSD パッケージ リポジトリ (pkg.freebsd.org) からダウンロードされますが、パッケージの更新後に問題が発生した場合、リポジトリがサブフォルダーのインデックスを拒否するため、以前のバージョンのパッケージをインストールできません。この場合、ユーザーは OS バージョンを最新リリースにアップグレードし、最新のパッケージをインストールする必要があります。

FreeBSD は、サポートされているすべてのアーキテクチャメジャー リリースのすべてのパッケージがビルドされているpointyhat クラスターと呼ばれるビルド ファームを維持しています。pointyhat クラスターを介してパッケージに組み込まれたすべてのポートのビルドログと既知のエラーは、データベース[3]で入手できます。毎週のビルド ログは、メーリング リストのアーカイブからも入手できます。[4]

これらのコンパイル済みパッケージは、利用可能なアーキテクチャによってカテゴリに分類されています。パッケージはさらにいくつかの「リリース」ディレクトリに分かれており、ポート コレクションからビルドされ、リリースに同梱されている現在の製品リリースごとに 1 つずつあります。これらの製品リリース ディレクトリは更新されません。

いくつかのメジャー リリース ブランチ用の安定した現在ディレクトリもあります。これらはほぼ毎週更新されます。ほとんどの場合、古いバージョンの FreeBSD 用に作成されたパッケージは、新しいシステムに問題なくインストールして使用できます。これは、メジャー リリース間のバイナリ後方互換性がデフォルトで有効になっているためです。

[5]と呼ばれるバイナリ パッケージのパッケージング システムは、FreeBSD 10pkgのパッケージ管理システムに取って代わりました。[6]

歴史

Jordan Hubbard は、 1994 年 8 月 21 日に、移植用のmakeマクロをFreeBSD CVS リポジトリにコミットしました。[8]コアポートのフレームワークは、数年間、サトシ アサミと共にハバードによって最初に維持されました。その後、このタスクを処理するためにポート管理チームが編成されました。

NetBSD の pkgsrcOpenBSD のポート コレクションは、そのルーツを FreeBSD にまでさかのぼります。

Dポート

そのリリース以来、3.6 DragonFly BSDプロジェクトは、独自のDPortsポート コレクションのベースとして FreeBSD ポートを使用しています。DragonFly BSD プロジェクトの John Marino がDeltaPorts リポジトリを作成しました。これは、DPort を生成するために、FreeBSD ポートをオーバーレイおよび変更するパッチとファイルのコレクションです。[9] [10]

も参照

参考文献

  1. ^ 「FreeBSD ポートについて」 . freebsd.org 。2019年12月8日閲覧
  2. ^ 「ポーターのハンドブック」 . FreeBSD プロジェクト。
  3. ^ "FreeBSD パッケージ構築ログとエラー (pointyhat クラスタ)" . freebsd.org 2010 年3 月 26 日閲覧
  4. ^ "FreeBSD メーリング リスト: freebsd-pkg-fallout の購読" .
  5. ^ "第 4 章 アプリケーションのインストール: パッケージとポート | FreeBSD ドキュメンテーション ポータル" .
  6. ^ "FreeBSD 10.0-RELEASE リリース ノート | FreeBSD プロジェクト" .
  7. ^ "ports/Mk/bsd.port.mk の CVS ログ" . FreeBSD プロジェクト。2013 年 4 月 15 日にオリジナルからアーカイブされました2020年1月5日閲覧{{cite web}}: CS1 maint: unfit URL (link)
  8. ^ "src/usr.sbin/pkg_install/Makefile の CVS ログ" . FreeBSD プロジェクト。2013 年 4 月 14 日にオリジナルからアーカイブされました2018 年5 月 26 日閲覧
  9. ^ シェリル、​​ジャスティン (2013 年 1 月 12 日). 「初期の DPorts 教育」 . ドラゴンフライ BSD ダイジェスト. 2014 年 2 月 28 日にオリジナルからアーカイブされました2014 年4 月 12 日閲覧
  10. ^ マリノ、ジョン. 「デルタポート」GitHub . 2014 年4 月 12 日閲覧

外部リンク