Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 Oct 2012 02:41:21 +0000 (UTC)
From:      Ryusuke SUZUKI <ryusuke@FreeBSD.org>
To:        doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org
Subject:   svn commit: r39746 - head/ja_JP.eucJP/books/porters-handbook
Message-ID:  <201210140241.q9E2fLQH066806@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ryusuke
Date: Sun Oct 14 02:41:21 2012
New Revision: 39746
URL: http://svn.freebsd.org/changeset/doc/39746

Log:
  - Merge the following from the English version:
  
  	r19593 -> r19736	head/ja_JP.eucJP/books/porters-handbook/book.xml
  
  Submitted by:	Hiroo Ono <hiroo _at_ jp dot FreeBSD dot org>
  References:	[doc-jp-work 1783, 1787]

Modified:
  head/ja_JP.eucJP/books/porters-handbook/book.xml

Modified: head/ja_JP.eucJP/books/porters-handbook/book.xml
==============================================================================
--- head/ja_JP.eucJP/books/porters-handbook/book.xml	Sat Oct 13 18:32:14 2012	(r39745)
+++ head/ja_JP.eucJP/books/porters-handbook/book.xml	Sun Oct 14 02:41:21 2012	(r39746)
@@ -9,7 +9,7 @@
      The FreeBSD Documentation Project
      The FreeBSD Japanese Documentation Project
 
-     Original revision: r19593
+     Original revision: r19736
      $FreeBSD$
 -->
 
@@ -55,6 +55,21 @@
     <releaseinfo>$FreeBSD$</releaseinfo>
   </bookinfo>
 
+  <chapter id="why-port">
+    <title>はじめに</title>
+
+    <para>FreeBSD Ports Collection は、ほとんどの人が FreeBSD
+      でアプリケーション ("ports") をインストールする手段です。
+      FreeBSD に関する他のすべてと同じく、
+      これも基本的にボランティア活動によるものです。
+      この文書を読む際には必ずこのことを念頭においてください。</para>
+
+    <para>FreeBSD では、誰もが新たな port を提出したり、
+      メンテナンスされていない既存の port をメンテナンスできます。
+      そのためには特にソースコードを管理する (commit) 権限は必要ありません。</para>
+
+  </chapter>
+
   <chapter id="own-port">
     <title>自分で port を作成するには</title>
 
@@ -81,6 +96,7 @@
 	一部のものについてだけ述べています。
 	(すべてでは無いかもしれませんが、) ほとんどの変数は
 	<filename>bsd.port.mk</filename> の先頭部分に記述されています。
+	それ以外のものも記述すべきかもしれません。
 	なお、このファイルは非標準のタブ設定を使用しています。
 	<application>Emacs</application> や <application>Vim</application> は、
 	この設定をファイルの読み込み時に認識するはずです。
@@ -94,8 +110,8 @@
     <title>3 分間 porting</title>
 
     <para>このセクションでは、簡単な port の作り方について説明します。
-      多くの場合、これだけでは不充分ですが、
-      まあ うまくいくかどうか試してみて損はないでしょう。</para>
+      多くの場合、これだけでは不十分なので、
+      この文書の続きを読まなければならないでしょう。</para>
 
     <para>まず、元の tar ファイルを
       <makevar>DISTDIR</makevar> に置きます。この変数の
@@ -116,7 +132,7 @@
       <para>最小限の <filename>Makefile</filename> は
 	次のようなものになります。</para>
 
-      <programlisting># New ports collection makefile for:   oneko
+	<programlisting># New ports collection makefile for:   oneko
 # Date created:     5 December 1994
 # Whom:             asami
 #
@@ -554,8 +570,8 @@ lib/X11/oneko/mouse.xpm
 	  行ないませんし、これらが変更されることも想定されていません。
 	  もし展開の方法を変更したいときには
 	  <maketarget>do-extract</maketarget> の変更によって実現し、
-	  絶対に <maketarget>extract</maketarget> には
-	  手を触れないでください。</para>
+	  <maketarget>extract</maketarget>
+	  の動作は絶対に変更しないでください。</para>
       </note>
 
       <para>これで、ユーザが <command>make</command> と
@@ -575,17 +591,26 @@ lib/X11/oneko/mouse.xpm
 	できる限り、<emphasis>主流の</emphasis>ソースを
 	使用するようにしてください。</para>
 
