package にするしないに関わらず、どのような port でも 2 つの記述ファイルが必要です。それは pkg-descr と pkg-plist です。ファイル名が pkg- で始まっていることで 他のファイルと区別できるようになっています。
このファイルには、その port についての少し長い説明を書きます。 その port が何をするのかについての、 数段落程度の簡潔な解説があれば充分です。
注意: これはマニュアルでもなければ、使用方法やコンパイル方法に ついての細かい説明書でもありません。 README ファイルや マニュアルを引用するつもりなら注意が必要です。 これらは多くの場合、その port の簡潔な説明になっていなかったり、 扱いにくい形式になっていたりします。 (マニュアルの場合、行を揃えるために空白が調整されていたりします。) このソフトウェアに公式のウェブサイトがあるのなら、 ここに書いてください。その際自動化ツールが正しく動作するように、 ウェブサイトのうちの一つには、 先頭に WWW: をつけておいてください。
このファイルの最後に、あなたの名前を書くことが推奨されています。 たとえば、こんな具合です。
This is a port of oneko, in which a cat chases a poor mouse all over the screen. : (うんぬん。) WWW: http://www.oneko.org/ - Satoshi asami@cs.berkeley.edu
このファイルには、その port によってインストールされる すべてのファイルを列挙します。 このファイルは package を作る際のリストとして使われるため、 ``パッキングリスト (packing list)'' とも呼ばれます。 ここに書くパス名は、インストール時のプレフィックス (通常 /usr/local または /usr/X11R6) からの相対パスです。 MANn 変数を 使用している場合 (使用することが推奨されています)、このリストに マニュアルは入れないようにしてください。
簡単な例を載せておきましょう。
bin/oneko lib/X11/app-defaults/Oneko lib/X11/oneko/cat1.xpm lib/X11/oneko/cat2.xpm lib/X11/oneko/mouse.xpm @dirrm lib/X11/oneko
パッキングリストの詳細については、 pkg_create(1) のマニュアルを参照してください。
注意: このリストには、すべてのファイルを列挙しなければ なりませんが、ディレクトリそのものは列挙する必要がありません。 また、この port がインストール時に独自のディレクトリを 作成する場合には、この port が削除されるときに そのディレクトリも削除されるよう、@dirrm の行を 追加しておくのを忘れないでください。
このファイルでは、すべてのファイル名を アルファベット順にソートしておくことを推奨します。 そうすることで、port を更新する際の 変更点の確認が楽になります。
パッキングリストを手作業で作成するのは、 時にとても退屈な作業になります。 その port が非常に多数のファイルをインストールするとしたら、 パッキングリストの 自動生成を行なえば、時間の節約になるかもしれません。