FreeBSD Portsコレクションは、FreeBSDオペレーティングシステム用のパッケージ管理システムです。2020年2月現在、コレクションには38,487以上のポート[1]が含まれています。また、 NetBSDのpkgsrcシステムの基盤としても採用されています。
ソースからのインストール
Ports Collection はディレクトリ階層に配置されたMakefile を使用するため、makeコマンドを使用してソフトウェアをビルド、インストール、アンインストールできます。アプリケーションをインストールする場合、目的のアプリケーションの Ports ディレクトリでmake installやmake install cleanなどの開始コマンドを発行した後は、ユーザーの介入はほとんど必要ありません (必要ない場合もあり)。ほとんどの場合、ソフトウェアはインターネットから自動的にダウンロードされ、必要に応じてパッチが適用され、構成され、コンパイルされ、インストールされてパッケージ データベースに登録されます。新しい port が他のアプリケーションやライブラリに依存している場合は、事前に自動的にインストールされます。
ほとんどのポートは、ほとんどのユーザーにとって一般的に適切であるとみなされるデフォルト オプションで既に設定されています。ただし、これらの設定オプション (ノブと呼ばれる) は、インストール前にmake configコマンドを使用して変更できる場合があります。このコマンドは、テキスト ベースのインターフェイスを表示し、ユーザーが希望するオプションを選択できるようにします。
歴史的に、各ポート (またはソフトウェア パッケージ) は、ポートの最新性を確保し、一般的なサポートを提供する責任を持つ個別のポート メンテナーによって保守されてきました。今日では、多くのポートが特別なタスク フォースまたはサブ プロジェクトによって保守されており、それぞれに専用のメーリング リスト(例: kde@FreeBSD.org、java@FreeBSD.org など) があり、保守されていないポートは汎用グループ ports@FreeBSD.org に割り当てられています。一般に、お気に入りのソフトウェアをコレクションに提供することで、誰でもポート メンテナーになることができます。また、アクティブなメンテナーがいない既存のポートを保守することもできます。[2]
パッケージ
コンパイル済み (バイナリ) の ports はパッケージと呼ばれます。パッケージは、対応する port からmake packageコマンドで作成できます。また、FreeBSD がホストするパッケージ リポジトリからダウンロードできるビルド済みのパッケージもあります。ユーザーは、パッケージ名をpkg installコマンドに渡すことでパッケージをインストールできます。このコマンドは、インストールされている FreeBSD リリースバージョンに適したパッケージをダウンロードし、次に、アプリケーションとその依存関係 (ソフトウェアの依存関係を含む) をインストールします。デフォルトでは、パッケージはメインの FreeBSD パッケージ リポジトリ (pkg.freebsd.org) からダウンロードされますが、パッケージの更新後に問題が発生した場合、リポジトリがサブフォルダのインデックスを拒否するため、以前のバージョンのパッケージをインストールできません。この場合、ユーザーは OS のバージョンを最新リリースにアップグレードし、最新のパッケージをインストールする必要があります。
FreeBSD は、サポートされているすべてのアーキテクチャとメジャーリリースのすべてのパッケージがビルドされるpointyhat クラスターと呼ばれるビルドファームを維持しています。pointyhatクラスターを通じてパッケージに組み込まれたすべてのポートのビルドログと既知のエラーは、データベース[3]で利用可能であり、毎週のビルドログもメーリングリストアーカイブを通じて利用可能です。[4]
これらのプリコンパイルされたパッケージは、利用可能なアーキテクチャごとにカテゴリに分けられています。パッケージはさらに、Ports Collection から構築され、リリースとともに出荷される現在の製品リリースごとに 1 つずつ、複数の「リリース」ディレクトリに分けられています。これらの製品リリース ディレクトリは更新されることはありません。
いくつかのメジャー リリース ブランチには、安定版および最新版のディレクトリもあります。これらは、ほぼ毎週更新されます。メジャー リリース間のバイナリ下位互換性がデフォルトで有効になっているため、ほとんどの場合、古いバージョンの FreeBSD 用に作成されたパッケージは、新しいシステムに問題なくインストールして使用できます。
FreeBSD 10では、バイナリパッケージ用のパッケージングシステム[5]がpkgパッケージ管理システムに取って代わりました。[6]
歴史
Jordan Hubbard は、1994 年 8 月 21 日に、自身のport make マクロをFreeBSD CVS リポジトリにコミットしました。 [7]彼のパッケージ インストール スイートMakefile は、その 1 年前 (1993 年 8 月 26 日) にコミットされていました。[8]コアの ports フレームワークは、当初 Hubbard と Satoshi Asami によって数年間保守されていました。その後、このタスクを処理するために Ports Management Team が結成されました。
NetBSD の pkgsrcとOpenBSD の ports コレクションのルーツは FreeBSD にあります。
Dポート
3.6 のリリース以来、DragonFly BSDプロジェクトは FreeBSD Ports を独自のDPortsポート コレクションのベースとして使用しています。DragonFly BSD プロジェクトの John Marino は、DeltaPorts リポジトリを作成しました。これは、FreeBSD Ports をオーバーレイして変更し、DPorts を生成するためのパッチとファイルのコレクションです。[9] [10]
参照
参考文献
- ^ 「FreeBSD ポートについて」。freebsd.org。2019年12 月 8 日閲覧。
- ^ 「Porter's Handbook」。FreeBSD プロジェクト。
- ^ 「FreeBSD パッケージ構築ログとエラー (pointyhat クラスター)」. freebsd.org . 2010 年3 月 26 日閲覧。[永久リンク切れ]
- ^ 「FreeBSD メーリング リスト: freebsd-pkg-fallout の購読」。
- ^ 「第 4 章 アプリケーションのインストール: パッケージとポート | FreeBSD ドキュメント ポータル」。
- ^ 「FreeBSD 10.0-RELEASE リリースノート | FreeBSD プロジェクト」。
- ^ 「ports/Mk/bsd.port.mk の CVS ログ」。FreeBSD プロジェクト。2013 年 4 月 15 日時点のオリジナルよりアーカイブ。2020 年1 月 5 日閲覧。
{{cite web}}: CS1 メンテナンス: 不適切 URL (リンク) - ^ 「CVS log for src/usr.sbin/pkg_install/Makefile」。FreeBSD プロジェクト。2013 年 4 月 14 日時点のオリジナルよりアーカイブ。2018 年5 月 26 日閲覧。
- ^ Sherrill, Justin (2013 年 1 月 12 日)。「An early DPorts education」。DragonFly BSD Digest。2014年 2 月 28 日時点のオリジナルよりアーカイブ。2014年4 月 12 日閲覧。
- ^ Marino, John. 「DeltaPorts」. GitHub . 2014 年4 月 12 日閲覧。
外部リンク
- 公式 FreeBSD ポート ウェブ ページ
- FreshPorts - ポートの更新を追跡するウェブサイト
- Port-Tags は 2014 年 1 月 10 日にWayback Machineにアーカイブされました- ポート コレクションにタグを追加するプロジェクト
- アプリケーションのインストール: FreeBSD ハンドブックのパッケージとポート (第 4 章)