+      <para>もとの tar ファイルがどこにあるかを示すために、変数
+	<makevar>MASTER_SITES</makevar> を設定する必要があります。
+	主なサイトのほとんどについては省略形が
+	<filename>bsd.sites.mk</filename> で定義されています。
+	これらのサイト (と付随する定義)
+	を、ソースコード内で同じ情報が繰り返されるのを避けるために、
+	可能な限り使うようにしてください。
+	これらのサイトは時とともに変わってゆきますので、そうしないと、
+	関係者一同にとってメンテナンスの悪夢になってしまいます。</para>
+
       <para>ネットワークへの接続の良好な FTP/HTTP サイトを
 	見つけることができなかったり、頭にくるような非標準的な形式しか
 	置いていないサイトしか見つけられないときには、
 	自分の管理下にあり信頼できる FTP サーバや HTTP サーバ
-	(たとえば、あなた自身のホームページ) に置くこともできます。
-	あなたが選んだサーバが <makevar>MASTER_SITES</makevar> に
-	正しく反映されていることを確認してください。</para>
+	(たとえば、あなた自身のホームページ) に置くこともできます。</para>
 
       <para>そのような便利かつ信頼のおける置き場所が見つからない場合、
 	我々が <hostid>ftp.FreeBSD.org</hostid> に
-	<quote>置き場所</quote>を提供することもできます。
+	<quote>置き場所</quote>を提供することもできますが、
+	これはなるべく避けたい解決法です。
 	配布ファイルは、誰かの <hostid>freefall</hostid> アカウントの
 	<filename>~/public_distfiles/</filename> に置かれることでしょう。
 	その port をコミットする人に、置いてもらえるように頼んでください。
@@ -595,12 +620,16 @@ lib/X11/oneko/mouse.xpm
 	自分の <hostid>freefall</hostid> ユーザ名を
 	入れておいてくれるでしょう。</para>
 
-      <para>その port の配布ファイルが特に理由もなく
-	しょっちゅう変わる場合には、その配布ファイルを
+      <para>その port の配布ファイルが、
+	作者によるバージョン更新のようなことがなく変更されるなら、
+	その配布ファイルを
 	あなたのホームページに置いて、<makevar>MASTER_SITES</makevar> の
-	最初に指定することも考えてみてください。
-	そうすれば、ユーザが <errorname>checksum mismatch</errorname> エラーに
-	悩まされることもなくなりますし、FreeBSD の FTP サイトの
+	最初に指定することも考えてみてください。できれば、その port
+	の作者にそういうことをしないようにお願いしてみてください。
+	そのためには、何かしらのソースコード管理を行うと役に立つでしょう。
+	あなたが独自のバージョンを置けば、ユーザが
+	<errorname>checksum mismatch</errorname>
+	エラーに悩まされることもなくなりますし、FreeBSD の FTP サイトの
 	保守担当者の負担も減らすこともできます。
 	また、その port にマスターサイトが一つしか存在しない場合には、
 	あなたのサイトにバックアップを置き、
@@ -730,13 +759,15 @@ lib/X11/oneko/mouse.xpm
       <para>もし、その port がビルド、コンフィグレーション、または
 	インストールの際にユーザからの入力を必要とするならば、
 	<filename>Makefile</filename> 中で
-	<makevar>IS_INTERACTIVE</makevar> をセットしてください。
+ 	<makevar>IS_INTERACTIVE</makevar> を設定しなければなりません。
 	これにより、ユーザが環境変数 <envar>BATCH</envar> を
 	セットしている場合には、この port の処理がスキップされるので
 	<quote>夜間の無人ビルド</quote> が実行可能になります。
 	(逆に環境変数 <envar>INTERACTIVE</envar> がセットされていると、
 	ユーザからの入力を必要とする port <emphasis>だけ</emphasis>が
-	コンパイルされます)。</para>
+ 	コンパイルされます)。
+ 	これは、連続して ports をビルドするマシン群で、
+ 	無駄になる時間を大きく減らします。</para>
 
       <para>もし、適切なデフォルト設定が存在するのであれば、
 	<makevar>PACKAGE_BUILDING</makevar> 変数をチェックして、
@@ -897,9 +928,9 @@ lib/X11/oneko/mouse.xpm
 
 	<para>経験的な判断方法としては、ある port にコミットされた変更が
 	  (それが強化や修正によるものであれ、新しい package による
-	  実質的な効能であれ)、アップデートすることにより誰かがどこかで
-	  利益を受けるような何か かどうか自問してみることです。
-
+	  実質的な効能であれ)、アップデートすることにより、
+	  誰もが利益を受けるような何かかどうか、また定期的に ports
+	  ツリーを更新している人に更新を強制するということに値するか自問してみることです。
 	  もし答がイエスであれば、新しい package
 	  が利用可能になった事実を (例えば &man.pkg.version.1; 等の)
 	  自動化ツールが強調することができるように、
