[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Packages.txt: 1.70 -> 1.82



In message <200509101044.TAA41691@shell.rim.or.jp>
  yyamano@jp.netbsd.org writes:
> がんがん、やっちゃってください。

がんがんやる気力がないので、ちまちま進めます。
Packages.txt: 1.70 -> 1.82 です。

対応する原文の差分は
  http://cvsweb.NetBSD.org/bsdweb.cgi/pkgsrc/Attic/Packages.txt.diff?r1=1.70&r2=1.82
です。

査読等の便のため、改行位置の調整はしていません。
(調整したうえでcommitします)

原文の変更の反映のほか、typoとおぼしきものを修正しています。

--- Packages.txt.ja.1.70	Thu Oct 11 22:06:06 2001
+++ Packages.txt.ja.1.82	Sun Sep 11 22:10:44 2005
@@ -1,4 +1,4 @@
-# $NetBSD: Packages.txt,v 1.70 1999/10/31 19:45:15 rh Exp $
+# $NetBSD: Packages.txt,v 1.82 2000/02/10 22:39:34 abs Exp $
 # $Id: Packages.txt,v 1.10 2001/10/11 09:10:41 yyamano Exp $
 ###########################################################################
 
@@ -59,7 +59,7 @@
 
  * NetBSDパッケージシステム:
    これは、NetBSDオペレーティングシステムの一部分で、パッケージの構築(コン
-   パイル)、インストールおよび削除を扱います。
+   パイル)、インストール、および削除を扱います。
 
  * Distfile:
    この用語は、自由に利用できるソフトウェアの作者が、彼の仕事を配布するため
@@ -87,7 +87,7 @@
    対応するパッケージが、Distfileにあるファイルから作成した、インストールさ
    れるべきソフトウェアのひとまとまりです。
 
- * RCS ID:
+ * NetBSD RCS ID:
    パッケージに含まれるいくつかのファイルは、そのファイルのバージョンに対応
    したRCS IDが含まれています(cvsにより自動的に挿入されます)。これらのIDは、
    このドキュメントの中のいくつかの例で使用されていますが、このドキュメント
@@ -124,8 +124,8 @@
 正確なディレクトリーは、CDROMのドキュメンテーションを参照してください。
 
 
- 1.2 方法
- ========
+ 1.2 使用方法
+ ============
 
 もし、コンパイル済みのパッケージのファイルがCDROM上にある、あるいはハードディ
 スク上にダウンロードされているのであれば、以下のコマンドでインストールする
@@ -136,10 +136,12 @@
 もし、FTPアクセスが可能で、インストール前にFTPを使ってパッケージをダウンロー
 ドしたくないのであれば、pkg_addにftpのURLを指定する事もできます。
 
-	pkg_add ftp://ftp.netbsd.org/pub/packages/`sysctl -n hw.machine_arch`/All/package.tgz
+	pkg_add ftp://ftp.netbsd.org/pub/NetBSD/packages/<OS Ver>/<arch>/All/package.tgz
+
+ここで <OS Ver> や <arch> がよくわからない場合は、sysctlユーティリティーを
+"sysctl kern.osrelease hw.machine_arch"のように使って調べられます。
 
-バイナリー・ファイルの正しいセットを自動的に決定するために、ここでsysctlが
-使用されている事に注意してください。また、パッケージを実行するために必要な
+また、パッケージを実行するためにあらかじめ必要な
 他のパッケージがインストールされるかもしれない事にも注意してください。一緒
 にインストールされる他のパッケージも同じ場所に存在していると仮定されます。
 
@@ -191,6 +193,8 @@
 ることができます。/usr/pkgsrc/mk/mk.conf.exampleの例を参照してください。こ
 れにより、帯域幅と時間が節約できるかもしれません。
 
+上書きするサイトを選んだら、その設定を/etc/mk.confに書いておいてください。
+
 もし、インターネットへ常時接続しておらず、ダウンロードするファイルを知りた
 い場合は、「make fetch-list」を実行すれば、必要なファイルがわかります。それ
 らの配布ファイルを/usr/pkgsrc/distfilesに置いてください。
@@ -211,7 +215,7 @@
 とシェル・プロンプト上でタイプしてください。これにより、さまざまなコンポー
 ネントが適切な場所にインストールされます。
 
