5.3. カテゴリ分類

5.3.1. CATEGORIES

パッケージが作成されると /usr/ports/packages/All に置かれ、一つ以上の /usr/ports/packages のサブディレクトリからリンクが張られます。 これらのサブディレクトリの名称は、CATEGORIES 変数で指定されます。これは、ユーザが FTP サイトや CDROM のパッケージの山から探し出すのを容易にするためのものです。 既存のカテゴリを参照して、 あなたの port にふさわしいものを選んでください。

また、このリストは、その port が ports ツリーのどこにインポートされるかも決定します。 ここに複数のカテゴリを指定すると、port のファイルは最初のカテゴリ名のサブディレクトリに置かれることになります。 適切なカテゴリの選択方法についてはカテゴリ節をご覧ください。

あなたが作成した port が、本当に既存のどのカテゴリにも当てはまらない場合には、 新たにカテゴリ名を作成することもできます。 その場合、新しいカテゴリを提案するメールを FreeBSD ports メーリングリスト 宛に送ってください。 しかし、一般的にはあなたが提案したカテゴリにあてはまる ports が一握りではすまない場合でなければ、 あなたの提案は却下されるでしょう。

注記:

時々、カテゴリを 2 階層構造や、 何か他のキーワードを利用した構造に再構成することを提案する人がいます。 今日まで、その提案はどれも実現しませんでした。 なぜなら、その構成を実現することは簡単なのですが、既存の Ports Collection 全体を構成しなおしたものに合わせて改修する労力は、 控え目にいっても気が遠くなるものだからです。 こういうアイディアを送る前に、 それらの提案の歴史をメーリングリストのアーカイブで調べてください。 さらに、動作するプロトタイプを示せと言われるのに対する準備をしておきましょう。

5.3.2. 現在のカテゴリのリスト

ここに現在の port のカテゴリの一覧を示します。 アスタリスク(*) が付いているものは仮想 (virtual) カテゴリです — これらには対応するサブディレクトリが port ツリーにはありません。 これらは第 2 の補助的なカテゴリとして、 検索目的にしか使われません。

注記:

仮想カテゴリでないものは、 そのサブディレクトリ内の pkg/COMMENT に一行の記述があります (例: archivers/pkg/COMMENT)。