@@ -921,9 +952,9 @@ lib/X11/oneko/mouse.xpm
 	  バージョンを増やしてください。
 	  上のセクション 0 で説明したように、
 	  <makevar>PORTEPOCH</makevar> がゼロでない場合には、
-	  それがパッケージ名の後ろにつけられます。
-	  <makevar>PORTEPOCH</makevar> は減らされたり、ゼロに
-	  リセットされることはありません。
+	  それがパッケージ名の後ろにつけられます。絶対に
+	  <makevar>PORTEPOCH</makevar>
+	  を減らしたり、ゼロにリセットしてはいけません。
 	  さもないと、以前に作成された package との比較に失敗する
 	  (つまり、その package が古くなっていることがわからない) ためです:
 	  新しいバージョン番号 (上の例では<literal>1.0,1</literal>) は
@@ -933,6 +964,11 @@ lib/X11/oneko/mouse.xpm
 	  以前の package には明示されていないサフィックス
 	  <literal>,0</literal> よりも新しいことがわかります。</para>
 
+	<para>誤って <makevar>PORTEPOCH</makevar>
+	  を削除したりリセットしたりすると、終わりのない悲劇に見舞われます。
+	  上記の議論を理解できないなら、
+	  わかるまで議論をたどるかメーリングリストで質問してください。</para>
+
 	<para>大多数の ports では、<makevar>PORTEPOCH</makevar> が
 	  必要になることは まず無いものと考えられています。
 	  また、注意深く <makevar>PORTVERSION</makevar> を使用することで、
@@ -987,9 +1023,9 @@ PORTREVISION=   1</programlisting>
 	  実際には <literal>0.1.0</literal> のつもりで
 	  使用していたことがわかります - あらら、今さら遅すぎる)。
 	  新しいマイナーバージョン <literal>2</literal>
-	  は数字として以前のバージョン番号 <literal>10</literal>
-	  より小さいので、強制的に新しい package
-	  の方を<quote>より新しい</quote>と認識させるため
+	  は数字として以前のバージョン番号
+	  <literal>10</literal> より小さいので、
+	  強制的に新しい package <quote>の方が新しい</quote>と認識させるため
 	  <makevar>PORTEPOCH</makevar> を増やす必要があります。
 	  これは新しいベンダーリリースなので、
 	  <makevar>PORTREVISION</makevar> は 0 にリセット
@@ -1021,7 +1057,9 @@ PORTEPOCH=      1</programlisting>
 	    <literal>gtkmumble-0.10_1</literal>
 	    の package をインストールした誰かは
 	    <literal>gtkmumble-0.3</literal> の package
-	    の方が新しいことに気がつかないことになるでしょう。</para>
+	    の方が新しいことに気がつかないことになるでしょう。
+	    これが、そもそも <makevar>PORTEPOCH</makevar>
+	    が導入された肝心な理由です。</para>
 	</note>
 	</sect3>
       </sect2>
@@ -1040,7 +1078,8 @@ PORTEPOCH=      1</programlisting>
 	この時、<link linkend="porting-pkgname">適切な package 名を選ぶための
 	ガイドライン</link>に沿っているかどうかを確認してください。
 	特に、<makevar>PORTVERSION</makevar> 中に
-	ハイフン (<literal>-</literal>) を使用することは禁止されています。
+	ハイフン (<literal>-</literal>)
+	を使用することは<emphasis>禁止</emphasis>されています。
 	また、package 名に
 	<replaceable>language-</replaceable> もしくは
 	<replaceable>-compiled.specifics</replaceable> 部分が
@@ -1054,8 +1093,8 @@ PORTEPOCH=      1</programlisting>
 
 	<para>package の名前は以下のルールにしたがってつけてください。
 	  これは package のディレクトリを見やすくするためで、
-	  無秩序な名前がたくさん並んでいるとユーザが使いづらくなるのではという心配からです
-	  (FTP サイトなどにはたくさん package がありますからね)。</para>
+	  既に何千ものパッケージがありますし、
+	  目を痛めてしまうようだとユーザはそっぽを向くでしょう。</para>
 
 	<para>package の名前は以下のようにしてください。
 	  <filename><replaceable>言語-</replaceable>名前<replaceable>-オプション</replaceable><replaceable>バージョン.番号</replaceable></filename></para>