-topシステム・ユーティリティーを例にあげると、A.1のように構築することにより、
+topシステム・ユーティリティーを例にあげると、付録A.1のように構築することにより、
 システムにインストールすることができます。
 
 プログラムはパッケージ・ツリーのデフォルト・ルート- /usr/pkgにインストール
@@ -239,6 +243,8 @@
 いくつかのパッケージは、構築時にいくつかのコンフィギュレーションオプション
 を変えるために/etc/mk.confを参照します。設定可能な項目については、
 /usr/pkgsrc/mk/mk.conf.exampleをのぞいてみてください。
+LOCALBASEやX11BASEといった環境変数は、pkgsrc使用時に毎回使えるように
+/etc/mk.confで設定しておくこともできます。
 
 
  3 コンパイル済みのパッケージを作る
@@ -313,12 +319,13 @@
 現在CATEGORIESの値として以下が使用できます。もし一つ以上にまたがる場合、そ
 れらの値はスペースで分けられる必要があります:
 
-	archivers   corba      games     meta-pkgs  security
-	audio       cross      graphics  misc       shells
-	benchmarks  databases  lang      net        sysutils
-	cad         devel      mail      news       textproc
-	comms       editors    math      plan9      www
-	converters  emulators  mbone     print      x11
+	archivers   corba      graphics  meta-pkgs  print      
+	audio       cross      ham	 misc       security
+	benchmarks  databases  japanese  net        shells
+	biology     devel      lang      news       sysutils 
+	cad         editors    mail      parallel   textproc
+	comms       emulators  math      pkgtools   www
+	converters  games      mbone     plan9      x11
 
 全ての利用できるオプション、および変数の記述に関しては、NetBSD packages(7)
 マニュアルページを参照してください。