カテゴリ説明Notes
accessibility障害を持ったユーザの役に立つ ports 
afterstep*AfterStep ウィンドウマネージャをサポートする ports 
arabicアラビア語サポート 
archiversアーカイブ用ツール 
astro天文学関連の ports 
audioサウンドをサポートする ports 
benchmarksベンチマークユーティリティ 
biology生物学関連のソフトウェア 
cadCAD ツール 
chinese中国語サポート 
comms通信ソフトウェアほとんどはシリアルポート用のソフトウェア
converters文字コード変換 
databasesデータベース 
deskutilsコンピュータが発明される以前に机上で使われていた道具(訳注: いわゆるデスクトップユーティリティのこと)
devel開発ユーティリティ単にライブラリだからというだけで、 どうしてもここに置かなければならない理由があるのでない限り、 ライブラリをここに含めないでください。
dnsDNS 関連ソフトウェア 
editors一般的なエディタ特殊なエディタはそれぞれふさわしいセクションに入れます (たとえば数式エディタは math です)。
elispEmacs-lisp の ports 
emulators他のオペレーティングシステム用のエミュレータ端末エミュレータはここに含まれません — X ベースのものは x11 に、 テキストベースのものは機能によって commsmisc に分類されます。
finance金融や財務会計関連のアプリケーション。 
frenchフランス語サポート 
ftpFTP クライアントとサーバユーティリティport が FTP と HTTP の両方に対応していれば、 ftp に入れ、第 2 カテゴリを www とします。
gamesゲーム 
germanドイツ語サポート 
gnome*GNOME プロジェクトの ports 
graphicsグラフィックユーティリティ 
haskell*Haskell 言語関連のソフトウェア。 
hebrewヘブライ語サポート 
hungarianハンガリー語サポート 
ipv6*IPv6 関連のソフトウェア 
ircインターネットリレーチャット (IRC) 用ユーティリティ 
japanese日本語サポート 
javaJava 言語関連のソフトウェア 
kde*K Desktop Environment (kde) プロジェクトの ports 
korean韓国語サポート 
langプログラミング言語 
linux*Linux アプリケーションとサポートユーティリティ 
lisp*Lisp 言語関連のソフトウェア 
mailメールソフトウェア 
math数値計算ソフトウェアやその他の数学ソフトウェア 
mboneMBone アプリケーション 
misc種々のユーティリティ基本的に他のカテゴリに属さないものです。 これは他の仮想でないカテゴリを伴わない、唯一のカテゴリです。 misc と他のカテゴリが CATEGORIES 行に書かれている場合、 misc を削除して他のサブディレクトリにおいて良いという意味になります。 このカテゴリに置かれた ports は見落とされやすいので、 可能な限り misc よりふさわしいカテゴリを探してください。
multimediaマルチメディアソフトウェア 
net種々のネットワークソフトウェア 
net-mgmtネットワーク管理ソフトウェア 
newsUSENET ニュースソフトウェア 
offix*OffiX suite の ports 
palmPalm™ シリーズをサポートするソフトウェア 
parallel*並列計算を行うアプリケーション 
pear*Pear PHP フレームワーク関連の ports 
perl5*実行に Perl バージョン 5 を必要とする ports 
picobsdPicoBSD をサポートするための ports 
plan9*Plan9 に由来するさまざまなソフトウェア 
polishポーランド語サポート 
portugueseポルトガル語サポート 
print印刷ソフトウェアDTP 用ツール (プレビューアなど) もここに分類されます。
python*Python 言語関連のソフトウェア 
ruby*Ruby 言語関連のソフトウェア 
russianロシア語サポート 
scienceastrobiology, math 等、 他のカテゴリにはあてはまらない科学関連の ports 
securityセキュリティ関連のユーティリティ 
shellsコマンドラインシェル 
sysutilsシステムユーティリティ 
tcl76*実行に Tcl バージョン 7.6 を必要とする ports 
tcl80*実行に Tcl バージョン 8.0 を必要とする ports 
tcl81*実行に Tcl バージョン 8.1 を必要とする ports 
tcl82*実行に Tcl バージョン 8.2 を必要とする ports 
tcl83*実行に Tcl バージョン 8.3 を必要とする ports 
textprocテキスト処理ユーティリティDTP ツールはここではなく、print に分類されます。
tk42*実行に Tk バージョン 4.2 を必要とする ports 
tk80*実行に Tk バージョン 8.0 を必要とする ports 
tk81*実行に Tk バージョン 8.1 を必要とする ports 
tk82*実行に Tk バージョン 8.2 を必要とする ports 
tk83*実行に Tk バージョン 8.3 を必要とする ports 
tkstep80*実行に TkSTEP バージョン 8.0 を必要とする ports 
ukrainianウクライナ語サポート 
vietnameseベトナム語サポート 
windowmaker*WindowMaker ウィンドウマネージャをサポートする ports 
wwwWorld Wide Web 関連のソフトウェアHTML 言語サポートもここに分類されます。
x11X ウィンドウシステムとその関連ソフトウェアこのカテゴリは、 直接ウィンドウシステムをサポートするソフトウェアのみを対象とするものです。 通常の X アプリケーションをここに分類しないでください。 ほとんどは他の x11-* カテゴリ (下記参照) に分類されるべきです。 あなたの port が X アプリケーションで、 USE_XLIB を定義し (USE_IMAKE を定義すると自動的に定義されます)、 適切なカテゴリに分類してください。
x11-clocksX11 用時計 
x11-fmX11 用ファイルマネージャ 
x11-fontsX11 フォントとフォントユーティリティ 
x11-serversX11 サーバ 
x11-toolkitsX11 ツールキット 
x11-wmX11 ウィンドウマネージャ 
zope*Zope サポート 

5.3.3. 適切なカテゴリの選択

多くのカテゴリに重なるので、 どれを第一カテゴリにするかを決めなければならないことがたびたびあるでしょう。 これをうまく決めるルールがいくつかあります。 以下はその優先順のリストで、優先度の高いものから低いものの順に書いてあります。

  • 言語特有のカテゴリがまず最初です。 たとえば日本語の X11 のフォントをインストールする port の場合、 CATEGORIES 行は japanese x11-fonts となるでしょう。

  • より特徴的なカテゴリが、 一般的なカテゴリより優先されます。 たとえば、HTML エディタの場合は www editors となります。 これを逆順にはしないでください。 また、 port が irc, mail, mbone, news, security, www のいずれかに属する場合には net は暗黙のうちに含まれますので、入れるべきではありません。

  • x11 を第二カテゴリにするのは第一カテゴリが自然言語の場合のみにしてください。 特に X のアプリケーションには x11 を指定しないでください。

  • Emacs のモードは、 そのモードで対応しているアプリケーションと同じ ports カテゴリに置くようにして、 editors には置かないでください。 例えば、あるプログラミング言語のソースファイルを編集するための Emacs モードは、 lang に置くべきです。

  • もし、あなたの port が他のどのカテゴリにも属しない場合には misc にしてください。

もし、あなたがカテゴリについて自信が持てない場合には、 そのことを send-pr(1) する時に書き加えてください。 そうすればインポートする前にそれについて議論できます (もしあなたがコミッターであれば、 そのことを FreeBSD ports メーリングリスト に送って先に議論するようにしてください。 新しい port が間違ったカテゴリに import されて、 すぐ移動されることがあまりに多いのです。そうなると、 ソースリポジトリのマスターが不要で好ましくない膨れ方をしてしまいます。

本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。

FreeBSD に関する質問がある場合には、 ドキュメント を読んだ上で <questions@FreeBSD.org> まで (英語で) 連絡してください。

本文書に関する質問については、 <doc@FreeBSD.org> まで電子メールを (英語で) 送ってください。