@@ -1338,18 +1377,34 @@ PORTEPOCH=      1</programlisting>
 	  が、本当に既存のどのカテゴリにも当てはまらない場合には、
 	  新たにカテゴリ名を作成することもできます。
 	  その場合、新しいカテゴリを提案するメールを &a.ports;
-	  宛に送ってください。</para>
+	  宛に送ってください。
+	  しかし、一般的にはあなたが提案したカテゴリにあてはまる ports
+	  が一握りではすまない場合でなければ、
+	  あなたの提案は却下されるでしょう。</para>
+
+	<note><para>時々、カテゴリを 2 階層構造や、
+	  何か他のキーワードを利用した構造に再構成することを提案する人がいます。
+	  今日まで、その提案はどれも実現しませんでした。
+	  なぜなら、その構成を実現することは簡単なのですが、既存の Ports
+	  Collection 全体を構成しなおしたものに合わせて改修する労力は、
+	  控え目にいっても気が遠くなるものだからです。
+	  こういうアイディアを送る前に、
+	  それらの提案の歴史をメーリングリストのアーカイブで調べてください。
+	  さらに、動作するプロトタイプを示せと言われるのに対する準備をしておきましょう。</para></note>
       </sect2>
 
       <sect2 id="porting-categories">
 	<title>現在のカテゴリのリスト</title>
 
-	<para>まず、これが現在の port のカテゴリのリストです。
+	<para>ここに現在の port のカテゴリの一覧を示します。
 	  アスタリスク(<literal>*</literal>)
 	  が付いているものは仮想 (<emphasis>virtual</emphasis>)
 	  カテゴリです &mdash;
-	  これらには対応するサブディレクトリが port ツリーにはありません。</para>
+	  これらには対応するサブディレクトリが
 	<!-- kuriyama - don't use " - - " as literal -->
+	  port ツリーにはありません。
+	  これらは第 2 の補助的なカテゴリとして、
+	  検索目的にしか使われません。</para>
 
 	<note>
 	  <para>仮想カテゴリでないものは、
@@ -1360,11 +1415,12 @@ PORTEPOCH=      1</programlisting>
 	</note>
 
 	<informaltable frame="none">
-	  <tgroup cols="2">
+	  <tgroup cols="3">
 	    <thead>
 	      <row>
 		<entry>カテゴリ</entry>
 		<entry>説明</entry>
+		<entry>Notes</entry>
 	      </row>
 	    </thead>
 
@@ -1372,77 +1428,92 @@ PORTEPOCH=      1</programlisting>
 	      <row>
 		<entry><filename>accessibility*</filename></entry>
 		<entry>障害を持ったユーザの役に立つ ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>afterstep*</filename></entry>
-		<entry>AfterStep ウィンドウマネージャをサポートする ports</entry>
+		<entry><ulink url="http://www.afterstep.org">AfterStep</ulink>;
+		  ウィンドウマネージャをサポートする ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>arabic</filename></entry>
 		<entry>アラビア語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>archivers</filename></entry>
 		<entry>アーカイブ用ツール</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>astro</filename></entry>
 		<entry>天文学関連の ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>audio</filename></entry>
 		<entry>サウンドをサポートする ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>benchmarks</filename></entry>
 		<entry>ベンチマークユーティリティ</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>biology</filename></entry>
 		<entry>生物学関連のソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>cad</filename></entry>
 		<entry>CAD ツール</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>chinese</filename></entry>
 		<entry>中国語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>comms</filename></entry>
-		<entry>通信ソフトウェア。ほとんどはシリアルポート用です。</entry>
+		<entry>通信ソフトウェア</entry>
+		<entry>ほとんどはシリアルポート用のソフトウェア</entry>
 	      </row>
 
 	      <row>
 		<entry><filename>converters</filename></entry>
 		<entry>文字コード変換</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>databases</filename></entry>
 		<entry>データベース</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>deskutils</filename></entry>
-		<entry>コンピュータが発明される以前に机上で使われていた道具
-		  (訳注: いわゆるデスクトップユーティリティのこと)</entry>
+		<entry>コンピュータが発明される以前に机上で使われていた道具</entry>
+		<entry>(訳注: いわゆるデスクトップユーティリティのこと)</entry>
 	      </row>
 
 	      <row>
 		<entry><filename>devel</filename></entry>
-		<entry>開発ユーティリティ。
+		<entry>開発ユーティリティ</entry>
+		<entry>単にライブラリだからというだけで、
 		  どうしてもここに置かなければならない理由があるのでない限り、
 		  ライブラリをここに含めないでください。</entry>
 	      </row>