@@ -372,24 +379,23 @@
  4.2 files/*
  =========== 
 
-最も重要なことは、このディレクトリーには、パッケージのコンパイルに必要なす
-べてのdistfileのmd5チェックサム(必須)が含まれているということです。このファ
-イル- files/md5 - は、インターネットから取得したdistfileが悪意によりセキュ
-リティーホールを入れられたファイルに変更されていたり、転送中にファイルが壊
-れたりしていないことを確認するために、配布ファイルのmd5チェックサムを含んで
-います。このファイルは、NetBSDパッケージを作成するために使われたオリジナル
-配布ファイルやパッチなどのmd5チェックサムを含んでいます。これはmd5(1)コマン
-ドを使うか、"make makesum"により生成することができます。
-
-filesディレクトリーにはまた、そのパッケージのpatches/ディレクトリー(セクショ
-ン4.3参照)に入っている、公式なすべてのパッチのチェックサムファイルも入って
-います。このチェックサムファイルはpatch-sumといい、パッチ中のNetBSD RCS Id
-を除いたすべての行のMD5チェックサムが含まれています。このファイルは"make
-makepatchsum"コマンドにより生成することができます。
+ * files/md5:
+   最も重要で必須な、パッケージのコンパイルに必要なすべてのdistfileのmd5チェックサムです。
+   元のファイルやこれに対するパッチすべてに対して、このチェックサムと一致することを確認しています。
+   これをもとに、インターネットから取得したdistfileが転送中にファイルが壊れたり、
+   悪意によりセキュリティーホールを入れられたファイルに変更されていたりしていないことを確認します。
+   これはmd5(1)コマンドを使うか、"make makesum"により生成することができます。
+
+ * files/patch-sum:
+   そのパッケージのpatches/ディレクトリー(セクション4.3参照)に入っている、
+   公式なすべてのパッチのチェックサムファイルです。
+   このチェックサムファイルには、パッチ中のNetBSD RCS Id
+   を除いたすべての行のMD5チェックサムが含まれています。このファイルは"make
+   makepatchsum"コマンドにより生成することができます。
 
 また、もしあなたがコンフィギュレーションまたは構築するより前に、パッケージ
 中に何かファイルを置きたいならば、それらのファイルをfilesディレクトリーに置
-くことができますし、pre-configureターゲットで、cpコマンドによりコピーするこ
+くことができますし、pre-configureターゲットで、${CP}コマンドによりコピーするこ
 とができます。あるいは、/dev/nullに対するそのファイルの単純なdiffをとり、パッ
 チメカニズムを使用して、そのファイルを生成することもできます。
 
@@ -403,7 +409,7 @@
 順(シェルによる"patches/patch-*"展開順)で適用されます。つまりpatch-aaは
 patch-abより前に適用されます。
 
-patch-??ファイルはdiff -uフォーマットであるべきです。これは、FreeBSD Ports
+patch-??ファイルはdiff -buフォーマットであるべきです。これは、FreeBSD Ports
 のtsarがcontext diffよりもこの形式の方が読みやすいことを見つけたからです。
 ですから、もしあなたが同じ流儀でdiffを作れば、あなたのNetBSDパッケージは、
 FreeBSD Portsシステムの一部として受け入れられるチャンスが多くなります。
@@ -468,7 +474,7 @@
    ldconfigを持っていないので、NetBSDはldconfigをよぶかどうかを自動的に判断
    します。
  - 不足している@dirrmステートメントの追加
- - パッケージのMakefileの中のMAN定義
+ - パッケージのMakefileの中のMAN定義をすべて削除
 
 また、port2pkgパッケージを調べてみてください(pkgsrc/pkgtools/port2pkg)。こ
 のパッケージは、あなたのかわりにさまざまな退屈な作業をおこなってくれます。
@@ -516,6 +522,12 @@
   pre-install        post-install
   pre-package        post-package
 
+なお、Makefile内で、scripts/[pre|post]-*にマッチするスクリプトを実行する
+ようなpre-*ターゲットやpost-*ターゲットを定義しては *いけません* 。
+bsd.pkg.mkは、Makefileに存在する各ターゲットの実行後、
+scripts/*を探してそれをsh(1)を使って実行します。このようなスクリプトを
+Makefileから実行すると、スクリプトを二重に実行することになってしまいます。
+
 構築プロセスについてはセクション7を参照してください。
 
 
@@ -543,7 +555,7 @@
 FreeBSDポートから派生したパッケージは、「FREEBSD」のベンダータグと
 「FreeBSD-current-YYYY-MM-DD」のリリースタグ(YYYY-MM-DDはFreeBSDのツリーか
 らポートのスナップショットをとってきた日付)でインポートします。そして、通常
-のCVSのオペレーションにより必要は変更をおこなってください。例えば:
+のCVSのオペレーションにより必要な変更をおこなってください。例えば:
 
 	cvs import pkgsrc/<category>/mumbler FREEBSD FreeBSD-current-1998-04-01
 	cvs rm patches/patch-a
@@ -566,7 +578,7 @@
  5.1 その他色々
  ==============
 
- * RCS Id :
+ * NetBSD RCS Id :
    あなたが書いたすべてのPLISTファイルの先頭行にRCS IDが追加されていること
    を確認してください。
 
@@ -782,10 +794,13 @@
    ただし、ELFのsymlinkは追加しないでください。これは自動的に作成されます。
 
 すでにlibtoolをサポートしているGNUパッケージのための注意
-USE_LIBTOOL=yesをパッケージのMakefileに追加してください。パッケージに含まれ
-ているlibtoolをチェックしない、または構成しないように、configureスクリプト
-を修正する必要があるでしょう。パッケージのlibtoolを回避する簡単な例は、
-libwwwパッケージ、patch-abを参考にしてください。
+パッケージのlibtoolを簡単に回避する方法として、USE_LIBTOOL=yesおよび
+LTCONFIG_OVERRIDE=${WRKSRC}/ltconfigをパッケージのMakefileに追加してください。
+パッケージのlibtoolは、do-configureターゲットでltconfigスクリプトにより作られます。
+USE_LIBTOOL および LTCONFIG_OVERRIDE が定義されている場合、
+指定されたltconfigは、パッケージのlibtoolのかわりにpkgtools/pkglibtoolを使うよう上書きされます。
+パッケージにpkgtools/pkglibtoolで置き換え可能なオリジナルの"libtool"がすでにある場合は、
+パッケージのMakefileでLIBTOOL_OVERRIDEを定義する必要があるかもしれません。
 
  6.3 FreeBSDポートに関する注意
  =============================
@@ -836,9 +851,9 @@
 もしパッケージの不具合を発見し動作するように修正した場合、NetBSD上で動作さ
 せるために特別な手順が必要だった場合、あるいはさまざまなソフトウェアの拡張
 をおこなった場合、これらの修正をプログラムのオリジナルの作者へ報告してくだ
-さい。このようなサポートによってのみ、プログラムの次のリリースにそれらの修
+さい。このようなサポートによって、プログラムの次のリリースにそれらの修
 正を反映することができます。そして、NetBSDパッケージシステムを使用していな
-い人々も、あなたの努力でのおかげで幸せになれます。
+い人々も、あなたの努力のおかげで幸せになれます。
 
 フリー・ソフトウェアの理念をサポートして下さい。
 
@@ -909,7 +924,8 @@
    distfileを取得した後に、MD5チェックサムを生成し、files/md5ファイルに保存
    されたチェックサムと比較します。もし、チェックサムが一致しなければ、構築
    は中断されます。これはパッケージ作成時と同じdistfileが、構築に使用されて
-   いること、つまり、悪意やネットワークの損失によってdistfileが変更されてい
+   いること、つまり、悪意や一次配布サイトでの意図的な差し替えやネットワーク
+   の損失によってdistfileが変更されてい
    ないことを保証するためです。
 
  * extract:
@@ -1018,19 +1034,23 @@
       x11/kdeで指定されている場合、KDE全体を削除します。pkg_deleteのコマン
       ドラインに-Rを指定すると設定されます。
 
- *update:
+ * update:
    このターゲットは、現在のパッケージを最新のものに更新します。最初にパッケー
    ジと、それに依存するすべてのパッケージを削除します。それから最新のバージョ
    ンのパッケージをコンパイル、インストールします。これは、現在どのパッケー
-   ジがインストールされているかを調べ、「make deinstall」、「make clean」、
-   「make install」を続けて実行するのと同じです。
+   ジがインストールされているかを調べ、「make deinstall」、
+   「make install」(または、DEPENDS_TARGETで設定されたターゲット)を続けて実行するのと同じです。
 
-   以前に実行した「make uddate」がさまざまな理由で中断された場合、パッケー
-   ジの更新のために、このターゲットを使用することができます。ただし、「make
+   以前に実行した「make update」がさまざまな理由で中断された場合、パッケー
+   ジの更新のために、このターゲットを使用することができます。ただし、この場合は、「make
    clean」を実行していない事、あるいは${WRKDIR}の依存パッケージのリストを削
    除していない事を確認してください。そうでなければ、インストール済みの依存
    パッケージを使用し、現在のパッケージを自動更新することができません。
 
+   中断された「make update」の再開は、パッケージツリーの他の部分が変更され
+   ていない場合に限って動作します。更新対象のパッケージのソースコードが変更
+   されていた場合は、「make update」の再開はきっと失敗するでしょう。
+
    「make update」の動作を変更するために、以下の変数をコマンドライン、また
    は/etc/mk.confで使うことができます。
 
@@ -1098,6 +1118,7 @@
  * show-distfiles:
    このターゲットは、パッケージを構築するために、どのdistfileやパッチファイ
    ルが必要かを表示します。
+   (DISTFILESおよびPATCHFILESであって、patches/*は含みません)
 
  * show-downlevel:
    このターゲットは、パッケージがインストールされていない場合は何も表示しま
@@ -1111,7 +1132,7 @@
  8 デバッグ
  ==========
 
-FreeBSDのportからパッケージを作成する時に落ちいりやすい間違いをチェックし、
+(FreeBSDのportから、または一から)パッケージを作成する時に落ちいりやすい間違いをチェックし、
 パッケージを動作させるための手順があります。これは基本的には前のセクション
 で説明したことと同じですが、デバッグを助けるための方法を追加しています。
 
@@ -1153,6 +1174,12 @@
  - 遊んでみてください。:)
  - pkg_delete - 今までと同様に、いかなるファイルも残っていてはいけません。
   (もう一度、上記のfind を実行してください)。
+ - make clean && touch /tmp/bla && make install && make clean && make deinstall
+   を繰り返し実行してください。そう、ソフトウェアの作者のなかには、
+   buildターゲットの最中にファイルをインストールするようなMakefileを書く人もいるのです。はぁ……。
+   そのようなものがあったら、再現させて、PLISTを修正してください。
+   このソフトウェアが、PLISTにないファイルを一切インストールしないようになるまで、
+   これを繰り返してください。
  - 提出してください(もし cvs アクセス可能であればコミットしてください)。
    セクション 10 が参考になります。
 
@@ -1161,6 +1188,23 @@
  ===============================
 
  9.1 GNU autoconfigを利用するパッケージ
+ 9.2 tar.gz 以外の配布方法
+ 9.3 それ自身のサブディレクトリーを作り出さないパッケージ
+ 9.4 カスタムコンフィギュレーションプロセス
+ 9.5 DISTNAMEディレクトリーで作成されないパッケージ
+ 9.6 一度にすべてのdistfilesを取得する方法
+ 9.7 防火壁の内側からファイルを取得する方法
+ 9.8 パッチがRCS IDを含む場合
+ 9.9 /etc/mk.confから変数を捕まえる方法
+ 9.10 pkgについて話しあうためのメーリングリストはありますか?
+ 9.11 どうすれば「make fetch」でpassive FTPを使用することができますか?
+ 9.12 他のパッケージへの依存
+ 9.13 他のパッケージとの衝突
+ 9.14 WWWホームページがあるソフトウェア
+ 9.15 '古い'名前のまま更新されたdistfileの取り扱い
+
+
+ 9.1 GNU autoconfigを利用するパッケージ
  ======================================
 
 もしパッケージがGNU autoconfを使うのであれば、パッケージのMakefileに以下の
@@ -1232,9 +1276,9 @@
  9.7 防火壁の内側からファイルを取得する方法
  ==========================================
 
-もし、あなたが防火壁の内側にいる場合、防火壁の内側にないインターネット上の
-他のマシンとの通信をおこなうために、適切なプロキシーホストを指定する必要が
-あります。これはURL形式の環境変数で指定します。例えば、Amdahlドメインにおい
+もし、あなたが防火壁の内側にいて、インターネットのホストに直接接続できない
+(つまりNATを使っていない)場合、適切なプロキシーホストを指定することができます。
+これはURL形式の環境変数で指定します。例えば、Amdahlドメインにおい
 ては、orpheus.amdahl.comというマシンは防火壁のひとつで、プロキシーポート番
 号として、80番のポートを使用します。この場合、proxy環境変数は以下のようにな
 ります。
@@ -1281,19 +1325,34 @@
  9.11 どうすれば「make fetch」でpassive FTPを使用することができますか?
  =====================================================================
 
+distfileの取得にどのユーティリティーを使っているかによります。
+bsd.pkg.mkは、以下のリストのなかで利用可能なコマンドのうち、
+最初のものをFETCH_CMDに割り当てます:
+
+/usr/bin/fetch
+${LOCALBASE}/bsd/bin/ftp
+/usr/bin/ftp
+
+NetBSDのデフォルトのインストールでは、/usr/bin/ftpとなり、
+これは自動的に、最初はパッシブ接続を試みます。
+そして、サーバーがパッシブ接続を拒否した場合は、アクティブ接続に切り替わります。
+これ以外のツールの場合は、
 /etc/make.confに以下の設定を追加してください。PASSIVE_FETCH=1
 
+これを設定すると、
+/usr/bin/ftpはアクテイブ転送への切り替えをおこなわなくなります。
+
 
  9.12 他のパッケージへの依存
  ===========================
 
 パッケージは他のパッケージに依存するかもしれません。そして、この依存性を定
-義するためのいろいろな方法があります。NetBSDはBUILD_DEPENDS、RUN_DEPENDS、
+義するためのいろいろな方法があります。NetBSDはBUILD_DEPENDS、
 DEPENDS定義をサポートしています(注意: DEPENDS定義はFreeBSDのものと同じでは
 ありません。NetBSDはFreeBSDのLIB_DEPENDS定義をもはや使用していません。ELF化
 されたNetBSDのプラットフォーム上で問題が発生することがわかりました)。
 
-[以下の例において、BUILD_DEPENDSおよびRUN_DEPENDSには、決められたフォーマッ
+[以下の例において、BUILD_DEPENDSには、決められたフォーマッ
 トがあります。:<ファイル>:<作成するパッケージのディレクトリー> [:<段階>]。
 もし、<段階>が指定されていなければ、「install」がデフォルトとなります。ファ
 イルが「/」を含む場合、それは通常ファイルとして解釈されます。そうでない場合
@@ -1308,14 +1367,14 @@
 print/ghostscript5パッケージを参考にしてください。(作成中にjpegのソースが存
 在することを前提としています)
 
-BUILD_DEPENDS=	../../graphics/jpeg/${WRKDIR:T}/jpeg-6a:../../graphics/jpeg:extract
+BUILD_DEPENDS+=  ../../graphics/jpeg/${WRKDIR:T}/jpeg-6a:../../graphics/jpeg:extract
 
 (b) パッケージを構築するために他のパッケージが必要なら、BUILD_DEPENDS定義を
 使ってください。ただし、上の説明とは異なり、「:extract」を指定してはいけま
 せん。print/lyxがよい例です。このパッケージは構築中にlatexのバイナリーを使
 用します。
 
-BUILD_DEPENDS=	latex:../../print/teTeX
+BUILD_DEPENDS+=  latex:../../print/teTeX
 
 (c) もし、パッケージがリンクのためのライブラリーを必要とするなら、DEPENDS定
 義を使ってください。たとえば、print/lyxパッケージは、作成のためにxpmライブ
@@ -1332,12 +1391,11 @@
 いたライブラリーのバージョンに依存します。
 
 (d) もし、パッケージを実行するために、いくつかの実行可能ファイルが必要なら、
-RUN_DEPENDS定義を使ってください。print/lyxパッケージを実行する時には、latex
-とispellのバイナリーが実行可能でなければなりません。これは、以下のように指
+DEPENDS定義を使ってください。print/lyxパッケージを実行する時には、teTexパッケージ由来のlatex
+のバイナリーが実行可能でなければなりません。これは、以下のように指
 定します。
 
-RUN_DEPENDS=    latex:../../print/teTeX \
-                ispell:../../textproc/ispell
+DEPENDS+=        teTex-*:../../print/teTeX 
 
 
  9.13 他のパッケージとの衝突
@@ -1372,6 +1430,32 @@
 MakefileのHOMEPAGE変数に設定するべきです。この変数はMAINTAINER変数のすぐ後
 に定義してください。
 
+ 9.15 '古い'名前のまま更新されたdistfileの取り扱い
+ =================================================
+
+時々、ソフトウェアパッケージの作者がソフトウェアのリリース後に変更を加え、
+変更後のdistfileを、バージョン番号を変えずに公開することがあります。
+このとき、pkgsrcにそのパッケージがすでに入っていると、md5チェックサムが一致しないことになります。
+この問題の正しい回避策は、パッケージのmd5チェックサムをマスターサイト
+(ミラーサイトでは更新されていないことがあります!)のパッケージに合わせて変更し、
+古いdistfileをftp.netbsd.orgの/pub/NetBSD/packages/distfilesディレクトリーから削除することです。
+さらに、パッケージの正当な作者にメールを出して、
+distfileの更新が意図されたものであって、トロイの木馬などが仕込まれたのではないことを確認します。
+
+ 9.16 "Don't know how to make /usr/share/tmap/tmac.andoc" ってどういうこと?
+ ==========================================================================
+
+pkgsrc/pkgtools/pkg_installパッケージのコンパイル時に、makeが
+/usr/share/tmap/tmac.andoc の作り方がわからないというエラーを出します。
+これは、そのマシンに"text"セット(nroffなど)がインストールされていないことを意味しています。
+"text"セットをインストールしてください。
+
+ 9.17 既存パッケージ修正時に、バージョンを上げるにはどうするか
+ =============================================================
+
+既存のパッケージに修正を加えたときに、PKGNAMEのバージョン番号を変えると便利な場合があります。
+元の作者による将来のバージョンと衝突しないようにするため、'nb1'を後に付けます
+(さらにバージョンを上げるときは'nb2'などとします)。
 
  10 提出
  =======