@@ -1450,25 +1521,28 @@ PORTEPOCH=      1</programlisting>
 	      <row>
 		<entry><filename>dns</filename></entry>
 		<entry>DNS 関連ソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>editors</filename></entry>
-		<entry>一般的なエディタ。
-		  特殊なエディタはそれぞれふさわしいセクションに入れます
-		  (たとえば数式エディタは <filename>math</filename> です)。</entry>
+		<entry>一般的なエディタ</entry>
+		<entry>特殊なエディタはそれぞれふさわしいセクションに入れます
+		  (たとえば数式エディタは
+		  <filename>math</filename> です)。</entry>
 	      </row>
 
 	      <row>
 		<entry><filename>elisp</filename></entry>
 		<entry>Emacs-lisp の ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>emulators</filename></entry>
-		<entry>他のオペレーティングシステムのエミュレータ。
-		  端末エミュレータはここに含まれません &mdash;
-		  X ベースのものは <filename>x11</filename> に、
+		<entry>他のオペレーティングシステム用のエミュレータ</entry>
+		<entry>端末エミュレータはここに<emphasis>含まれません</emphasis>
+		  &mdash; X ベースのものは <filename>x11</filename> に、
 		  テキストベースのものは機能によって
 		  <filename>comms</filename> か
 		  <filename>misc</filename> に分類されます。</entry>
@@ -1477,325 +1551,394 @@ PORTEPOCH=      1</programlisting>
  	      <row>
 		<entry><filename>finance</filename></entry>
 		<entry>金融や財務会計関連のアプリケーション。</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>french</filename></entry>
 		<entry>フランス語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>ftp</filename></entry>
-		<entry>FTP クライアントとサーバユーティリティ。
-		  port が FTP と HTTP の両方をサポートしていれば、
-		  <filename>ftp</filename>
-		  に入れ、第二カテゴリを
+		<entry>FTP クライアントとサーバユーティリティ</entry>
+		<entry>port が FTP と HTTP の両方に対応していれば、
+		  <filename>ftp</filename> に入れ、第 2 カテゴリを
 		  <filename>www</filename> とします。</entry>
 	      </row>
 
 	      <row>
 		<entry><filename>games</filename></entry>
 		<entry>ゲーム</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>german</filename></entry>
 		<entry>ドイツ語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>gnome*</filename></entry>
-		<entry>GNU Object Model Environment (GNOME)
+		<entry><ulink
+		  url="http://www.gnome.org">GNOME</ulink>;
 		  プロジェクトの ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>graphics</filename></entry>
 		<entry>グラフィックユーティリティ</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>haskell*</filename></entry>
 		<entry>Haskell 言語関連のソフトウェア。</entry>
+		<entry></entry>
               </row>
 
 	      <row>
 		<entry><filename>hebrew</filename></entry>
 		<entry>ヘブライ語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
                 <entry><filename>hungarian</filename></entry>
 		<entry>ハンガリー語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>ipv6*</filename></entry>
 		<entry>IPv6 関連のソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>irc</filename></entry>
 		<entry>インターネットリレーチャット (IRC)
 		  用ユーティリティ</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>japanese</filename></entry>
 		<entry>日本語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>java</filename></entry>
 		<entry>Java 言語関連のソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>kde*</filename></entry>
-		<entry>K Desktop Environment (kde) の ports</entry>
+		<entry><ulink url="http://www.kde.org">K Desktop
+		  Environment (kde)</ulink> プロジェクトの
+		  ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>korean</filename></entry>
 		<entry>韓国語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>lang</filename></entry>
 		<entry>プログラミング言語</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>linux*</filename></entry>
 		<entry>Linux アプリケーションとサポートユーティリティ</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>lisp*</filename></entry>
 		<entry>Lisp 言語関連のソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>mail</filename></entry>
 		<entry>メールソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>math</filename></entry>
 		<entry>数値計算ソフトウェアやその他の数学ソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>mbone</filename></entry>
 		<entry>MBone アプリケーション</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>misc</filename></entry>
-		<entry>種々のユーティリティ
-		  &mdash;
-		  基本的に他のカテゴリに属さないものです。
+		<entry>種々のユーティリティ</entry>
+		<entry>基本的に他のカテゴリに属さないものです。
 		  これは他の仮想でないカテゴリを伴わない、唯一のカテゴリです。
 		  <literal>misc</literal> と他のカテゴリが
 		  <makevar>CATEGORIES</makevar> 行に書かれている場合、
 		  <literal>misc</literal>
-		  を削除して他のサブディレクトリにおいて良いという意味になります。</entry>
+		  を削除して他のサブディレクトリにおいて良いという意味になります。
+		  このカテゴリにある ports は見落とされる傾向があるので、
+		  可能であれば、<literal>misc</literal>
+		  ports より適切なカテゴリを選んでください。</entry>
 	      </row>
 
 	      <row>
 		<entry><filename>multimedia</filename></entry>
 		<entry>マルチメディアソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>net</filename></entry>
 		<entry>種々のネットワークソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>news</filename></entry>
 		<entry>USENET ニュースソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>offix*</filename></entry>
-		<entry>OffiX suite の ports</entry>
+		<entry><ulink url="http://leb.net/OffiX/">OffiX</ulink>;
+		  suite の ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>palm</filename></entry>
-		<entry>Palm(tm) シリーズをサポートするソフトウェア</entry>
+		<entry><ulink url="http://www.palm.com/">Palm&trade;</ulink>;
+		  シリーズをサポートするソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>parallel*</filename></entry>
 		<entry>並列計算を行うアプリケーション</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>pear*</filename></entry>
 		<entry>Pear PHP フレームワーク関連の ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>perl5*</filename></entry>
-		<entry>実行に <literal>perl</literal>
+		<entry>実行に <application>Perl</application>
 		  バージョン 5 を必要とする ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>picobsd</filename></entry>
-		<entry>PicoBSD をサポートするための ports</entry>
+		<entry><ulink
+		  url="http://people.FreeBSD.org/~picobsd/">PicoBSD</ulink>;
+		  をサポートするための ports</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>plan9*</filename></entry>
-		<entry>Plan9 に由来するさまざまなソフトウェア</entry>
+		<entry><ulink
+		  url="http://www.cs.bell-labs.com/plan9dist/">Plan9</ulink>;
+		  に由来するさまざまなソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>polish</filename></entry>
 		<entry>ポーランド語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>portuguese</filename></entry>
 		<entry>ポルトガル語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>print</filename></entry>
-		<entry>印刷ソフトウェア。
-		  DTP 用ツール (プレビュアなど) もここに分類されます。</entry>
+		<entry>印刷ソフトウェア</entry>
+		<entry>DTP 用ツール (プレビューアなど)
+		  もここに分類されます。</entry>
 	      </row>
 
 	      <row>
 		<entry><filename>python*</filename></entry>
-		<entry>Python 言語関連のソフトウェア</entry>
+		<entry><ulink url="http://www.python.org/">Python</ulink>;
+		  言語関連のソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>ruby*</filename></entry>
-		<entry>Ruby 言語関連のソフトウェア</entry>
+		<entry><ulink url="http://www.ruby-lang.org/">Ruby</ulink>;
+		  言語関連のソフトウェア</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>russian</filename></entry>
 		<entry>ロシア語サポート</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>science</filename></entry>
 		<entry><filename>astro</filename> や
 		  <filename>biology</filename>,
-		  <filename>math</filename> 等、他のカテゴリには
-		  あてはまらない科学関連の ports</entry>
+		  <filename>math</filename> 等、
+		  他のカテゴリにはあてはまらない科学関連の ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>security</filename></entry>
 		<entry>セキュリティ関連のユーティリティ</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>shells</filename></entry>
 		<entry>コマンドラインシェル</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>sysutils</filename></entry>
 		<entry>システムユーティリティ</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tcl76*</filename></entry>
 		<entry>実行に Tcl バージョン 7.6 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tcl80*</filename></entry>
 		<entry>実行に Tcl バージョン 8.0 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tcl81*</filename></entry>
 		<entry>実行に Tcl バージョン 8.1 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tcl82*</filename></entry>
 		<entry>実行に Tcl バージョン 8.2 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tcl83*</filename></entry>
 		<entry>実行に Tcl バージョン 8.3 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>textproc</filename></entry>
-		<entry>テキスト処理ユーティリティ。
-		  DTP ツールはここではなく、<filename>print</filename>
+		<entry>テキスト処理ユーティリティ</entry>
+		<entry>DTP ツールはここではなく、<filename>print</filename>
 		  に分類されます。</entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tk42*</filename></entry>
 		<entry>実行に Tk バージョン 4.2 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tk80*</filename></entry>
 		<entry>実行に Tk バージョン 8.0 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tk81*</filename></entry>
 		<entry>実行に Tk バージョン 8.1 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tk82*</filename></entry>
 		<entry>実行に Tk バージョン 8.2 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tk83*</filename></entry>
 		<entry>実行に Tk バージョン 8.3 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>tkstep80*</filename></entry>
 		<entry>実行に TkSTEP バージョン 8.0 を必要とする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>ukrainian</filename></entry>
 		<entry>ウクライナ語サポート</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>vietnamese</filename></entry>
 		<entry>ベトナム語サポート</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>windowmaker*</filename></entry>
 		<entry>WindowMaker ウィンドウマネージャをサポートする ports</entry>
+ 		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>www</filename></entry>
-		<entry>World Wide Web 関連のソフトウェア。
-		  HTML 言語サポートもここに分類されます。</entry>
+		<entry>World Wide Web 関連のソフトウェア</entry>
+		<entry>HTML 言語サポートもここに分類されます。</entry>
 	      </row>
 
 	      <row>
-                <entry><filename>x11</filename></entry>
-		<entry>X ウィンドウシステムとその関連ソフトウェア。
-		  このカテゴリは、
+		<entry><filename>x11</filename></entry>
+		<entry>X ウィンドウシステムとその関連ソフトウェア</entry>
+		<entry>このカテゴリは、
 		  直接ウィンドウシステムをサポートするソフトウェアのみを対象とするものです。
 		  通常の X アプリケーションをここに分類しないでください。
+		  ほとんどは他の <filename>x11-*</filename> カテゴリ
+		  (下記参照) に分類されるべきです。
 		  あなたの port が X アプリケーションで、
 		  <makevar>USE_XLIB</makevar> が定義
 		  (<makevar>USE_IMAKE</makevar> を定義すると自動的に定義されます)
@@ -1807,36 +1950,44 @@ PORTEPOCH=      1</programlisting>
 	      <row>
 		<entry><filename>x11-clocks</filename></entry>
 		<entry>X11 用時計</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>x11-fm</filename></entry>
 		<entry>X11 用ファイルマネージャ</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>x11-fonts</filename></entry>
 		<entry>X11 フォントとフォントユーティリティ</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>x11-servers</filename></entry>
 		<entry>X11 サーバ</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>x11-toolkits</filename></entry>
 		<entry>X11 ツールキット</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>x11-wm</filename></entry>
 		<entry>X11 ウィンドウマネージャ</entry>
+		<entry></entry>
 	      </row>
 
 	      <row>
 		<entry><filename>zope*</filename></entry>
-		<entry>Zope サポート</entry>
+		<entry><ulink url="http://www.zope.org/">Zope</ulink>;
+		  サポート</entry>
+		<entry></entry>
 	      </row>
 	    </tbody>
 	  </tgroup>
@@ -1873,9 +2024,8 @@ PORTEPOCH=      1</programlisting>
 	      <filename>news</filename>,
 	      <filename>security</filename>,
 	      <filename>www</filename>
-	      のいずれかに属する場合には
-	      <filename>net</filename>
-	      は必要ありません。</para>
+	      のいずれかに属する場合には <filename>net</filename>
+	      は暗黙のうちに含まれますので、入れるべきではありません。</para>
 	  </listitem>
 
 	  <listitem>
@@ -1905,9 +2055,10 @@ PORTEPOCH=      1</programlisting>
 	  そのことを &man.send-pr.1; する時に書き加えてください。
 	  そうすればインポートする前にそれについて議論できます
 	  (もしあなたがコミッターであれば、
-	  そのことを &a.ports; に送って先に議論するようにしてください
-	  &mdash; 新しい port が間違ったカテゴリにインポートされて、
-	  すぐ移動されることが多いので)。</para>
+	  そのことを &a.ports; に送って先に議論するようにしてください。
+	  新しい port が間違ったカテゴリに import されて、
+	  すぐ移動されることがあまりに多いのです。そうなると、
+	  ソースリポジトリのマスターが不要で好ましくない膨れ方をしてしまいます。</para>
       </sect2>
     </sect1>
 
@@ -1967,7 +2118,8 @@ PORTEPOCH=      1</programlisting>
 	  できれば異なる大陸に存在する複数のサイトを入れておくことが推奨されています。
 	  これにより、広域ネットワークのトラブルに対する耐性を高めることができます。
 	  さらに私たちは、自動的に最も近いマスタサイトを判断して、
-	  そこから取ってくるメカニズムの導入を計画しています。</para>
+	  そこから取ってくるメカニズムの導入を計画しています。
+	  複数のサイトがあれば、この取組を大きく助けることになります。</para>
 
 	<para>元になる tar ファイルが X-contrib や GNU, Perl CPAN
 	  等の有名なアーカイブサイトに置かれている場合には、
@@ -2017,8 +2169,11 @@ EXTRACT_SUFX=  .tgz</programlisting>
 	  どちらも設定されていなければ、<makevar>EXTRACT_SUFX</makevar>
 	  は <literal>.tar.gz</literal> に設定されます。</para>
 
-	<para><makevar>EXTRACT_SUFX</makevar> と
-	  <makevar>DISTFILES</makevar> を両方設定する必要はありません。</para>
+	<note>
+	  <para><makevar>EXTRACT_SUFX</makevar> と
+	    <makevar>DISTFILES</makevar>
+	    を両方設定する必要はありません。</para>
+	</note>
       </sect2>
 
       <sect2>
@@ -2120,6 +2275,10 @@ EXTRACT_ONLY=  source.tar.gz</programlis
 	<title>異なるサイトやサブディレクトリからの複数の配布ファイルまたはパッチ
 	  (<literal>MASTER_SITES:n</literal>)</title>
 
+	<para>(これはいささか<quote>高度な話題</quote>です。
+	  この文書を初めて読む人は、
+	  最初はこの節を飛ばしてもよいでしょう)。</para>
+
 	<para>この節は <literal>MASTER_SITES:n</literal> や
 	  <literal>MASTER_SITES_NN</literal>
 	  と呼ばれる取得方法について説明しています。
@@ -2815,6 +2974,13 @@ PATCHFILES=     patch1:test</programlist
 	お願いします。
 	<!-- smiley --><emphasis remap="tt">:-)</emphasis></para>
 
+      <para><literal>user@hostname.domain</literal>
+	という形式を利用してください。この項目には、
+	あなたの本名などの説明用のテキストは一切いれないでください。
+	(そうしても、ただ <filename>bsd.port.mk</filename>
+	が混乱するだけです)。そういう情報は
+	<filename>pkg-descr</filename> に書いてください。</para>
+
       <para>保守担当者 (maintainer) の責任に関する詳細説明は、
 	<ulink url="../developers-handbook/policies.html#POLICIES-MAINTAINER">
 	Makefile 中の MAINTAINER</ulink> の
@@ -2846,7 +3012,7 @@ PATCHFILES=     patch1:test</programlist
       <para>その port の 1 行の説明です。
 	コメントにはパッケージ名 (やソフトウェアのバージョン)
 	を<emphasis>入れないでください</emphasis>。
-	コメントは大文字で始まり、最後にピリオドは付けないでください。
+	コメントは大文字で始め、最後にピリオドは付けないでください。
 	たとえば、こんな具合です。</para>
 
       <programlisting>COMMENT=       A cat chasing a mouse all over the screen</programlisting>
@@ -3180,7 +3346,10 @@ PATCHFILES=     patch1:test</programlist
 	<para><command>make clean</command> と入力したときには、
 	  その port が依存する port も自動的に clean されます。
 	  そうならないようにしたい場合には、
-	  環境変数 <makevar>NOCLEANDEPENDS</makevar> を設定してください。</para>
+	  環境変数 <makevar>NOCLEANDEPENDS</makevar>
+	  を設定してください。KDE, GNOME や Mozilla
+	  のように、再ビルドするのに時間がかかる port
+	  に依存している場合は特に望ましいかもしれません。</para>
 
 	<para>無条件に他の port に依存させるには、
 	  <makevar>BUILD_DEPENDS</makevar> や
@@ -3249,6 +3418,25 @@ PATCHFILES=     patch1:test</programlist
 	<makevar>WANT_ESOUND</makevar>, <makevar>WANT_IMLIB</makevar>,
 	そして <makevar>WANT_GNOME</makevar> です。</para>
       </sect2>
+
+      <sect2>
+	<title>致命的な依存の循環</title>
+
+	<important>
+	  <para>Ports ツリーに循環する依存性を持ち込まないでください!</para>
+	</important>
+
+	<para>Ports の構築技術は循環依存性を許容していません。
+	  循環依存させてしまうと、たちまちどこかの誰かがインストールしている
+	  FreeBSD を駄目にしてしまい、その数はまたたく間に増えて行きます。
+	  この問題は見付けるのが非常に難しいです。
+	  問題がありそうな場合は、その変更を行う前に
+	  <command>cd /usr/ports; make index</command>
+	  を実行するようにしてください。
+	  この処理は古いマシンではかなり遅いかもしれませんが、
+	  (あなたも含めて)
+	  多くの人がその処理を行って嘆くことにならずに済ませられるでしょう。</para>
+      </sect2>
     </sect1>

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210140241.q9E2fLQH066806>