[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Debian JP master SVN www commits (rev.1542)
=======================================================
Repository: /org/svn.debian.or.jp/repos
Revision: 1542
Commiter: t3rkwd
Date: 2014-01-26 22:34:28 +0900 (日, 26 1月 2014)
=======================================================
Log:
Update policy to 3.9.3.1
Copy from d-doc #7383
=======================================================
Changed:
U www/trunk/src/community/devel/debian-policy-ja/policy.ja.sgml
Modified: www/trunk/src/community/devel/debian-policy-ja/policy.ja.sgml
===================================================================
--- www/trunk/src/community/devel/debian-policy-ja/policy.ja.sgml 2014-01-26 12:21:37 UTC (rev 1541)
+++ www/trunk/src/community/devel/debian-policy-ja/policy.ja.sgml 2014-01-26 13:34:28 UTC (rev 1542)
@@ -2,7 +2,7 @@
<!-- include version information so we don't have to hard code it
within the document -->
<!-- 文書の中に直接書き込まなくても良いように、
- ここでバージョン情報を挿入する。現在 3.9.1.0 ベース-->
+ ここでバージョン情報を挿入する。現在 3.9.3.1 ベース-->
<!--
<!entity % versiondata SYSTEM "version.ent"> %versiondata;
-->
@@ -42,12 +42,12 @@
<abstract>
<!--
This manual describes the policy requirements for the Debian
- GNU/Linux distribution. This includes the structure and
+ distribution. This includes the structure and
contents of the Debian archive and several design issues of the
operating system, as well as technical requirements that each
package must satisfy to be included in the distribution.
-->
- このマニュアルでは、Debian GNU/Linux ディストリビューションのポリシー
+ このマニュアルでは、Debian ディストリビューションのポリシー
(方針)、すなわち Debian
に要求されるいくつかの必要条件について説明します。
このポリシーには、Debian
@@ -102,14 +102,14 @@
<p>
<!--
A copy of the GNU General Public License is available as
- <file>/usr/share/common-licenses/GPL</file> in the Debian GNU/Linux
+ <file>/usr/share/common-licenses/GPL</file> in the Debian
distribution or on the World Wide Web at
<url id="http://www.gnu.org/copyleft/gpl.html"
name="the GNU General Public Licence">. You can also
obtain it by writing to the Free Software Foundation, Inc.,
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
-->
- GNU 一般公有使用許諾書のコピーは、Debian GNU/Linux
+ GNU 一般公有使用許諾書のコピーは、Debian
ディストリビューションでは <file>/usr/share/common-licenses/GPL</file>
として、World Wide Web 上では GNU Public License
<url id="http://www.gnu.org/copyleft/gpl.html" name=
@@ -136,13 +136,13 @@
<p>
<!--
This manual describes the policy requirements for the Debian
- GNU/Linux distribution. This includes the structure and
+ distribution. This includes the structure and
contents of the Debian archive and several design issues of the
operating system, as well as technical requirements that
each package must satisfy to be included in the
distribution.
-->
- このマニュアルでは、Debian GNU/Linux
+ このマニュアルでは、Debian
ディストリビューションのポリシー (方針)、すなわち
Debian に要求されるいくつかの必要条件について説明します。
このポリシーには、Debian
@@ -380,12 +380,13 @@
Debian 用のポリシーパッケージは、ポリシー自体を編纂する権限は無い数人のメンテナによって管理されています。
現時点でのメンテナは次の通りです:
- <enumlist>
- <item>Julian Gilbey</item>
- <item>Branden Robinson</item>
- <item>Josip Rodin</item>
- <item>Manoj Srivastava</item>
- </enumlist>
+ <enumlist>
+ <item>Russ Allbery</item>
+ <item>Bill Allombert</item>
+ <item>Andrew McMillan</item>
+ <item>Manoj Srivastava</item>
+ <item>Colin Watson</item>
+ </enumlist>
</p>
<p>
@@ -435,7 +436,6 @@
<item><ref id="fhs"></item>
<item><ref id="virtual_pkg"></item>
<item><ref id="menus"></item>
- <item><ref id="mime"></item>
<item><ref id="perl"></item>
<item><ref id="maintscriptprompt"></item>
<item><ref id="emacs"></item>
@@ -466,6 +466,17 @@
id="http://www.debian.org/doc/developers-reference/"></tt>
にあります。
</p>
+ <p><!--
+ Finally, a <qref id="copyrightformat">specification for
+ machine-readable copyright files</qref> is maintained as part of
+ the <package>debian-policy</package> package using the same
+ procedure as the other policy documents. Use of this format is
+ optional.-->
+ 最後に、<qref id="copyrightformat">specification for
+ machine-readable copyright files(機械可読な形式の著作権宣言ファイル仕様)</qref>
+ が、他のポリシー文書と同様の手続きのもとに <package>debian-policy</package>
+ パッケージの一部として維持管理されています。このフォーマットへの準拠は任意です。
+ </p>
</sect>
<sect id="definitions">
<heading>Definitions</heading>
@@ -514,13 +525,13 @@
<p>
<!--
- The Debian GNU/Linux system is maintained and distributed as a
+ The Debian system is maintained and distributed as a
collection of <em>packages</em>. Since there are so many of
them (currently well over 15000), they are split into
<em>sections</em> and given <em>priorities</em> to simplify
the handling of them.
-->
- Debian GNU/Linux システムは <em>パッケージ</em> の集合体として
+ Debian システムは <em>パッケージ</em> の集合体として
管理、配布されています。Debian には非常に数多くの
(現在優に 15000 個以上の)
パッケージが含まれますので、取り扱いを簡略化するためパッケージは
@@ -578,10 +589,9 @@
</p>
<p>
<!--
- The <em>main</em> archive area forms the <em>Debian GNU/Linux
- distribution</em>.
+ The <em>main</em> archive area forms the <em>Debian distribution</em>.
-->
- <em>Debian GNU/Linux ディストリビューション</em> とは <em>main</em>
+ <em>Debian ディストリビューション</em> とは <em>main</em>
アーカイブエリアのことです。
</p>
<p>
@@ -783,6 +793,29 @@
<heading>The main archive area</heading>
-->
<heading>main アーカイブエリア</heading>
+
+ <p><!--
+ The <em>main</em> archive area comprises the Debian
+ distribution. Only the packages in this area are considered
+ part of the distribution. None of the packages in
+ the <em>main</em> archive area require software outside of
+ that area to function. Anyone may use, share, modify and
+ redistribute the packages in this archive area
+ freely<footnote>
+ See <url id="http://www.debian.org/intro/free"
+ name="What Does Free Mean?"> for
+ more about what we mean by free software.
+ </footnote>.-->
+ <em>main</em> アーカイブエリアが Debian システムを構成します。
+ 言い換えると、このエリア内のパッケージのみがディストリビューションの一部であるとみなされます。
+ <em>main</em> アーカイブエリアのパッケージには、動作するためにこのエリア外のソフトウェアを必要とすることは許されていません。
+ 誰でも、このアーカイブエリア内のパッケージを自由に利用、共有、変更、再配布することが許されています <footnote>
+ Debian でのフリーソフトウェアの定義については、
+ <url id="http://www.debian.org/intro/free"
+ name="What Does Free Mean?"> もご覧ください。
+ </footnote>。
+ </p>
+
<p>
<!--
Every package in <em>main</em> must comply with the DFSG
@@ -800,17 +833,18 @@
<list compact="compact">
<item>
<!--
- must not require a package outside of <em>main</em> for
- compilation or execution (thus, the package must not
- declare a "Depends" , "Recommends", or
- "Build-Depends" relationship on a
- non-<em>main</em> package),
+ <item>
+ must not require or recommend a package outside
+ of <em>main</em> for compilation or execution (thus, the
+ package must not declare a "Pre-Depends", "Depends",
+ "Recommends", "Build-Depends", or "Build-Depends-Indep"
+ relationship on a non-<em>main</em> package),
-->
コンパイルおよび実行に <em>main</em>
- の範囲外のパッケージを必要としてはなりません
+ の範囲外のパッケージに Depend または Recommend してはなりません
(即ち、パッケージは <em>main</em>
- 以外に収録されたパッケージに「依存」や「推奨」や
- 「ビルド時依存」関係を宣言してはなりません)。
+ 以外に収録されたパッケージに「Depend」や「Recommend」や
+ 「Build-Depends」や「Build-Depends-Indep」関係を宣言してはなりません)。
</item>
<item>
<!--
@@ -836,6 +870,14 @@
-->
<heading>contrib アーカイブエリア</heading>
+ <p><!--
+ The <em>contrib</em> archive area contains supplemental
+ packages intended to work with the Debian distribution, but
+ which require software outside of the distribution to either
+ build or function.-->
+ <em>contrib</em> アーカイブエリアには、Debian ディストリビューションで利用するための追加ソフトウェアで、ビルドや動作にディストリビューション外のソフトウェアを必要とするものが収録されます。
+ </p>
+
<p>
<!--
Every package in <em>contrib</em> must comply with the DFSG.
@@ -902,6 +944,19 @@
-->
<heading>non-free アーカイブエリア</heading>
+ <p><!--
+ The <em>non-free</em> archive area contains supplemental
+ packages intended to work with the Debian distribution that do
+ not comply with the DFSG or have other problems that make
+ their distribution problematic. They may not comply with all
+ of the policy requirements in this manual due to restrictions
+ on modifications or other limitations.-->
+ <em>non-free</em> アーカイブエリアには、Debian
+ ディストリビューションで利用することを意図してはいますが、DFSG
+ に準拠しない、または配布に問題があるような他の問題をもつパッケージが収録されています。
+ これらは修正の制限や、その他の制約のため、本マニュアルのポリシーでの要求をすべては満たしていないかもしれません。
+ </p>
+
<p>
<!--
Packages must be placed in <em>non-free</em> if they are
@@ -1138,18 +1193,20 @@
現時点では、それらは下記の通りです。
<em>admin</em>, <em>cli-mono</em>, <em>comm</em>, <em>database</em>,
<em>devel</em>, <em>debug</em>, <em>doc</em>, <em>editors</em>,
- <em>electronics</em>, <em>embedded</em>, <em>fonts</em>,
- <em>games</em>, <em>gnome</em>, <em>graphics</em>, <em>gnu-r</em>,
- <em>gnustep</em>, <em>hamradio</em>, <em>haskell</em>,
- <em>httpd</em>, <em>interpreters</em>, <em>java</em>, <em>kde</em>,
- <em>kernel</em>, <em>libs</em>, <em>libdevel</em>, <em>lisp</em>,
- <em>localization</em>, <em>mail</em>, <em>math</em>, <em>misc</em>,
+ <em>education</em>, <em>electronics</em>, <em>embedded</em>,
+ <em>fonts</em>, <em>games</em>, <em>gnome</em>, <em>graphics</em>,
+ <em>gnu-r</em>, <em>gnustep</em>, <em>hamradio</em>, <em>haskell</em>,
+ <em>httpd</em>, <em>interpreters</em>, <em>introspection</em>,
+ <em>java</em>, <em>kde</em>, <em>kernel</em>, <em>libs</em>,
+ <em>libdevel</em>, <em>lisp</em>, <em>localization</em>,
+ <em>mail</em>, <em>math</em>, <em>metapackages</em>, <em>misc</em>,
<em>net</em>, <em>news</em>, <em>ocaml</em>, <em>oldlibs</em>,
<em>otherosfs</em>, <em>perl</em>, <em>php</em>, <em>python</em>,
<em>ruby</em>, <em>science</em>, <em>shells</em>, <em>sound</em>,
<em>tex</em>, <em>text</em>, <em>utils</em>, <em>vcs</em>,
<em>video</em>, <em>web</em>, <em>x11</em>, <em>xfce</em>,
- <em>zope</em><!--. The additional section <em>debian-installer</em>
+ <em>zope</em>
+ <!--. The additional section <em>debian-installer</em>
contains special packages used by the installer and is not used
for normal Debian packages.-->
さらに追加の <em>debian-installer</em>
@@ -1327,12 +1384,12 @@
<heading>バイナリパッケージ</heading>
<p>
<!--
- The Debian GNU/Linux distribution is based on the Debian
+ The Debian distribution is based on the Debian
package management system, called <prgn>dpkg</prgn>. Thus,
all packages in the Debian distribution must be provided
in the <tt>.deb</tt> file format.
-->
- Debian GNU/Linux ディストリビューションは <prgn>dpkg</prgn>
+ Debian ディストリビューションは <prgn>dpkg</prgn>
と呼ばれる Debian パッケージ管理システムに基礎を置いています。
このため、Debian ディストリビューションに含まれる全てのパッケージは
<tt>.deb</tt>ファイル形式で提供されなければなりません。
@@ -1502,73 +1559,106 @@
</sect>
- <sect>
+ <sect id="maintainer">
<!--
<heading>The maintainer of a package</heading>
-->
<heading>パッケージのメンテナ</heading>
<p>
<!--
- Every package must have a Debian maintainer (the
- maintainer may be one person or a group of people
- reachable from a common email address, such as a mailing
- list). The maintainer is responsible for ensuring that
- the package is placed in the appropriate distributions.
+ Every package must have a maintainer, except for orphaned
+ packages as described below. The maintainer may be one person
+ or a group of people reachable from a common email address, such
+ as a mailing list. The maintainer is responsible for
+ maintaining the Debian packaging files, evaluating and
+ responding appropriately to reported bugs, uploading new
+ versions of the package (either directly or through a sponsor),
+ ensuring that the package is placed in the appropriate archive
+ area and included in Debian releases as appropriate for the
+ stability and utility of the package, and requesting removal of
+ the package from the Debian distribution if it is no longer
+ useful or maintainable.
-->
- 全てのパッケージには一人または一グループの Debian メンテナ
- (一名の個人であっても、メーリングリストなどの共通の一つのメールアドレスで連絡の取れるグループであってもかまいません)
- を持たなければなりません。
- この人物は、そのパッケージが適切なディストリビューションに収録されていることに対する責任を持ちます。
+ 全てのパッケージには、以下で記載する <tt>orphaned</tt>
+ パッケージを除いて、一人または一グループの Debian メンテナを持たなければなりません。
+ メンテナは、個人であっても、メーリングリストなどの共通の一つのメールアドレスで連絡の取れるグループであってもかまいません。
+ メンテナは、Debian パッケージファイルの保守、すなわち報告されたバグに対して適切に判断・応答すること、新しいバージョンのアップロード (直接あるいはスポンサ経由で) を行うこと、
+ そのパッケージが適切なアーカイブエリアに置かれていること、パッケージの安定度や有用性にしたがって適切なディストリビューションに収録されていること、有用性が失われたか保守不能になった場合パッケージを
+ Debian ディストリビューションから削除する要求を出すことについて、責任を持ちます。
</p>
- <p>
- <!--
- The maintainer must be specified in the
- <tt>Maintainer</tt> control field with their correct name
- and a working email address. If one person maintains
- several packages, they should try to avoid having
- different forms of their name and email address in
- the <tt>Maintainer</tt> fields of those packages.
- -->
+ <p><!--
+ The maintainer must be specified in the <tt>Maintainer</tt>
+ control field with their correct name and a working email
+ address. The email address given in the <tt>Maintainer</tt>
+ control field must accept mail from those role accounts in
+ Debian used to send automated mails regarding the package. This
+ includes non-spam mail from the bug-tracking system, all mail
+ from the Debian archive maintenance software, and other role
+ accounts or automated processes that are commonly agreed on by
+ the project.<footnote>
+ A sample implementation of such a whitelist written for the
+ Mailman mailing list management software is used for mailing
+ lists hosted by alioth.debian.org.
+ </footnote>
+ If one person or team maintains several packages, they should
+ use the same form of their name and email address in
+ the <tt>Maintainer</tt> fields of those packages.
+ -->
Debian パッケージのメンテナは各パッケージの <tt>Maintainer</tt>
コントロールフィールドに、正しい名前と有効な電子メールアドレスの両方により指定されていなければなりません。
+ <tt>Maintainer</tt> 制御フィールド内の電子メールアドレスは、Debian
+ でパッケージに関して自動的にメールを送るのに使われる役割のアカウントからのメールを受け取らなければいけません。
+ これは、バグトラッキングシステムからの SPAM でないメール、Debian
+ アーカイブ管理ソフトウェアからのすべてのメール、およびそれ以外にもプロジェクトで合意されている決まった役割のアカウントと自動送信プロセスからのメールは、受け取らなければならないということです
+ <footnote>
+ Mailman メーリングリスト管理ソフトウェア向けのそのようなホワイトリストの参照実装が、
+ alioth.debian.org でホストされているメーリングリストで使用されています。
+ </footnote>。
もしその人がいくつかのパッケージを管理している場合、個々のパッケージの
- <tt>Maintainer</tt> フィールドに異なった形式の名前と電子メールアドレスを記入することは避けるべきです。
+ <tt>Maintainer</tt> フィールドに同じ形式の名前と電子メールアドレスを記入すべきです。
+ </p>
- </p>
<p><!--
The format of the <tt>Maintainer</tt> control field is
described in <ref id="f-Maintainer">.-->
<tt>Maintainer</tt> フィールドの書式は、<ref id="f-Maintainer">
で記載されています。
</p>
- <p>
- <!--
- If the maintainer of a package quits from the Debian
- project, "Debian QA Group"
- <email>packages@qa.debian.org</email> takes over the
- maintainer-ship of the package until someone else
- volunteers for that task. These packages are called
- <em>orphaned packages</em>.
- -->
- もしあるパッケージのメンテナが Debian プロジェクトを辞めたなら、
- 誰か他の人がその仕事に志願するまで Debian QA グループ
- <email>packages@qa.debian.org</email>
- がパッケージの管理を引き継ぎます
- <!-- 別にプロジェクトをやめなくともメンテナは降りられるので、
- この書き方は勇み足 -->
- <footnote><p>
- <!--
- The detailed procedure for doing this gracefully can
- be found in the Debian Developer's Reference,
- see <ref id="related">.-->
- これを丁寧に行うやり方の詳細は Debian Developer's
+
+ <p><!--
+ If the maintainer of the package is a team of people with a
+ shared email address, the <tt>Uploaders</tt> control field must
+ be present and must contain at least one human with their
+ personal email address. See <ref id="f-Uploaders"> for the
+ syntax of that field.-->
+ パッケージのメンテナが、メールアドレスを共有するチームである場合、<tt>Uploaders</tt>
+ 制御フィールドが必ず存在し、個人の電子メールアドレスを付けてひとりの人物が指定されていなければいけません。
+ このフィールドの書式は、<ref id="f-Uploaders"> を参照ください。
+ </p>
+
+ <p><!--
+ An orphaned package is one with no current maintainer. Orphaned
+ packages should have their <tt>Maintainer</tt> control field set
+ to <tt>Debian QA Group <packages@qa.debian.org></tt>.
+ These packages are considered maintained by the Debian project
+ as a whole until someone else volunteers to take over
+ maintenance.<footnote>
+ The detailed procedure for gracefully orphaning a package can
+ be found in the Debian Developer's Reference
+ (see <ref id="related">).
+ </footnote>-->
+ orphaned パッケージとは、現在メンテナのいないパッケージのことです。
+ orphaned パッケージでは、<tt>Maintainer</tt> 制御フィールドに
+ <tt>Debian QA Group <packages@qa.debian.org></tt> を設定しなければいけません。
+ このようなパッケージは、保守の志願者が現れない限り Debian
+ プロジェクト全体で保守されているとみなされます
+ <footnote>
+ パッケージの orphan 化を丁寧に行うやり方の詳細は Debian Developer's
Reference (開発者の手引き) に書かれています。
<ref id="related"> を参照ください。
- </p></footnote> 。
- このようなパッケージは <em>orphaned パッケージ</em>
- と呼ばれます。
- </p>
+ </footnote>。
+ </p>
</sect>
<sect id="descriptions">
@@ -1709,7 +1799,7 @@
</sect>
- <sect>
+ <sect id="dependencies">
<!--
<heading>Dependencies</heading>
-->
@@ -1779,12 +1869,12 @@
</p>
<p>
<!--
- Sometimes, a package requires another package to be
- installed <em>and</em> configured before it can be
- installed. In this case, you must specify a
- <tt>Pre-Depends</tt> entry for the package.</p>
+ Sometimes, unpacking one package requires that another package
+ be first unpacked <em>and</em> configured. In this case, the
+ depending package must specify this dependency in
+ the <tt>Pre-Depends</tt> control field.
-->
- 時々、あるパッケージが、それをインストールする前にもう一つのパッケージがインストールされ
+ 時々、あるパッケージが、それを展開する前にもう一つのパッケージが展開され
<em>かつ</em> 設定されていることを必要とすることがあります。
この場合、そのパッケージには
<tt>Pre-Depends</tt> エントリを指定しなければなりません。
@@ -1881,13 +1971,13 @@
<p>
<!--
The <tt>base system</tt> is a minimum subset of the Debian
- GNU/Linux system that is installed before everything else
+ system that is installed before everything else
on a new system. Only very few packages are allowed to form
part of the base system, in order to keep the required disk
usage very small.
-->
<tt>base システム</tt>は、新しいシステムに於いて他の全てに先だってインストールされる、
- Debian GNU/Linux システムの最小のサブセットを形成します。
+ Debian システムの最小のサブセットを形成します。
従って、必要となるディスク使用量を非常に小さく保つため、ごく少数のパッケージのみが
base システムの一部となることを認められています。
</p>
@@ -2964,35 +3054,39 @@
と実行した場合と、<tt>./debian/rules <em>args...</em></tt>
と実行した場合が同じ結果でなければいけません。
</p>
+
<p><!--
+ The following targets are required and must be implemented
+ by <file>debian/rules</file>: <tt>clean</tt>, <tt>binary</tt>,
+ <tt>binary-arch</tt>, <tt>binary-indep</tt>, and <tt>build</tt>.
+ These are the targets called by <prgn>dpkg-buildpackage</prgn>.-->
+ 以下のターゲットは、<file>debian/rules</file> に必要で、実装されていなければいけません。
+ - <tt>clean</tt>, <tt>binary</tt>,
+ <tt>binary-arch</tt>, <tt>binary-indep</tt>, および <tt>build</tt>。
+ これらのターゲットは、<prgn>dpkg-buildpackage</prgn> から呼ばれます。
+ </p>
+
+ <p><!--
Since an interactive <file>debian/rules</file> script makes it
- impossible to auto-compile that package and also makes it
- hard for other people to reproduce the same binary
- package, all <em>required targets</em> must be
- non-interactive. At a minimum, required targets are the
- ones called by <prgn>dpkg-buildpackage</prgn>, namely,
- <em>clean</em>, <em>binary</em>, <em>binary-arch</em>,
- <em>binary-indep</em>, and <em>build</em>. It also follows
- that any target that these targets depend on must also be
- non-interactive.-->
+ impossible to auto-compile that package and also makes it hard
+ for other people to reproduce the same binary package, all
+ required targets must be non-interactive. It also follows that
+ any target that these targets depend on must also be
+ non-interactive.
+ -->
対話型の <file>debian/rules</file>
スクリプトは、そのパッケージの自動コンパイルを不可能にし、さらにメンテナ以外の人が同じバイナリパッケージを再構築するのを難しくします。
- ですから、全ての <em>必要なターゲット</em> は非対話的でなくては
- なりません。最小限の範囲で言えば、必要なターゲットとは、
- <prgn>dpkg-buildpackage</prgn>
- によって呼び出されるターゲット、つまり
- <em>clean</em>、<em>binary</em>、<em>binary-arch</em>、
- <em>binary-indep</em> と <em>build</em> のことです。
+ ですから、全ての <em>必要なターゲット</em> は非対話的でなくてはなりません。
また、これらのターゲットによって呼び出されるターゲットも非対話的でなくてはなりません。
</p>
<p>
<!--
- The targets are as follows (required unless stated otherwise):
+ The targets are as follows:
-->
- ターゲットは次の通りです (特に記載されていない限り、以下のターゲットが必要です)。
+ ターゲットは次の通りです。
<taglist>
- <tag><tt>build</tt></tag>
+ <tag><tt>build</tt> (<!--required-->必須)</tag>
<item>
<p>
<!--
@@ -3102,7 +3196,7 @@
<item>
<p>
<!--
- A package may also provide both of the targets
+ A package may also provide one or both of the targets
<tt>build-arch</tt> and <tt>build-indep</tt>.
The <tt>build-arch</tt> target, if provided, should
perform all the configuration and compilation required for
@@ -3114,10 +3208,25 @@
and compilation required for producing all
architecture-independent binary packages (those packages
for which the body of the <tt>Architecture</tt> field
- in <tt>debian/control</tt> is <tt>all</tt>).
- The <tt>build</tt> target should depend on those of the
- targets <tt>build-arch</tt> and <tt>build-indep</tt> that
- are provided in the rules file.<footnote>
+ in <tt>debian/control</tt> is <tt>all</tt>).-->
+ パッケージは <tt>build-arch</tt> と <tt>build-indep</tt>
+ の一方あるいは両方のターゲットを指定することが出来ます。
+ <tt>build-arch</tt> ターゲットが指定された場合、これはアーキテクチャ依存のバイナリパッケージ
+ (これらのパッケージには、<tt>debian/control</tt> の
+ <tt>Architecture</tt> フィールドに <tt>all</tt>
+ 以外が指定されています)
+ を作成するのに必要なすべての非対話型の処理を実行します。
+ 同様に <tt>build-indep</tt> ターゲットが指定された場合、これはアーキテクチャ非依存のバイナリパッケージ
+ (これらのパッケージでは、<tt>debian/control</tt> の
+ <tt>Architecture</tt> フィールドの値は <tt>all</tt> です)
+ を作成するのに必要なすべての非対話型の処理を実行します。
+ </p>
+
+ <p><!--
+ If <tt>build-arch</tt> or <tt>build-indep</tt> targets are
+ provided in the rules file, the <tt>build</tt> target
+ should either depend on those targets or take the same
+ actions as invoking those targets would perform.<footnote>
The intent of this split is so that binary-only builds
need not install the dependencies required for
the <tt>build-indep</tt> target. However, this is not
@@ -3128,20 +3237,10 @@
optional <tt>build-arch</tt> target exists.
</footnote>
-->
- パッケージは <tt>build-arch</tt> と <tt>build-indep</tt>
- の両方のターゲットを指定することが出来ます。
- <tt>build-arch</tt> ターゲットが指定された場合、これはアーキテクチャ依存のバイナリパッケージ
- (これらのパッケージには、<tt>debian/control</tt> の
- <tt>Architecture</tt> フィールドに <tt>all</tt>
- 以外が指定されています)
- を作成するのに必要なすべての非対話型の処理を実行します。
- 同様に <tt>build-indep</tt> ターゲットが指定された場合、これはアーキテクチャ非依存のバイナリパッケージ
- (これらのパッケージでは、<tt>debian/control</tt> の
- <tt>Architecture</tt> フィールドの値は <tt>all</tt> です)
- を作成するのに必要なすべての非対話型の処理を実行します。
- <tt>build</tt> ターゲットは、<tt>build-arch</tt> または
- <tt>build-indep</tt> が rules
- ファイルに指定されている場合、それらに依存関係を指定すべきです<footnote>
+ <tt>build-arch</tt> または <tt>build-indep</tt> が rules
+ ファイルに指定されている場合、<tt>build</tt>
+ ターゲットは、それらに依存関係を指定するか、
+ それらのターゲットを呼んだ時に行われる動作に対応した何らかの処理を行うべきです<footnote>
この分割の意図は、バイナリのみのビルド時に <tt>build-indep</tt>
ターゲットで必要になる依存パッケージのインストールを行わなくてよいようにするためです。
但し、この条件はまだ実運用に入っていません。それは
@@ -3178,8 +3277,8 @@
権限が必要なことを行ってはいけません。
</p>
</item>
- <tag><tt>binary</tt>, <tt>binary-arch</tt>,
- <tt>binary-indep</tt>
+ <tag><tt>binary</tt> (<!--required-->必須), <tt>binary-arch</tt> (<!--required-->必須),
+ <tt>binary-indep</tt> (<!--required-->必須)
</tag>
<item>
<p><!--
@@ -3260,7 +3359,7 @@
</p></footnote> いけません。
</p>
</item>
- <tag><tt>clean</tt></tag>
+ <tag><tt>clean</tt> (<!--required-->必須)</tag>
<item>
<p><!--
@@ -3372,22 +3471,36 @@
</p>
<p><!--
The architectures we build on and build for are determined
- by <prgn>make</prgn> variables using the utility
- <qref id="pkg-dpkg-architecture"><prgn>dpkg-architecture</prgn></qref>.
- You can determine the
- Debian architecture and the GNU style architecture
- specification string for the build machine (the machine type
- we are building on) as well as for the host machine (the
- machine type we are building for). Here is a list of
- supported <prgn>make</prgn> variables:-->
+ by <prgn>make</prgn> variables using the
+ utility <qref id="pkg-dpkg-architecture"><prgn>dpkg-architecture</prgn></qref>.
+ You can determine the Debian architecture and the GNU style
+ architecture specification string for the build architecture as
+ well as for the host architecture. The build architecture is
+ the architecture on which <file>debian/rules</file> is run and
+ the package build is performed. The host architecture is the
+ architecture on which the resulting package will be installed
+ and run. These are normally the same, but may be different in
+ the case of cross-compilation (building packages for one
+ architecture on machines of a different architecture).
+ -->
パッケージを実際にビルドするマシンや、インストールの対象となるマシンのアーキテクチャは、
<qref id="pkg-dpkg-architecture"><prgn>dpkg-architecture</prgn></qref>
を使って <prgn>make</prgn> 変数を設定することによって決定されます。
- これにより、ホストマシン (パッケージの作成対象としているマシンタイプ)
- だけでなくパッケージのビルドをするマシン
- (ビルド作業に使っているマシン) の Debian 形式のアーキテクチャと
+ これにより、ホストアーキテクチャだけでなくパッケージのビルドをするマシン
+ アーキテクチャの Debian 形式のアーキテクチャ指定文字列と
GNU 形式のアーキテクチャ指定文字列を得ることができます。
- 次に、サポートされている <prgn>make</prgn> 変数を示します。
+ ビルドアーキテクチャとは、<file>debian/rules</file>
+ が実行され、パッケージビルドが行われるアーキテクチャです。
+ ホストアーキテクチャとは、生成されたパッケージがインストールされ、実行されるアーキテクチャです。
+ これらは通常は同じですが、クロスコンパイル
+ (あるアーキテクチャ向けのパッケージを異なったアーキテクチャのマシンでビルドする)
+ の場合、異なっていても構いません。
+ </p>
+
+ <p><!--
+ Here is a list of supported <prgn>make</prgn> variables:
+ -->
+ 次に、サポートされている <prgn>make</prgn> 変数を示します。
<list compact="compact">
<item>
<tt>DEB_*_ARCH</tt> <!--(the Debian architecture)-->(Debian 形式のアーキテクチャ)
@@ -3413,11 +3526,11 @@
<tt>DEB_*_GNU_SYSTEM</tt> (<tt>DEB_*_GNU_TYPE</tt> の システムの部分)
</list><!--
where <tt>*</tt> is either <tt>BUILD</tt> for specification of
- the build machine or <tt>HOST</tt> for specification of the
- host machine.-->
+ the build architecture or <tt>HOST</tt> for specification of the
+ host architecture.-->
<tt>*</tt> は <tt>BUILD</tt> か <tt>HOST</tt> のどちらかです。
- <tt>BUILD</tt> の場合はパッケージをビルドするマシンの指定になり、
- <tt>HOST</tt> の場合にはホストマシンの指定になります。
+ <tt>BUILD</tt> の場合はパッケージをビルドするアーキテクチャの指定になり、
+ <tt>HOST</tt> の場合にはホストアーキテクチャの指定になります。
</p>
<p><!--
@@ -3892,40 +4005,58 @@
fields<footnote>
The paragraphs are also sometimes referred to as stanzas.
</footnote>.
- The paragraphs are separated by blank lines. Some control
+ The paragraphs are separated by empty lines. Parsers may accept
+ lines consisting solely of spaces and tabs as paragraph
+ separators, but control files should use empty lines. Some control
files allow only one paragraph; others allow several, in
which case each paragraph usually refers to a different
package. (For example, in source packages, the first
paragraph refers to the source package, and later paragraphs
- refer to binary packages generated from the source.)-->
+ refer to binary packages generated from the source.) The
+ ordering of the paragraphs in control files is significant.
+ -->
コントロールファイルは、一つまたはそれ以上のフィールドの段落から成ります
<footnote><p><!--
The paragraphs are also sometimes referred to as stanzas.-->
この段落はしばしば連 (stanza) と呼ばれます。
</p></footnote> 。段落は、空白行で区切られます。
+ パーザは空白文字とタブだけからなる行も段落の区切りとして処理しても構いませんが、
+ コントロールファイルでは空行を使うべきです。
いくつかのコントロールファイルは一つの段落しか持てませんが、複数の段落を持つことができるコントロールファイルもあります。
その場合には、通常、各段落は、それぞれ違うパッケージに対する記述になっています
(例えば、ソースパッケージでは第一段落はソースパッケージを指し、以降のパッケージはそこから作成されたバイナリパッケージ群を指します)。
+ コントロールファイル中の段落の順序は意味を持ちます。
</p>
<p><!--
- Each paragraph consists of a series of data fields; each
- field consists of the field name, followed by a colon and
- then the data/value associated with that field. It ends at
- the end of the (logical) line. Horizontal whitespace
- (spaces and tabs) may occur immediately before or after the
- value and is ignored there; it is conventional to put a
- single space after the colon. For example, a field might
- be:
+ Each paragraph consists of a series of data fields. Each field
+ consists of the field name followed by a colon and then the
+ data/value associated with that field. The field name is
+ composed of US-ASCII characters excluding control characters,
+ space, and colon (i.e., characters in the ranges 33-57 and
+ 59-126, inclusive). Field names must not begin with the comment
+ character, <tt>#</tt>.-->
+ 一つ一つの段落は、フィールドと値の連続したものです。
+ 個々のフィールドは、名前とそれに続くコロンとデータ/値によって構成されます。
+ フィールド名は制御文字、空白とコロンを除く ASCII 文字から構成されます
+ (つまり、33-57 または 59-126 までの間でなければいけません)。
+ フィールド名は、コメント文字 <tt>#</tt> で始まってはいけません。
+ </p>
+
+ <p><!--
+ The field ends at the end of the line or at the end of the last
+ continuation line (see below). Horizontal whitespace (spaces
+ and tabs) may occur immediately before or after the value and is
+ ignored there; it is conventional to put a single space after
+ the colon. For example, a field might be:
+
<example compact="compact">
Package: libc6
</example>
the field name is <tt>Package</tt> and the field value
<tt>libc6</tt>.-->
- 一つ一つの段落は、フィールドと値の連続したものです。
- 個々のフィールドは、名前とそれに続くコロンと値によって構成されます。
- そして、(論理的な) 行末が終りです。水平方向に連続する空白
- (スペースとタブ)
+ そして、改行または最後の継続行の終わりがフィールドの終わりです。
+ 水平方向に連続する空白 (スペースとタブ)
は値の前後に入れることもできますが、その場合は無視されます;
慣習として、コロンの後に一つの空白を入れます。
例えば、フィールドは以下のようなものです。
@@ -3943,29 +4074,72 @@
</p>
<p><!--
- Many fields' values may span several lines; in this case
- each continuation line <em>must</em> start with a space or
- tab. Any trailing spaces or tabs at the end of individual
- lines of a field value are ignored.-->
- 多くのフィールドが、複数行で構成されています;
- この場合、継続行は、空白かタブで始まらなければ <em>なりません</em>。
- フィールドの行の最後に続く空白やタブは全て無視されます。
+ There are three types of fields:-->
+ フィールドには三種類あります。
+ <taglist>
+ <tag>simple (単一行)</tag>
+ <item><!--
+ The field, including its value, must be a single line. Folding
+ of the field is not permitted. This is the default field type
+ if the definition of the field does not specify a different
+ type.-->
+ このフィールドは値を含めて一行でなければなりません。
+ フィールドを折り返すことは許されません。
+ これは、フィールドの定義で他のフィールド種別を許していない場合、標準のフィールドの種類になります。
+ </item>
+ <tag>folded (折り返しを許す)</tag>
+ <item><!--
+ The value of a folded field is a logical line that may span
+ several lines. The lines after the first are called
+ continuation lines and must start with a space or a tab.
+ Whitespace, including any newlines, is not significant in the
+ field values of folded fields.<footnote>
+ This folding method is similar to RFC 5322, allowing control
+ files that contain only one paragraph and no multiline fields
+ to be read by parsers written for RFC 5322.
+ </footnote>-->
+ 折り返しを許す (folded) フィールドの値は、複数行に展開可能な論理的な行です。
+ 最初の行に続く行は継続行と呼ばれ、空白またはタブで始まらなければいけません。
+ 改行を含む空白文字は、折り返しを許すフィールドの値の場合、意味を持ちません
+ <footnote>
+ この折り返しの扱いは、RFC 5322 と同様です。このため、RFC 5322
+ 向けに書かれたパーザを使って、ひとつの段落で複数行のフィールドを持たないコントロールファイルを読み込むことができます。
+ </footnote>
+ </item>
+ <tag>multiline (複数行)</tag>
+ <item><!--
+ The value of a multiline field may comprise multiple continuation
+ lines. The first line of the value, the part on the same line as
+ the field name, often has special significance or may have to be
+ empty. Other lines are added following the same syntax as the
+ continuation lines of the folded fields. Whitespace, including newlines,
+ is significant in the values of multiline fields.-->
+ 複数行 (multiline) フィールドの値は、複数の継続行から構成されます。
+ 最初の行の値は (フィールド名と同じ行にある値の部分)、
+ しばしば特別の意味を持ち、空にしなければならない場合もあります。
+ 残りの行は「折り返しを許すフィールド」の継続行と同じ書式で付け加えられます。
+ 空白や改行は、複数行フィールドでは意味を持ちます。
+ </item>
+ </taglist>
</p>
-
+
<p><!--
- In fields where it is specified that lines may not wrap,
- only a single line of data is allowed and whitespace is not
- significant in a field body. Whitespace must not appear
+ Whitespace must not appear
inside names (of packages, architectures, files or anything
else) or version numbers, or between the characters of
multi-character version relationships.
-->
- 改行を許さないと明示的に書かれているフィールドでは、フィールドの本体には一行のデータのみが許されており、空白は意味を持ちません。
空白は、 名前 (パッケージやアーキテクチャ、ファイル、その他)
やバージョン番号、複数のキャラクタのバージョン関係の中には、絶対にあってはいけません。
</p>
<p><!--
+ The presence and purpose of a field, and the syntax of its
+ value may differ between types of control files.-->
+ 各フィールドの存在と用途、および値の書式はコントロールファイル毎に異なります。
+ </p>
+
+ <p><!--
Field names are not case-sensitive, but it is usual to
capitalise the field names using mixed case as shown below.
Field values are case-sensitive unless the description of the
@@ -3976,13 +4150,27 @@
</p>
<p><!--
- Blank lines, or lines consisting only of spaces and tabs,
- are not allowed within field values or between fields - that
- would mean a new paragraph.-->
- 空白行や空白とタブでだけ構成されている行は、フィールドの値や、フィールドとフィールドの間にあってはいけません
- - それは、新しい段落を意味してしまいます。
+ Paragraph separators (empty lines) and lines consisting only of
+ spaces and tabs are not allowed within field values or between
+ fields. Empty lines in field values are usually escaped by
+ representing them by a space followed by a dot.
+ -->
+ 段落の区切り (空行) や、空白行や空白とタブでだけ構成されている行が、フィールドの値や、フィールドとフィールドの間にあってはいけません。
+ フィールドの値としての空行は、通常は 空白とドット という値にエスケープされます。
</p>
+
<p><!--
+ Lines starting with # without any preceding whitespace are comments
+ lines that are only permitted in source package control files
+ (<file>debian/control</file>). These comment lines are ignored, even
+ between two continuation lines. They do not end logical lines.-->
+ 行が前に空白なしで # で始まっている場合、それはソースパッケージコントロールファイル
+ (<file>debian/control</file>) 中でのみ許されるコメント行です。
+ このコメント行は、継続行の途中にある場合も含めて、無視されます。
+ また、フィールドの論理行の終りを意味することもありません。
+ </p>
+
+ <p><!--
All control files must be encoded in UTF-8.-->
コントロールファイルは UTF-8 でエンコードしなければいけません。
</p>
@@ -4018,6 +4206,7 @@
<item><qref id="f-Maintainer"><tt>Maintainer</tt></qref>
<!-- (mandatory)-->(必須)</item>
<item><qref id="f-Uploaders"><tt>Uploaders</tt></qref></item>
+ <item><qref id="f-DM-Upload-Allowed"><tt>DM-Upload-Allowed</tt></qref></item>
<item><qref id="f-Section"><tt>Section</tt></qref>
<!-- (recommended)-->(推奨)</item>
<item><qref id="f-Priority"><tt>Priority</tt></qref>
@@ -4062,8 +4251,8 @@
<file>.changes</file> file to accompany the upload, and by
<prgn>dpkg-source</prgn> when it creates the
<file>.dsc</file> source control file as part of a source
- archive. Many fields are permitted to span multiple lines in
- <file>debian/control</file> but not in any other control
+ archive. Some fields are folded in <file>debian/control</file>,
+ but not in any other control
file. These tools are responsible for removing the line
breaks from such fields when using fields from
<file>debian/control</file> to generate other control files.
@@ -4075,8 +4264,8 @@
<prgn>dpkg-source</prgn>
がソースアーカイブの一部として <file>.dsc</file>
ソースコントロールファイルを生成するときに使用されます。
- 多くのフィールドは、<file>debian/control</file>
- 中では複数行に渡ることが許されていますが、
+ 一部のフィールドは、<file>debian/control</file>
+ 中での折り返しを許す行の使用が許されていますが、
他のコントロールファイル中ではこれは認められていません。
上で挙げたツールは、<file>debian/control</file>
中のそのようなフィールドに対して、他のコントロールファイルを作成するために使用する際に、改行を削除する責任を負っています。
@@ -4094,18 +4283,6 @@
及び <prgn>dpkg-source</prgn> によって使用されます。
詳細は、<ref id="substvars"> をご覧ください。
</p>
- <p><!--
- In addition to the control file syntax described <qref
- id="controlsyntax">above</qref>, this file may also contain
- comment lines starting with <tt>#</tt> without any preceding
- whitespace. All such lines are ignored, even in the middle of
- continuation lines for a multiline field, and do not end a
- multiline field.-->
- <qref id="controlsyntax">上記のコントロールファイルの書式</qref>
- に加え、このファイルには先頭に空白なしで <tt>#</tt>
- から始まるコメント行を含めることができます。
- そのような行は、複数行からなるフィールドの途中でも無視され、フィールドを終わらせるようなことはありません。
- </p>
</sect>
<sect id="binarycontrolfiles">
@@ -4153,11 +4330,11 @@
<p><!--
This file consists of a single paragraph, possibly surrounded by
a PGP signature. The fields of that paragraph are listed below.
- Their syntax is described above, in <ref id="pkg-controlfields">.
+ Their syntax is described above, in <ref id="controlsyntax">.
-->
このファイルは、一つの段落からなり、恐らく PGP 署名で囲われています。
含まれるフィールドを以下に示します。またフィールドの書式は前に
- <ref id="pkg-controlfields"> で説明されています。
+ <ref id="controlsyntax"> で説明されています。
<list compact="compact">
<item><qref id="f-Format"><tt>Format</tt></qref>
<!-- (mandatory)-->(必須)</item>
@@ -4170,7 +4347,8 @@
<item><qref id="f-Maintainer"><tt>Maintainer</tt></qref>
<!-- (mandatory)-->(必須)</item>
<item><qref id="f-Uploaders"><tt>Uploaders</tt></qref></item>
- <item><qref id="f-Homepage"><tt>Homepage</tt></qref></item>
+ <item><qref id="f-DM-Upload-Allowed"><tt>DM-Upload-Allowed</tt></qref></item>
+ <item><qref id="f-Homepage"><tt>Homepage</tt></qref></item>
<item><qref id="f-Standards-Version"><tt>Standards-Version</tt>
</qref><!-- (recommended)-->(推奨)</item>
<item><qref id="sourcebinarydeps"><tt>Build-Depends</tt>
@@ -4184,15 +4362,15 @@
</list>
</p>
<p><!--
- The source package control file is generated by
+ The Debian source control file is generated by
<prgn>dpkg-source</prgn> when it builds the source
archive, from other files in the source package,
described above. When unpacking, it is checked against
the files and directories in the other parts of the
source package.-->
- ソースパッケージコントロールファイルはソースアーカイブビルド時に
+ Debian ソースコントロールファイルはソースアーカイブビルド時に
<prgn>dpkg-source</prgn> によりソースパッケージ中の、上記の説明している他のファイルから作成されます。
- パッケージを解く時、ソースパッケージ中の他の部分のファイルとディレクトリとの整合性がチェックされます。
+ パッケージを展開する時、ソースパッケージ中の他の部分のファイルとディレクトリとの整合性がチェックされます。
</p>
</sect>
@@ -4356,50 +4534,52 @@
(例えば、名前をかっこのなかに入れて最後尾に移動し、 email
アドレスを前の方に持ってきます)。
</p>
+ <p><!--
+ See <ref id="maintainer"> for additional requirements and
+ information about package maintainers.-->
+ パッケージメンテナに関するこれ以外の要求事項や説明は、
+ <ref id="maintainer"> を参照ください。
+ </p>
</sect1>
<sect1 id="f-Uploaders">
<heading><tt>Uploaders</tt></heading>
<p><!--
- List of the names and email addresses of co-maintainers of
- the package, if any. If the package has other maintainers
- beside the one named in the
- <qref id="f-Maintainer">Maintainer field</qref>, their names
- and email addresses should be listed here. The format of each
- entry is the same as that of the Maintainer field, and
- multiple entries must be comma separated. This is an optional
- field.
- -->
- パッケージの共同メンテナがいる場合、その人の名前と email
+ List of the names and email addresses of co-maintainers of the
+ package, if any. If the package has other maintainers besides
+ the one named in the <qref id="f-Maintainer">Maintainer
+ field</qref>, their names and email addresses should be listed
+ here. The format of each entry is the same as that of the
+ Maintainer field, and multiple entries must be comma
+ separated.
+ -->
+ パッケージの共同メンテナがいる場合、その人 (達) の名前と email
アドレスの一覧です。もし、パッケージに <qref
id="f-Maintainer">Maintainer フィールド</qref>
に記載した以外のメンテナがいる場合、その人たちの名前と email
アドレスをここに記載します。
書式はメンテナフィールドのものと同じであり、複数のエントリはコンマ ","
で区切ります。
- このフィールドはオプションです。
</p>
+
<p><!--
- Any parser that interprets the Uploaders field in
- <file>debian/control</file> must permit it to span multiple
- lines. Line breaks in an Uploaders field that spans multiple
- lines are not significant and the semantics of the field are
- the same as if the line breaks had not been present.
+ This is normally an optional field, but if
+ the <tt>Maintainer</tt> control field names a group of people
+ and a shared email address, the <tt>Uploaders</tt> field must
+ be present and must contain at least one human with their
+ personal email address.
+ -->
+ これは通常はオプションのフィールドですが、<tt>Maintainer</tt>
+ にメールアドレスを共有するグループが指定されている場合には <tt>Uploaders</tt>
+ フィールドの指定が必須で、ひとりの個人とその人の電子メールアドレスとが記載されていなければいけません。
+ </p>
- <file>debian/control</file> should permit it to span multiple
- lines<footnote>
- In the future, the Uploaders field in
- <file>debian/control</file> (but not other control files)
- will be permitted to span multiple lines and interpreting
- a multi-line Uploaders field shall be mandatory.
- </footnote>. Line breaks in an Uploaders field that spans
- multiple lines are not significant and the semantics of
- the field are the same as if the line breaks had not been
- present.-->
+ <p><!--
+ The Uploaders field in <file>debian/control</file> can be folded.
+ -->
<file>debian/control</file> ファイルの Uploaders
- フィールドを解釈するパーザは、この行が複数に渡ることを許容できなければなりません。
- Uploaders 中の改行は意味を持たず、改行がない場合と同じものとして解釈されます。
+ フィールドでは、折り返しが許されています。
</p>
</sect1>
@@ -4553,53 +4733,64 @@
</p>
<p><!--
- In the source package control file <file>.dsc</file>, this
- field may contain either the architecture
- wildcard <tt>any</tt> or a list of architectures and
- architecture wildcards separated by spaces. If a list is
- given, it may include (or consist solely of) the special
+ In the Debian source control file <file>.dsc</file>, this
+ field contains a list of architectures and architecture
+ wildcards separated by spaces. When the list contains the
+ architecture wildcard <tt>any</tt>, the only other value
+ allowed in the list is <tt>all</tt>.-->
+ Debian ソースコントロールファイル <file>.dsc</file>
+ の中には、スペースで区切られたアーキテクチャまたはアーキテクチャワイルドカードのリストを書くことができます。
+ リストにアーキテクチャワイルドカード <tt>any</tt> が含まれる場合は、他には
+ <tt>all</tt> のみをリストに記載することが許されます。
+ </p>
+
+ <p><!--
+ The list may include (or consist solely of) the special
value <tt>all</tt>. In other words, in <file>.dsc</file>
files unlike the <file>debian/control</file>, <tt>all</tt> may
occur in combination with specific architectures.
- The <tt>Architecture</tt> field in the source package control
+ The <tt>Architecture</tt> field in the Debian source control
file <file>.dsc</file> is generally constructed from
the <tt>Architecture</tt> fields in
the <file>debian/control</file> in the source package.
-->
- ソースパッケージの中の、ソースパッケージコントロールファイル
- <file>.dsc</file> の中には、アーキテクチャワイルドカード <tt>any</tt>
- か、スペースで区切られた複数のアーキテクチャまたはアーキテクチャワイルドカードのリストを書くことができます。
- リストが記載されている場合、特別な値 <tt>all</tt> (あるいはそれのみ)
+ リストには、特別な値 <tt>all</tt> (あるいはそれのみ)
を記載することが許されます。言い方を変えれば、<file>.dsc</file> は
<file>debian/control</file> とは異なり、<tt>all</tt>
は他の特定のアーキテクチャとの組み合わせとして記載することが許されています。
- ソースパッケージコントロールファイル <file>.dsc</file>
+ Debian ソースコントロールファイル <file>.dsc</file>
中の <tt>Architecture</tt> フィールドは、通常はソースパッケージの
<file>debian/control</file>
の <tt>Architecture</tt> フィールドから作成されます。
</p>
<p><!--
- Specifying <tt>any</tt> indicates that the source package
+ Specifying only <tt>any</tt> indicates that the source package
isn't dependent on any particular architecture and should
compile fine on any one. The produced binary package(s)
- will either be specific to whatever the current build
- architecture is or will be architecture-independent.-->
- <tt>any</tt> を指定した場合、ソースパッケージは特定のアーキテクチャへの依存性はなく、どのアーキテクチャでもコンパイルできるはずであるということを意味します。
- 作成されたバイナリパッケージ (群) は、現在のビルドアーキテクチャ依存か、アーキテクチャ非依存のいずれかになります。
+ will be specific to whatever the current build architecture is.
+ -->
+ <tt>any</tt> のみを指定した場合、ソースパッケージは特定のアーキテクチャへの依存性はなく、どのアーキテクチャでもコンパイルできるはずであるということを意味します。
+ 作成されたバイナリパッケージ (群) は、現在のビルドアーキテクチャ依存になります。
</p>
<p><!--
Specifying only <tt>all</tt> indicates that the source package
- will only build architecture-independent packages. If this is
- the case, <tt>all</tt> must be used rather than <tt>any</tt>;
- <tt>any</tt> implies that the source package will build at
- least one architecture-dependent package.
+ will only build architecture-independent packages.
-->
単に <tt>all</tt> は、ソースパッケージは特定のアーキテクチャに依存しないパッケージのみをビルドすることを示しています。
- この場合、<tt>any</tt> ではなく <tt>all</tt> を使用しなければいけません。
- <tt>any</tt> は、ソースパッケージから少なくともひとつはアーキテクチャ依存のパッケージが作成されることを意味しています。
</p>
+
<p><!--
+ Specifying <tt>any all</tt> indicates that the source package
+ isn't dependent on any particular architecture. The set of
+ produced binary packages will include at least one
+ architecture-dependant package and one architecture-independent
+ package.-->
+ <tt>any all</tt> が指定されている場合は、ソースパッケージは特定のいずれのアーキテクチャにも依存しないことを示しています。
+ 作成されるバイナリパッケージには、少なくともひとつのアーキテクチャ依存のパッケージと、ひとつのアーキテクチャ非依存のパッケージが含まれます。
+ </p>
+
+ <p><!--
Specifying a list of architectures or architecture wildcards
indicates that the source will build an architecture-dependent
package, and will only work correctly on the listed or
@@ -4647,8 +4838,8 @@
<p><!--
This is a boolean field which may occur only in the
control file of a binary package or in a per-package fields
- paragraph of a main source control data file.-->
- これは、バイナリパッケージのコントロールファイル中、またはメインのソース制御データファイル中のパッケージごとの段落に記述される Yes/No の値です。
+ paragraph of a source control data file.-->
+ これは、バイナリパッケージのコントロールファイル中、またはソース制御データファイル中のパッケージごとの段落に記述される yes/no の値です。
</p>
<p><!--
@@ -5007,12 +5198,14 @@
In a source or binary control file, the <tt>Description</tt>
field contains a description of the binary package, consisting
of two parts, the synopsis or the short description, and the
- long description. The field's format is as follows:-->
+ long description. It is a multiline field with the following
+ format:
+ -->
ソースおよびバイナリパッケージのコントロールファイル中で、
<tt>Description</tt>
フィールドにはバイナリパッケージの説明が含まれています。
この説明は、概要または短い説明と、長い説明の二つの部分からなります。
- 書式を以下に示します。
+ このフィールドは複数行を許す行であり、書式を以下に示します。
</p>
<p>
@@ -5032,10 +5225,13 @@
<item><!--
Those starting with a single space are part of a paragraph.
Successive lines of this form will be word-wrapped when
- displayed. The leading space will usually be stripped off.-->
+ displayed. The leading space will usually be stripped off.
+ The line must contain at least one non-whitespace character.
+ -->
空白一つから始まる行は、パラグラフ (節) の一部です。
この行に引き続く行は、表示の際にはワードラップが行われます。
最初の空白は通常 (表示の際は) 削除されます。
+ この行には少なくとも一文字の空白以外の文字が含まれていなければいけません。
</item>
<item><!--
Those starting with two or more spaces. These will be
@@ -5045,13 +5241,16 @@
will be allowed to trail off to the right. None, one or two
initial spaces may be deleted, but the number of spaces
deleted from each line will be the same (so that you can have
- indenting work correctly, for example).-->
+ indenting work correctly, for example). The line must
+ contain at least one non-whitespace character.
+ -->
空白二つ以上から始まる行は、そのまま表示されます。
表示部を水平方向に広げられない場合は、表示プログラムは内容を強制改行
(単語境界を考慮せずに改行を挿入する) します。
可能な場合は必要に応じて表示が右側にはみ出します。表示時に、0 個
から 2 個までの空白が削除されますが、この際に削除される空白の個数は各行で一緒です
(従って、インデントされた内容は正しく表示されます)。
+ この行には少なくとも一文字の空白以外の文字が含まれていなければいけません。
</item>
<item><!--
Those containing a single space followed by a single full stop
@@ -5089,8 +5288,8 @@
field contains a summary of the descriptions for the packages
being uploaded. For this case, the first line of the field
value (the part on the same line as <tt>Description:</tt>) is
- always empty. The content of the field is expressed as
- continuation lines, one line per package. Each line is
+ always empty. It is a multiline field, with one
+ line per package. Each line is
indented by one space and contains the name of a binary
package, a space, a hyphen (<tt>-</tt>), a space, and the
short description line from that package.
@@ -5099,7 +5298,7 @@
フィールドにアップロードされるパッケージの説明文の要約を含んでいます。
この場合、フィールド値の最初の行 (<tt>Description:</tt>
などと同じ行の部分) は常に空行です。
- フィールドの内容は、継続行にパッケージ毎に1行で記述されます。
+ これは複数行を許すフィールドで、パッケージ毎に論理行一行になります。
それぞれの行は、一つの空白でインデントされ、バイナリパッケージ名、空白、
ハイフン (<tt>-</tt>)、空白、パッケージから持ってきた短い説明という構成になっています。
</p>
@@ -5297,9 +5496,9 @@
<heading><tt>Changes</tt></heading>
<p><!--
- This field contains the human-readable changes data, describing
+ This multiline field contains the human-readable changes data, describing
the differences between the last version and the current one.-->
- このフィールドは、人が読むための変更点のデータを示します。
+ このフィールドは複数行を許す書式で、人が読むための変更点のデータを示します。
一つ前のバージョンと現在のバージョンとの相違を説明します。
</p>
@@ -5349,11 +5548,11 @@
<heading><tt>Binary</tt></heading>
<p><!--
- This field is a list of binary packages. Its syntax and
+ This folded field is a list of binary packages. Its syntax and
meaning varies depending on the control file in which it
appears.
-->
- このフィールドはバイナリパッケージのリストです。
+ このフィールドは折り返しを許す書式で、バイナリパッケージのリストです。
書式と意味は、このフィールドが現れたコントロールパッケージが何であるかに依存します。
</p>
@@ -5362,7 +5561,7 @@
packages which a source package can produce, separated by
commas<footnote>
A space after each comma is conventional.
- </footnote>. It may span multiple lines. The source package
+ </footnote>. The source package
does not necessarily produce all of these binary packages for
every architecture. The source control file doesn't contain
details of which architectures are appropriate for which of
@@ -5371,19 +5570,18 @@
ファイルに記載されている場合は、それはそのソースパッケージが生成できるバイナリパッケージのカンマで区切られたリストです <footnote>
慣行上、カンマの後には空白を入れます。
</footnote>。
- ソースパッケージでは、すべてのアーキテクチャで、ここに記載された全バイナリパッケージが生成できる必要はありません。
+ ソースパッケージでは、ここに記載された全バイナリパッケージがすべてのアーキテクチャで生成できる必要はありません。
個々のバイナリパッケージがどのアーキテクチャに対応しているかの詳細は、ソースコントロールファイルには含まれません。
</p>
<p><!--
When it appears in a <file>.changes</file> file, it lists the
names of the binary packages being uploaded, separated by
- whitespace (not commas). It may span multiple lines.
+ whitespace (not commas).
-->
<file>.changes</file> ファイル中では、このフィールドの値は、
実際にアップロードされているバイナリパッケージの名前の、空白
(カンマではなく) で区切られたリストです。
- 複数行に渡って記載することもできます。
</p>
</sect1>
@@ -5557,7 +5755,8 @@
information may be found. The content of this field is a
simple URL without any surrounding characters such as
<tt><></tt>.-->
- このパッケージのウェブサイトの URL です。可能な場合、望ましいのは元のソースが入手でき、追加の上流の文書や情報が入手できるようなサイトです。
+ このパッケージのウェブサイトの URL です。
+ 可能な場合、望ましいのは元のソースが入手でき、追加の上流の文書や情報が入手できるようなサイトです。
このフィールドの内容には、<tt><></tt> などで囲まない単純な
URL を記載します。
</p>
@@ -5568,14 +5767,14 @@
<!--and-->および <tt>Checksums-Sha256</tt></heading>
<p><!--
- These fields contain a list of files with a checksum and size
+ These multiline fields contain a list of files with a checksum and size
for each one. Both <tt>Checksums-Sha1</tt>
and <tt>Checksums-Sha256</tt> have the same syntax and differ
only in the checksum algorithm used: SHA-1
for <tt>Checksums-Sha1</tt> and SHA-256
for <tt>Checksums-Sha256</tt>.
-->
- これらのフィールドには、各ファイルに対しチェックサムとサイズが付けられたリストが格納されています。
+ これらのフィールドは複数行を許す書式で、各ファイルに対しチェックサムとサイズを付けたリストが格納されています。
<tt>Checksums-Sha1</tt> と <tt>Checksums-Sha256</tt>
は同じ書式で、使ったチェックサムアルゴリズムのみ異なります。
<tt>Checksums-Sha1</tt> では SHA-1 が用いられ、
@@ -5592,7 +5791,7 @@
size, a space, and the file name. For example (from
a <file>.changes</file> file):-->
<tt>Checksums-Sha1</tt> と <tt>Checksums-Sha256</tt>
- は、複数行からなるフィールドです。フィールドの最初の行の値
+ は、複数行を許すフィールドです。フィールドの最初の行の値
(つまり、<tt>Checksums-Sha1</tt> や <tt>Checksums-Sha256</tt>
と同じ行にある値) は、常に空白です。
実際のフィールドの内容は継続行に記載され、ファイル一つにつき一行です。
@@ -5626,18 +5825,44 @@
</p>
</sect1>
- </sect>
+ <sect1 id="f-DM-Upload-Allowed">
+ <heading><tt>DM-Upload-Allowed</tt></heading>
+ <p><!--
+ Indicates that Debian Maintainers may upload this package to
+ the Debian archive. The only valid value is <tt>yes</tt>. If
+ the field <tt>DM-Upload-Allowed: yes</tt> is present in the
+ source section of the source control file of the most recent
+ version of a package in unstable or experimental, the Debian
+ archive will accept uploads of this package signed with a key
+ in the Debian Maintainer keyring. See the General
+ Resolution <url id="http://www.debian.org/vote/2007/vote_003"
+ name="Endorse the concept of Debian Maintainers"> for more
+ details.-->
+ Debian メンテナに、対象パッケージを Debian アーカイブにアップロードして良いことを指示します。
+ このフィールドの有効な値は <tt>yes</tt> のみです。
+ もし、不安定版または実験版中のパッケージの最新版で、フィールド
+ <tt>DM-Upload-Allowed:yes</tt> がソースコントロールファイルのソースセクションに存在する場合は、
+ Debian メンテナキーリング内の鍵で署名されたアップロードを
+ Debian アーカイブは受け入れます。
+ この件の詳細は、一般決議 <url id="http://www.debian.org/vote/2007/vote_003"
+ name="Endorse the concept of Debian Maintainers (Debian メンテナの考え方を裏書する)">
+ を参照ください。
+ </p>
+ </sect1>
+
+ </sect>
+
<sect>
<!-- <heading>User-defined fields</heading>-->
<heading> ユーザ定義フィールド</heading>
<p><!--
Additional user-defined fields may be added to the
- source package control file. Such fields will be
+ Debian source control file. Such fields will be
ignored, and not copied to (for example) binary or
source package control files or upload control files.-->
- ソースパッケージコントロールファイルにはユーザ定義フィールドを追加することができます。
+ Debian ソースコントロールファイルにはユーザ定義フィールドを追加することができます。
これらは無視され、(例えば)
バイナリやソースパッケージコントロールファイル、アップロードコントロールファイルにはコピーされません。
</p>
@@ -5657,7 +5882,7 @@
field name after the hyphen will be used in the output
file. Where the letter <tt>B</tt> is used the field
will appear in binary package control files, where the
- letter <tt>S</tt> is used in source package control
+ letter <tt>S</tt> is used in Debian source control
files and where <tt>C</tt> is used in upload control
(<tt>.changes</tt>) files.-->
メインのソースコントロールファイルにおいて、<tt>X</tt>
@@ -5666,7 +5891,7 @@
そして出力ファイルには、フィールド名のハイフンの後に続く文字部のみが使用されます。
ここで、<tt>B</tt>
はバイナリパッケージコントロールファイルに使用されるとき、
- <tt>S</tt> ソースパッケージコントロールファイルに使用されるとき、
+ <tt>S</tt> Debian ソースコントロールファイルに使用されるとき、
<tt>C</tt> は、アップロードコントロールファイル
(<tt>.changes</tt>) に使用されるときに使われます。
</p>
@@ -5679,9 +5904,9 @@
XBS-Comment: I stand between the candle and the star.
</example>
<!--
- then the binary and source package control files will contain the
+ then the binary and Debian source control files will contain the
field-->
- バイナリとソースパッケージコントロールファイルは、次のフィールドを含みます。
+ バイナリと Debian ソースコントロールファイルは、次のフィールドを含みます。
<example>
Comment: I stand between the candle and the star.
</example>
@@ -5767,13 +5992,13 @@
<p> <!--
Broadly speaking the <prgn>preinst</prgn> is called before
- (a particular version of) a package is installed, and the
+ (a particular version of) a package is unpacked, and the
<prgn>postinst</prgn> afterwards; the <prgn>prerm</prgn>
before (a version of) a package is removed and the
<prgn>postrm</prgn> afterwards. -->
大まかに言えば、<prgn>preinst</prgn> は (ある特定のバージョンの)
- パッケージがインストールされる前に、<prgn>postinst</prgn>
- はインストールされた後に呼び出されます。<prgn>prerm</prgn>
+ パッケージが展開される前に、<prgn>postinst</prgn>
+ は展開された後に呼び出されます。<prgn>prerm</prgn>
は (あるバージョンの) パッケージが 削除される前に、
<prgn>postrm</prgn> は削除された後に呼び出されます。
</p>
@@ -5858,7 +6083,8 @@
メンテナスクリプトは制御端末がある状態で実行されているとは限らず、
ユーザとの対話ができることは保証されていません。
制御端末が提供されていない場合、非対話型で処理することができるようにしなければなりません。
- Debian Configuration Management Specification に準拠したプログラムを使ってプロンプトを出しているメンテナスクリプト
+ Debian Configuration Management Specification
+ に準拠したプログラムを使ってプロンプトを出しているメンテナスクリプト
(<ref id="maintscriptprompt"> 参照) は、非対話型の動作になった場合の扱いを、そのプログラムが行うと仮定して構いません。
</p>
@@ -5895,112 +6121,280 @@
メンテナスクリプトの呼ばれ方のまとめ
</heading>
- <p>
- <list compact="compact">
- <item>
- <var>new-preinst</var> <tt>install</tt>
+ <p><!--
+ What follows is a summary of all the ways in which maintainer
+ scripts may be called along with what facilities those scripts
+ may rely on being available at that time. Script names preceded
+ by <var>new-</var> are the scripts from the new version of a
+ package being installed, upgraded to, or downgraded to. Script
+ names preceded by <var>old-</var> are the scripts from the old
+ version of a package that is being upgraded from or downgraded
+ from.
+ -->
+ 以下は、メンテナスクリプトのすべての呼ばれ方と、
+ スクリプトが呼ばれる際に依存して良い機能についてまとめたものです。
+ スクリプト名で、<var>new-</var>
+ で始まるものは、インストール/更新/ダウングレード対象の新バージョンのパッケージから呼ばれるスクリプトです。
+ スクリプト名で、<var>old-</var>
+ で始まるものは、更新/ダウングレードされる対象の旧バージョンのパッケージから呼ばれるスクリプトです。
+ </p>
+
+ <p><!--
+ The <prgn>preinst</prgn> script may be called in the following
+ ways:-->
+ <prgn>preinst</prgn> スクリプトは以下のやり方で呼ばれる可能性があります。
+ <taglist>
+ <tag><var>new-preinst</var> <tt>install</tt></tag>
+ <tag><var>new-preinst</var> <tt>install</tt>
+ <var>old-version</var></tag>
+ <tag><var>new-preinst</var> <tt>upgrade</tt>
+ <var>old-version</var></tag>
+ <item><!--
+ The package will not yet be unpacked, so
+ the <prgn>preinst</prgn> script cannot rely on any files
+ included in its package. Only essential packages and
+ pre-dependencies (<tt>Pre-Depends</tt>) may be assumed to be
+ available. Pre-dependencies will have been configured at
+ least once, but at the time the <prgn>preinst</prgn> is
+ called they may only be in an unpacked or "Half-Configured"
+ state if a previous version of the pre-dependency was
+ completely configured and has not been removed since then.
+ -->
+ 問題のパッケージはまだ展開されていないため、<prgn>preinst</prgn>
+ スクリプトはパッケージに含まれるファイルに依存することはできません。
+ <tt>essential</tt> パッケージと、先行依存 (predependency)
+ (<tt>Pre-Depends</tt>) を指定したパッケージが提供されていることは期待してもかまいません。
+ 先行依存されたパッケージは少なくとも一回は設定されていますが、ただし
+ <prgn>preinst</prgn> が呼ばれた時点では単に展開された直後か、
+ "Half-Configured" 状態である可能性があります。
+ この状況は、先行依存を指定したパッケージの旧版がきちんと設定されていて、その後削除されていなかった場合に起きます。
</item>
- <item>
- <var>new-preinst</var> <tt>install</tt> <var>old-version</var>
+
+ <tag><var>old-preinst</var> <tt>abort-upgrade</tt>
+ <var>new-version</var></tag>
+ <item><!--
+ Called during error handling of an upgrade that failed after
+ unpacking the new package because the <tt>postrm
+ upgrade</tt> action failed. The unpacked files may be
+ partly from the new version or partly missing, so the script
+ cannot rely on files included in the package. Package
+ dependencies may not be available. Pre-dependencies will be
+ at least unpacked following the same rules as above, except
+ they may be only "Half-Installed" if an upgrade of the
+ pre-dependency failed.<footnote>
+ This can happen if the new version of the package no
+ longer pre-depends on a package that had been partially
+ upgraded.
+ </footnote>-->
+ 新パッケージの展開後に、アップグレードが <tt>postrm upgrade</tt>
+ 処理の失敗のために失敗した場合に、エラー処理で呼ばれます。
+ 展開されたファイルは一部が新しい版に置き換わっていたり、一部が削除されている可能性があるため、
+ パッケージに含まれるファイルに依存することはできません。
+ パッケージの依存関係は満たされていないかもしれません。
+ 先行依存 (pre-dependencies) 関係については、展開については上記と同じ考え方ですが、先行依存関係の更新に失敗した場合 "Half-Installed" 状態までに留まります <footnote>
+ この状況は、新版のパッケージが、この部分的に更新された先行依存対象のパッケージに対する先行依存関係を持たないよう変更された場合に発生します。
+ </footnote>。
</item>
- <item>
- <var>new-preinst</var> <tt>upgrade</tt> <var>old-version</var>
+ </taglist>
+ </p>
+
+ <p><!--
+ The <prgn>postinst</prgn> script may be called in the following
+ ways:-->
+ <prgn>postinst</prgn> スクリプトは以下のやり方で呼ばれる可能性があります。
+ <taglist>
+ <tag><var>postinst</var> <tt>configure</tt>
+ <var>most-recently-configured-version</var></tag>
+ <item><!--
+ The files contained in the package will be unpacked. All
+ package dependencies will at least be unpacked. If there
+ are no circular dependencies involved, all package
+ dependencies will be configured. For behavior in the case
+ of circular dependencies, see the discussion
+ in <ref id="binarydeps">.-->
+ パッケージに収録されたファイルは展開されます。
+ 依存するパッケージも少なくとも展開されています。
+ 巡回依存関係がない限り、依存するパッケージは設定状態となります。
+ 巡回依存関係がある場合の挙動は、<ref id="binarydeps">
+ の解説を参照ください。
</item>
- <item>
- <var>old-preinst</var> <tt>abort-upgrade</tt>
- <var>new-version</var>
+
+ <tag><var>old-postinst</var> <tt>abort-upgrade</tt>
+ <var>new-version</var></tag>
+ <tag><var>conflictor's-postinst</var> <tt>abort-remove</tt>
+ <tt>in-favour</tt> <var>package</var>
+ <var>new-version</var></tag>
+ <tag><var>postinst</var> <tt>abort-remove</tt></tag>
+ <tag><var>deconfigured's-postinst</var>
+ <tt>abort-deconfigure</tt> <tt>in-favour</tt>
+ <var>failed-install-package</var> <var>version</var>
+ [<tt>removing</tt> <var>conflicting-package</var>
+ <var>version</var>]</tag>
+ <item><!--
+ The files contained in the package will be unpacked. All
+ package dependencies will at least be "Half-Installed" and
+ will have previously been configured and not removed.
+ However, dependencies may not be configured or even fully
+ unpacked in some error situations.-->
+ パッケージに収録されたファイルは展開されます。
+ 依存するパッケージも少なくとも "Half-Installed"
+ 状態ではあり、その場合は以前に設定されていて削除されていない状態になっています。
+ ただし、依存関係にあるパッケージは設定状態ではないかもしれず、またエラーが起きている場合は展開に失敗している可能性もあります
+ <footnote><!--
+ For example, suppose packages foo and bar are installed
+ with foo depending on bar. If an upgrade of bar were
+ started and then aborted, and then an attempt to remove
+ foo failed because its <prgn>prerm</prgn> script failed,
+ foo's <tt>postinst abort-remove</tt> would be called with
+ bar only "Half-Installed".-->
+ 例えば、パッケージ foo と bar があり、foo は bar に依存し、foo
+ をインストールしようとしているとします。bar
+ のアップグレードが開始後異常終了し、その後 foo の削除が foo
+ の <prgn>prerm</prgn> スクリプトが失敗したために失敗したとします。
+ この場合、foo の <tt>postinst abort-remove</tt> が
+ bar が "Half-Installed" の状態で呼ばれます。
+ </footnote>。<!--
+ The <prgn>postinst</prgn> should still attempt any actions
+ for which its dependencies are required, since they will
+ normally be available, but consider the correct error
+ handling approach if those actions fail. Aborting
+ the <prgn>postinst</prgn> action if commands or facilities
+ from the package dependencies are not available is often the
+ best approach.-->
+ その場合でも、<prgn>postinst</prgn> は、依存関係が必要となる処理を試行すべきです。
+ これは、この依存関係は通常の場合は満たされているためです。
+ ただし、これらの処理が失敗した場合には適切なエラー処理動作を行うよう検討してください。
+ パッケージ依存関係で要求したコマンドや機能がなかった場合には <prgn>postinst</prgn>
+ を異常終了させるのが、多くの場合適切なやり方です。
</item>
- </list>
+ </taglist>
+ </p>
- <p>
- <list compact="compact">
- <item>
- <var>postinst</var> <tt>configure</tt>
- <var>most-recently-configured-version</var>
+ <p><!--
+ The <prgn>prerm</prgn> script may be called in the following
+ ways:-->
+ <prgn>prerm</prgn> スクリプトは以下のやり方で呼ばれる可能性があります。
+ <taglist>
+ <tag><var>prerm</var> <tt>remove</tt></tag>
+ <tag><var>old-prerm</var>
+ <tt>upgrade</tt><var>new-version</var></tag>
+ <tag><var>conflictor's-prerm</var> <tt>remove</tt>
+ <tt>in-favour</tt> <var>package</var>
+ <var>new-version</var></tag>
+ <tag><var>deconfigured's-prerm</var> <tt>deconfigure</tt>
+ <tt>in-favour</tt> <var>package-being-installed</var>
+ <var>version</var> [<tt>removing</tt>
+ <var>conflicting-package</var> <var>version</var>]</tag>
+ <item><!--
+ The package whose <prgn>prerm</prgn> is being called will be
+ at least "Half-Installed". All package dependencies will at
+ least be "Half-Installed" and will have previously been
+ configured and not removed. If there was no error, all
+ dependencies will at least be unpacked, but these actions
+ may be called in various error states where dependencies are
+ only "Half-Installed" due to a partial upgrade.-->
+ 内部の <prgn>prerm</prgn> が呼ばれるパッケージは、少なくとも
+ "Half-Installed" 状態です。すべての依存関係のパッケージは少なくとも
+ "Half-Installed" 状態で、その場合は以前に設定されており、削除されていない状態です。
+ これら処理が呼ばれる際には、すべての依存関係のパッケージはもしエラーがない場合には少なくとも展開状態ですが、
+ エラーがある場合は部分アップグレードに伴う "Half-Installed"
+ 状態になっており、更に様々なエラー状態の発生下で呼ばれます。
</item>
- <item>
- <var>old-postinst</var> <tt>abort-upgrade</tt>
- <var>new-version</var>
+
+ <tag><var>new-prerm</var> <tt>failed-upgrade</tt>
+ <var>old-version</var></tag>
+ <item><!--
+ Called during error handling when <tt>prerm upgrade</tt>
+ fails. The new package will not yet be unpacked, and all
+ the same constraints as for <tt>preinst upgrade</tt> apply.-->
+ <tt>prerm upgrade</tt> が失敗した場合のエラー処理で呼ばれます。
+ 新しいパッケージはまだ展開されておらず、<tt>preinst upgrade</tt>
+ と同じ制約条件が適用されます。
</item>
- <item>
- <var>衝突しているパッケージの postinst</var> <tt>abort-remove</tt>
- <tt>in-favour</tt> <var>package</var>
- <var>new-version</var>
+ </taglist>
+ </p>
+
+ <p><!--
+ The <prgn>postrm</prgn> script may be called in the following
+ ways:-->
+ <prgn>postrm</prgn> スクリプトは以下のやり方で呼ばれる可能性があります。
+ <taglist>
+ <tag><var>postrm</var> <tt>remove</tt></tag>
+ <tag><var>postrm</var> <tt>purge</tt></tag>
+ <tag><var>old-postrm</var> <tt>upgrade</tt>
+ <var>new-version</var></tag>
+ <tag><var>disappearer's-postrm</var> <tt>disappear</tt>
+ <var>overwriter</var> <var>overwriter-version</var></tag>
+ <item><!--
+ The <prgn>postrm</prgn> script is called after the package's
+ files have been removed or replaced. The package
+ whose <prgn>postrm</prgn> is being called may have
+ previously been deconfigured and only be unpacked, at which
+ point subsequent package changes do not consider its
+ dependencies. Therefore, all <prgn>postrm</prgn> actions
+ may only rely on essential packages and must gracefully skip
+ any actions that require the package's dependencies if those
+ dependencies are unavailable.-->
+ <prgn>postrm</prgn> スクリプトは、
+ パッケージのファイルが削除あるいは置き換えられたあとに呼ばれます。
+ <prgn>postrm</prgn>
+ が呼ばれたパッケージは、以前に設定解除され、展開されただけである可能性もあります。
+ この時点で、以降のパッケージの変更では依存関係は考慮されません。
+ このため、すべての <prgn>postrm</prgn> 処理は "essential"
+ パッケージのみに依存し、パッケージの依存関係が必要な処理はすべて、依存関係が満たされない場合に丁寧に処理を飛ばすようにしなければいけません
+ <footnote><!--
+ This is often done by checking whether the command or
+ facility the <prgn>postrm</prgn> intends to call is
+ available before calling it. For example:-->
+ これは、<prgn>postrm</prgn> で呼びたいコマンドや機能について、呼ぶ前に有無をチェックするようにして実現するのが普通です。
+ 例えば、以下のスクリプトが <prgn>postrm</prgn> に記載されていた場合、
+<example>
+if [ "$1" = purge ] && [ -e /usr/share/debconf/confmodule ]; then
+ . /usr/share/debconf/confmodule
+ db_purge
+fi
+</example><!--
+ in <prgn>postrm</prgn> purges the <prgn>debconf</prgn>
+ configuration for the package
+ if <package>debconf</package> is installed.-->
+ とします。<package>debconf</package> パッケージがインストールされているならば
+ 当該パッケージの <package>debconf</package> 設定が完全削除されます。
+ </footnote>。
</item>
- <item>
- <var>postinst</var> <tt>abort-remove</tt>
- </item>
- <item>
- <var>設定破棄されるパッケージの postinst</var>
- <tt>abort-deconfigure</tt> <tt>in-favour</tt>
- <var>failed-install-package</var> <var>version</var>
- [<tt>removing</tt> <var>conflicting-package</var>
- <var>version</var>]
- </item>
- </list>
- <p>
- <list compact="compact">
- <item>
- <var>prerm</var> <tt>remove</tt>
+ <tag><var>new-postrm</var> <tt>failed-upgrade</tt>
+ <var>old-version</var></tag>
+ <item><!--
+ Called when the old <tt>postrm upgrade</tt> action fails.
+ The new package will be unpacked, but only essential
+ packages and pre-dependencies can be relied on.
+ Pre-dependencies will either be configured or will be
+ "Unpacked" or "Half-Configured" but previously had been
+ configured and was never removed.-->
+ 古いパッケージの <tt>postrm upgrade</tt> 処理が失敗した場合に呼ばれます。
+ 新しいパッケージは展開されていますが、"essential"
+ パッケージと先行依存パッケージのみへの依存が可能です。
+ 先行依存したパッケージは設定されているか、"Unpacked" または
+ 以前に設定されてそれ以降削除されていない "Half-Configured" 状態です。
</item>
- <item>
- <var>old-prerm</var> <tt>upgrade</tt> <var>new-version</var>
- </item>
- <item>
- <var>new-prerm</var> <tt>failed-upgrade</tt>
- <var>old-version</var>
- </item>
- <item>
- <var>衝突しているパッケージの prerm</var> <tt>remove</tt>
- <tt>in-favour</tt> <var>package</var>
- <var>new-version</var>
- </item>
- <item>
- <var>設定破棄されるパッケージの prerm</var> <tt>deconfigure</tt>
- <tt>in-favour</tt> <var>package-being-installed</var>
- <var>version</var> [<tt>removing</tt>
- <var>conflicting-package</var>
- <var>version</var>]
- </item>
- </list>
- <p>
- <list compact="compact">
- <item>
- <var>postrm</var> <tt>remove</tt>
+ <tag><var>new-postrm</var> <tt>abort-install</tt></tag>
+ <tag><var>new-postrm</var> <tt>abort-install</tt>
+ <var>old-version</var></tag>
+ <tag><var>new-postrm</var> <tt>abort-upgrade</tt>
+ <var>old-version</var></tag>
+ <item><!--
+ Called before unpacking the new package as part of the
+ error handling of <prgn>preinst</prgn> failures. May assume
+ the same state as <prgn>preinst</prgn> can assume.-->
+ <prgn>preinst</prgn>
+ が失敗した場合のエラー処理の一環として新しいパッケージを展開する際に呼ばれます。
+ <prgn>preinst</prgn> で前提とできる状態と同じ状態を、前提とすることができます。
</item>
- <item>
- <var>postrm</var> <tt>purge</tt>
- </item>
- <item>
- <var>old-postrm</var> <tt>upgrade</tt>
- <var>new-version</var>
- </item>
- <item>
- <var>new-postrm</var> <tt>failed-upgrade</tt>
- <var>old-version</var>
- </item>
- <item>
- <var>new-postrm</var> <tt>abort-install</tt>
- </item>
- <item>
- <var>new-postrm</var> <tt>abort-install</tt>
- <var>old-version</var>
- </item>
- <item>
- <var>new-postrm</var> <tt>abort-upgrade</tt>
- <var>old-version</var>
- </item>
- <item>
- <var>削除されるパッケージの postrm</var> <tt>disappear</tt>
- <var>overwriter</var>
- <var>overwriter-version</var>
- </item>
- </list>
+ </taglist>
</p>
+ </sect>
-
<sect id="unpackphase"><heading><!-- Details of unpack phase of
installation or upgrade-->
インストール時とアップグレート時のパッケージの展開段階の詳細
@@ -6290,11 +6684,11 @@
behavior which, though deterministic is hard for the
system administrator to understand. It can easily
lead to "missing" programs if, for example, a package
- is installed which overwrites a file from another
+ is unpacked which overwrites a file from another
package, and is then removed again.-->
お互いのファイルに上書きするパッケージは、決定論的に決まるのではあるけれども、システム管理者には理解しがたい振る舞いをします。
この状態では、簡単にプログラムを「見失う」事態が起こり得ます。
- 例えば、他のパッケージからのファイルに上書きするようなパッケージをインストールして、それから、そのパッケージを削除することでこのような
+ 例えば、他のパッケージからのファイルに上書きするようなパッケージを展開して、それから、そのパッケージを削除することでこのような
「見失い」
<footnote>
<p><!--
@@ -6480,12 +6874,12 @@
If there was a conflicting package we go and do the
removal actions (described below), starting with the
removal of the conflicting package's files (any that
- are also in the package being installed have already
+ are also in the package being unpacked have already
been removed from the conflicting package's file list,
and so do not get removed now).-->
もし衝突するパッケージがあれば、次項に記載の削除作業へ移り、実行します。
削除作業は衝突するパッケージのファイルを削除することから始まります
- (インストールされたパッケージの中にもあるファイルは、すでに衝突するパッケージのファイルリストから削除されているので、
+ (展開されたパッケージの中にもあるファイルは、すでに衝突するパッケージのファイルリストから削除されているので、
この際に削除されてしまうことはありません)。
</item>
</enumlist>
@@ -6724,25 +7118,25 @@
specification subject to the rules in <ref
id="controlsyntax">, and must appear where it's necessary to
disambiguate; it is not otherwise significant. All of the
- relationship fields may span multiple lines. For
+ relationship fields can only be folded in source package control files. For
consistency and in case of future changes to
<prgn>dpkg</prgn> it is recommended that a single space be
used after a version relationship and before a version
number; it is also conventional to put a single space after
each comma, on either side of each vertical bar, and before
- each open parenthesis. When wrapping a relationship field, it
+ each open parenthesis. When opening a continuation line in a relationship field, it
is conventional to do so after a comma and before the space
following that comma.-->
空白は、<ref id="controlsyntax"> での規定に従って
バージョン設定のどの部分に入れてもかまいません。また、
必要ならば空白を挿入してあいまいさを取りのぞかなければいけません。
ただし、空白にそれ以上の意味はありません。
- 関係性を示すフィールドは複数行に渡ってもかまいません。
+ 関係性を示すフィールドは、ソースパッケージコントロールファイル中では折り返すことのみが許されます。
なお、データの一貫性や、将来の <prgn>dpkg</prgn> の変更を見越して、
バージョン関係記号の後ろ、つまりバージョン番号の前に、空白を一ついれることを推奨します。
慣行として、コンマのあとに空白を一つ入れ、パイプシンボル「|」
の両側にも空白を入れます。また、開括弧の前にも空白を一つ入れます。
- 関係性を示すフィールドを改行する場合には、慣行としてコンマの後か、コンマに続く空白の前で行ないます。
+ 関係性を示すフィールドの継続行を開始する場合には、慣行としてコンマの後か、コンマに続く空白の前で行ないます。
</p>
<p><!--
@@ -6759,7 +7153,8 @@
Relationships may be restricted to a certain set of
architectures. This is indicated in brackets after each
individual package name and the optional version specification.
- The brackets enclose a list of Debian architecture names
+ The brackets enclose a non-empty list of Debian architecture names
+ in the format described in <ref id="arch-spec">,
separated by whitespace. Exclamation marks may be prepended to
each of the names. (It is not permitted for some names to be
prepended with exclamation marks while others aren't.)
@@ -6767,7 +7162,8 @@
依存関係は、ある特定のアーキテクチャの集合に限定してもかまいません。
これは、それぞれのパッケージ名とオプションのバージョン指定の後に、
角括弧ではさんで指定します。角括弧のなかには、空白で区切られた Debian
- アーキテクチャの名前のリストを入れます。感嘆符 (!)
+ アーキテクチャの (<ref id="arch-spec"> で記載された書式に従う)
+ 名前の空でないリストを入れます。感嘆符 (!)
を一つまたは複数の各アーキテクチャ名の前に置くこともできます
(一部の名前に感嘆符を置き、他の名前に置かない、という指定は許されません)。
</p>
@@ -6858,12 +7254,14 @@
<p><!--
Relationships may also be restricted to a certain set of
- architectures using architecture wildcards. The syntax for
+ architectures using architecture wildcards in the format
+ described in <ref id="arch-wildcard-spec">. The syntax for
declaring such restrictions is the same as declaring
restrictions using a certain set of architectures without
architecture wildcards. For example:
-->
- 依存関係は、アーキテクチャワイルドカードを使って特定アーキテクチャへの制限を与えることも可能です。
+ 依存関係は、<ref id="arch-wildcard-spec">
+ で記載された仕様のアーキテクチャワイルドカードを使って特定アーキテクチャへの制限を与えることも可能です。
そのような制限の宣言の書式は、アーキテクチャワイルドカードを使わずにアーキテクチャを列挙する場合の宣言と同様です。例を以下に示します。
<example compact="compact">
Build-Depends: foo [linux-any], bar [any-i386], baz [!linux-any]
@@ -6981,37 +7379,59 @@
<prgn>apt-get</prgn>) だけが使います。
</p>
- <p> <!--
- For this reason packages in an installation run are usually
- all unpacked first and all configured later; this gives
- later versions of packages with dependencies on later
- versions of other packages the opportunity to have their
- dependencies satisfied.-->
- このため、最初のインストール時にはすべてのパッケージがまず展開されて、その後すべてのパッケージを設定 (configure) します。
- こうすることによって、現存のシステムに存在しない、
- 新しいバージョンのパッケージに依存関係を宣言している新しいパッケージの依存関係を満たすことができます。
+ <p><!--
+ Since <tt>Depends</tt> only places requirements on the order in
+ which packages are configured, packages in an installation run
+ are usually all unpacked first and all configured later.-->
+ <tt>Depends</tt> はパッケージが設定されるべき順番に対する要求を指定するのみであり、インストール時はパッケージは普通はまず全て展開され、その後で設定が行われます
+ <footnote><!--
+ This approach makes dependency resolution easier. If two
+ packages A and B are being upgraded, the installed package A
+ depends on exactly the installed package B, and the new
+ package A depends on exactly the new package B (a common
+ situation when upgrading shared libraries and their
+ corresponding development packages), satisfying the
+ dependencies at every stage of the upgrade would be
+ impossible. This relaxed restriction means that both new
+ packages can be unpacked together and then configured in their
+ dependency order.-->
+ この方法により依存関係の解決が容易になります。もし二つのパッケージ A と B
+ をアップグレードしようとする場合、インストールされたパッケージ A
+ がインストールされたパッケージ B に厳密に依存し、また新しいパッケージ A
+ が新しいパッケージ B に厳密に依存しているとします。
+ これは、共有ライブラリと、それに対応した開発用のパッケージをアップグレードする場合に普通に発生する状況です。
+ この場合、依存関係をアップグレードのすべての途中過程で満たすことは不可能です。
+ 上記のように制限を緩めることは、二つの新しいパッケージを一緒に展開し、その後で依存関係に従って設定してよいということです。
+ </footnote>。
</p>
<p><!--
- In case of circular dependencies, since installation or
- removal order honoring the dependency order can't be
- established, dependency loops are broken at some point
- (based on rules below), and some packages may not be able to
- rely on their dependencies being present when being
- installed or removed, depending on which side of the break
- of the circular dependency loop they happen to be on. If one
- of the packages in the loop has no postinst script, then the
- cycle will be broken at that package, so as to ensure that
- all postinst scripts run with the dependencies properly
- configured if this is possible. Otherwise the breaking point
- is arbitrary.
- -->
- 依存関係がループになっている場合には、インストールと削除の順序は依存関係を尊重した順序では行うことができなかったり、
- 依存関係のループがどこか予想できない場所で崩れたり、一部のパッケージがインストールや削除時に依存関係が満たされていることを期待できなくなります。
- このなかのいずれが起こるかは、この依存関係のループがどちらの側で崩れるかによります。
- もしループを構成しているパッケージの一つが postinst スクリプトを含んでいない場合、ループの輪はこのパッケージで破られます。
- これは、依存関係が適切に設定されている場合可能であった postinst スクリプトがすべて実行されるよう保証しようとしているためです。
+ If there is a circular dependency among packages being installed
+ or removed, installation or removal order honoring the
+ dependency order is impossible, requiring the dependency loop be
+ broken at some point and the dependency requirements violated
+ for at least one package. Packages involved in circular
+ dependencies may not be able to rely on their dependencies being
+ configured before they themselves are configured, depending on
+ which side of the break of the circular dependency loop they
+ happen to be on. If one of the packages in the loop has
+ no <prgn>postinst</prgn> script, then the cycle will be broken
+ at that package; this ensures that all <prgn>postinst</prgn>
+ scripts are run with their dependencies properly configured if
+ this is possible. Otherwise the breaking point is arbitrary.
+ Packages should therefore avoid circular dependencies where
+ possible, particularly if they have <prgn>postinst</prgn>
+ scripts.
+ -->
+ インストールまたは削除しようとするパッケージ間に巡回依存関係がある場合には、インストールと削除の順序は依存関係を尊重した順序では行うことは不可能で、
+ 依存関係のループがどこかの時点で崩れたり、すくなくともひとつのパッケージではインストールや削除時に依存関係が満たされていることを期待できなくなります。
+ 巡回依存関係をもつパッケージは、自分が設定される前に依存関係にあるパッケージが設定されていることを前提とすることはできず、状況はこの依存関係のループがどちらの側で崩れるかによります。
+ もしループを構成しているパッケージの一つが <prgn>postinst</prgn>
+ スクリプトを含んでいない場合、ループの輪はこのパッケージで破られます。
+ これにより、すべての <prgn>postinst</prgn> スクリプトが、可能な限り依存関係が適切に満たされた状態で実行されるよう保証しようとしているためです。
上記の条件が満たされない場合、破られるポイントは予測できません。
+ このため、パッケージは可能な限り、特に <prgn>postinst</prgn>
+ スクリプトを持っている場合には、巡回依存関係を避けるべきです。
</p>
<p> <!--
@@ -7030,9 +7450,12 @@
This declares an absolute dependency. A package will
not be configured unless all of the packages listed in
its <tt>Depends</tt> field have been correctly
- configured.-->
+ configured (unless there is a circular dependency as
+ described above).
+ -->
これは、完全に依存するパッケージを宣言します。
- パッケージは <tt>Depends</tt> に列挙されたパッケージのすべてが正しく設定されていなければ設定できません。
+ パッケージは、上記の巡回依存関係がない限り、<tt>Depends</tt>
+ に列挙されたパッケージのすべてが正しく設定されていなければ設定できません。
</p>
<p> <!--
@@ -7045,17 +7468,47 @@
</p>
<p><!--
The <tt>Depends</tt> field should also be used if the
- <prgn>postinst</prgn>, <prgn>prerm</prgn> or
- <prgn>postrm</prgn> scripts require the package to be
- present in order to run. Note, however, that the
- <prgn>postrm</prgn> cannot rely on any non-essential
- packages to be present during the <tt>purge</tt>
- phase.-->
+ <prgn>postinst</prgn> or <prgn>prerm</prgn> scripts
+ require the depended-on package to be unpacked or
+ configured in order to run. In the case of <tt>postinst
+ configure</tt>, the depended-on packages will be unpacked
+ and configured first. (If both packages are involved in a
+ dependency loop, this might not work as expected; see the
+ explanation a few paragraphs back.) In the case
+ of <prgn>prerm</prgn> or other <prgn>postinst</prgn>
+ actions, the package dependencies will normally be at
+ least unpacked, but they may be only "Half-Installed" if a
+ previous upgrade of the dependency failed.
+ -->
<tt>Depends</tt> は <prgn>postinst</prgn>、<prgn>prerm</prgn>
- 及び <prgn>postrm</prgn> の各スクリプトを実行するために特定のパッケージが必要になる場合にも指定すべきです。
- 但し、<prgn>postrm</prgn> は <tt>purge</tt> の際には
- <tt>Essential</tt> でないパッケージに依存することはできません。
+ の各スクリプトを実行するために特定のパッケージが展開されているか、設定されていることが必要になる場合にも指定すべきです。
+ <tt>postinst configure</tt> の場合は、依存されたパッケージはまず展開され、設定されます
+ (巡回依存関係に両方のパッケージが含まれる場合、事は期待通りには進みません。
+ 数節前の説明を参照ください)。<prgn>prerm</prgn> と、これいがいの <prgn>postinst</prgn>
+ 操作時には、依存パッケージは通常少なくとも展開されていますが、その依存関係にあるパッケージの以前のアップグレードが失敗していた場合、
+ "Half-Installed" 状態でとどまっている可能性があります。
</p>
+
+ <p><!--
+ Finally, the <tt>Depends</tt> field should be used if the
+ depended-on package is needed by the <prgn>postrm</prgn>
+ script to fully clean up after the package removal. There
+ is no guarantee that package dependencies will be
+ available when <prgn>postrm</prgn> is run, but the
+ depended-on package is more likely to be available if the
+ package declares a dependency (particularly in the case
+ of <tt>postrm remove</tt>). The <prgn>postrm</prgn>
+ script must gracefully skip actions that require a
+ dependency if that dependency isn't available.-->
+ 最後に、依存するパッケージの存在が <prgn>postrm</prgn>
+ スクリプト中でパッケージ削除の際のクリーンアップで必要になる場合、<tt>Depends</tt>
+ フィールドを指定すべきです。
+ <prgn>postrm</prgn> が実行される際にパッケージの依存関係が満たされている保証はありませんが、
+ 依存関係を指定した場合依存対象のパッケージがある可能性がそれだけ高くなります
+ (特に、<tt>postrm remove</tt> の際には)。<prgn>postrm</prgn>
+ スクリプトは、依存関係が満たされない場合、依存を必要とする処理を丁寧に
+ (文句を言わずに) 飛ばさなければいけません。
+ </p>
</item>
<tag><tt>Recommends</tt></tag>
@@ -7135,17 +7588,35 @@
フィールドのバージョン部分を満たしている必要があります。
</p>
<p><!--
- When the package declaring a pre-dependency is about
- to be <em>configured</em>, the pre-dependency will be
- treated as a normal <tt>Depends</tt>, that is, it will
- be considered satisfied only if the depended-on
- package has been correctly configured.-->
+ When the package declaring a pre-dependency is about to
+ be <em>configured</em>, the pre-dependency will be treated
+ as a normal <tt>Depends</tt>. It will be considered
+ satisfied only if the depended-on package has been
+ correctly configured. However, unlike
+ with <tt>Depends</tt>, <tt>Pre-Depends</tt> does not
+ permit circular dependencies to be broken. If a circular
+ dependency is encountered while attempting to honor
+ <tt>Pre-Depends</tt>, the installation will be aborted.
+ -->
先行依存を宣言したパッケージを <em>設定</em>
しようとする場合、先行依存関係は通常の <tt>Depends</tt>
- と同じ、すなわち依存するパッケージが正常に設定済である場合にのみ満たされていると判断されます。
+ と同じように扱われます。
+ すなわち依存するパッケージが正常に設定済である場合にのみ満たされていると判断されます。
+ ただし、<tt>Depends</tt> とは異なり、<tt>Pre-Depends</tt>
+ は巡回依存関係が崩れることを許しません。
+ <tt>Pre-Depends</tt> を尊重しようとした際に巡回依存関係を発見した場合、
+ インストール処理は異常終了します。
これは、通常の <tt>Depends</tt> の場合と同じです。
+ </p>
+ <p><!--
+ <tt>Pre-Depends</tt> are also required if the
+ <prgn>preinst</prgn> script depends on the named package.
+ It is best to avoid this situation if possible.-->
+ <tt>Pre-Depends</tt> は、<prgn>preinst</prgn>
+ スクリプトが指定されたパッケージに依存している場合にも必要になります。
+ 但し、この状況はできるだけ避けるのが賢明です。
+ </p>
- </p>
<p> <!--
<tt>Pre-Depends</tt> should be used sparingly,
preferably only by packages whose premature upgrade or
@@ -7157,13 +7628,14 @@
</p>
<p><!--
- <tt>Pre-Depends</tt> are also required if the
- <prgn>preinst</prgn> script depends on the named
- package. It is best to avoid this situation if
- possible.-->
- <tt>Pre-Depends</tt> は、<prgn>preinst</prgn>
- スクリプトが指定されたパッケージに依存している場合にも必要になります。
- 但し、この状況はできるだけ避けるのが賢明です。
+ You should not specify a <tt>Pre-Depends</tt> entry for a
+ package before this has been discussed on the
+ <tt>debian-devel</tt> mailing list and a consensus about
+ doing that has been reached. See <ref id="dependencies">.
+ -->
+ <tt>Pre-Depends</tt> エントリは、予め <tt>debian-devel</tt>
+ メーリングリストで議論を行い、そうしたほうが良いとの合意を経ないで使用すべきではありません。
+ <ref id="dependencies"> を参照ください。
</p>
</item>
</taglist>
@@ -7193,12 +7665,12 @@
<p><!--
When one binary package declares that it breaks another,
<prgn>dpkg</prgn> will refuse to allow the package which
- declares <tt>Breaks</tt> be installed unless the broken
+ declares <tt>Breaks</tt> to be unpacked unless the broken
package is deconfigured first, and it will refuse to
allow the broken package to be reconfigured.-->
あるバイナリパッケージが他を壊すと宣言した場合、<prgn>dpkg</prgn>
により、壊されたパッケージが設定解除されるまでは <tt>Breaks</tt>
- を宣言したパッケージの許可を拒否されます。
+ を宣言したパッケージの展開は拒否されます。
また、壊されたパッケージの再設定も拒否されます。
</p>
@@ -7271,26 +7743,26 @@
競合するバイナリパッケージ - <tt>Conflicts</tt></heading>
<p> <!--
- When one binary package declares a conflict with another
- using a <tt>Conflicts</tt> field, <prgn>dpkg</prgn> will
- refuse to allow them to be installed on the system at the
- same time. This is a stronger restriction than <tt>Breaks</tt>,
- which just prevents both packages from being configured at the
- same time. Conflicting packages cannot be unpacked on the
- system at the same time.
+ When one binary package declares a conflict with another using
+ a <tt>Conflicts</tt> field, <prgn>dpkg</prgn> will refuse to
+ allow them to be unpacked on the system at the same time. This
+ is a stronger restriction than <tt>Breaks</tt>, which prevents
+ the broken package from being configured while the breaking
+ package is in the "Unpacked" state but allows both packages to
+ be unpacked at the same time.
-->
あるバイナリパッケージが他のパッケージとの競合関係を
<tt>Conflicts</tt> フィールドを使って宣言している場合、
<prgn>dpkg</prgn>
- は、それら二つのパッケージを同時にインストールすることを拒否します。
- これは、両方のパッケージが同時に設定されることだけを妨げる
- <tt>Breaks</tt> より強い制約です。Conflict
- するパッケージは、同時にシステム上でアンパックすることが許されないのです。
+ は、そのシステム上でそれら二つのパッケージを同時に展開することを拒否します。
+ これは、<tt>Breaks</tt> より強い制約です。
+ <tt>Breaks</tt> では、<tt>Breaks</tt>
+ を指定したパッケージの展開後には「壊された」パッケージの再設定は妨げられますが、両方のパッケージを展開することは可能なためです。
</p>
<p> <!--
- If one package is to be installed, the other must be removed
- first. If the package being installed is marked as replacing
+ If one package is to be unpacked, the other must be removed
+ first. If the package being unpacked is marked as replacing
(see <ref id="replaces">, but note that <tt>Breaks</tt> should
normally be used in this case) the one on the system, or the one
on the system is marked as deselected, or both packages are
@@ -7301,8 +7773,8 @@
error when the installed package is <tt>Essential</tt>, but the
new package is not.
-->
- このようなパッケージをインストールするには、もう一方のパッケージをまず削除しなければいけません。
- 実際の動作としては、インストールしようとしているパッケージに、システム上にあるパッケージを置きかえる
+ このようなパッケージを展開するには、もう一方のパッケージをまず削除しなければいけません。
+ 実際の動作としては、展開しようとしているパッケージに、システム上にあるパッケージを置きかえる
(<ref id="replaces"> 参照。但しこの場合は通常は <tt>Breaks</tt> を使うべきです。)
ようにマークが付けられている場合、システムにインストールされているパッケージに選択を解除するようマークが付けられている場合、また両方のパッケージに
<tt>Essential</tt> という宣言がされている場合は、
@@ -7367,9 +7839,10 @@
continue to do so,-->
二つのパッケージが同じファイルを提供し、かつその状況を続ける場合</item>
<item><!--in conjunction with <tt>Provides</tt> when only one
- package providing a given virtual facility may be installed
+ package providing a given virtual facility may be unpacked
at a time (see <ref id="virtual">),-->
- <tt>Provides</tt> と組み合わせて、指定された仮想パッケージ機能を提供するパッケージをインストールするのは、どの時点でも一つにしたい場合 (<ref id="virtual"> 参照)</item>
+ <tt>Provides</tt> と組み合わせて、指定された仮想パッケージ機能を提供するパッケージを展開するのは、どの時点でも一つにしたい場合
+ (<ref id="virtual"> 参照)</item>
<item><!--in other cases where one must prevent simultaneous
installation of two packages for reasons that are ongoing
(not fixed in a later version of one of the packages) or
@@ -7732,11 +8205,11 @@
Conflicts: mail-transport-agent
Replaces: mail-transport-agent
</example><!--
- ensuring that only one MTA can be installed at any one
+ ensuring that only one MTA can be unpacked at any one
time. See <ref id="virtual"> for more information about this
example.
-->
- MTA が一度に一つだけインストールされているようにすることができます。
+ MTA が一度に一つだけ展開されているようにすることができます。
このことについては <ref id="virtual"> でより詳しく説明されています。
</sect1>
</sect>
@@ -8153,22 +8626,16 @@
library directories of the dynamic linker (which are currently
<file>/usr/lib</file> and <file>/lib</file>) or a directory that is
listed in <file>/etc/ld.so.conf</file><footnote>
- These are currently
- <list compact="compact">
- <item>/usr/local/lib</item>
- <item>/usr/lib/libc5-compat</item>
- <item>/lib/libc5-compat</item>
+ These are currently <file>/usr/local/lib</file> plus
+ directories under <file>/lib</file> and <file>/usr/lib</file>
+ matching the multiarch triplet for the system architecture.
</list>
</footnote>-->
ダイナミックリンカの標準のディレクトリ (現在は <file>/usr/lib</file> と
<file>/lib</file> です)、または <file>/etc/ld.so.conf</file>
に列挙されたディレクトリ <footnote><p>
- これは、現在下記です。
- <list compact="compact">
- <item>/usr/local/lib</item>
- <item>/usr/lib/libc5-compat</item>
- <item>/lib/libc5-compat</item>
- </list>
+ これは、現在 <file>/usr/local/lib</file> および <file>/lib</file>
+ と <file>/usr/lib</file> 以下のシステムアーキテクチャに対応した多アーキテクチャ三つ組み文字に対応したディレクトリです。
</p></footnote>
<!--
must use <prgn>ldconfig</prgn> to update the shared library
@@ -8210,7 +8677,7 @@
</list>
<footnote><!--
<p>During install or upgrade, the preinst is called before
- the new files are installed, so calling "ldconfig" is
+ the new files are unpacked, so calling "ldconfig" is
pointless. The preinst of an existing package can also be
called if an upgrade fails. However, this happens during
the critical time when a shared libs may exist on-disk
@@ -8247,7 +8714,7 @@
temporary filename.
</p>-->
<p>インストールまたはアップグレードの際には、preinst
- は新しいファイルがインストールする前に呼ばれますから、ここで
+ は新しいファイルが展開される前に呼ばれますから、ここで
"ldconfig" を呼ぶことは無意味です。
すでにインストールされているパッケージの preinst
はアップグレードが失敗した際にも呼ばれますが、これは共有ライブラリが一時的名称でディスク上にあるかもしれない微妙なタイミングであり、ここで
@@ -8439,11 +8906,11 @@
<ref id="conflicts">) to ensure that the user only installs one
development version at a time (as different development versions are
likely to have the same header files in them, which would cause a
- filename clash if both were installed).-->
+ filename clash if both were unpacked).-->
複数の開発用ライブラリが存在する場合、開発用のパッケージは一度に一バージョンのみインストールされることを保証するため、恐らく
<prgn>dpkg</prgn> の競合 (Conflict) メカニズム (<ref id="conflicts">
参照) を使う必要があるでしょう。
- 異なった開発用のパッケージといえども同じヘッダファイルを持つことが多いですから、二種以上をインストールしようとするとファイル名衝突が起こるためです。
+ 異なった開発用のパッケージといえども同じヘッダファイルを持つことが多いですから、二種以上を展開しようとするとファイル名衝突が起こるためです。
</p>
<p><!--
@@ -9084,12 +9551,13 @@
<heading>ファイルシステム構造</heading>
<p>
<!--
- The location of all installed files and directories must
- comply with the Filesystem Hierarchy Standard (FHS),
- version 2.3, with the exceptions noted below, and except
- where doing so would violate other terms of Debian
- Policy. The following exceptions to the FHS apply:-->
- インストールされるファイルやディレクトリの配置は、それが他で記載されている
+ The location of all files and directories must comply with the
+ Filesystem Hierarchy Standard (FHS), version 2.3, with the
+ exceptions noted below, and except where doing so would
+ violate other terms of Debian Policy. The following
+ exceptions to the FHS apply:
+ -->
+ 全てのファイルやディレクトリの配置は、それが他で記載されている
Debian ポリシーの項目に違反しない限り、そして以下の例外を除いて、
すべて Filesystem Hierarchy Standard (FHS) バージョン 2.3
に従わなければなりません。以下に FHS に対する例外を列挙します。
@@ -9135,13 +9603,13 @@
<file>/lib/<var>triplet</var></file> and
<file>/usr/lib/<var>triplet</var></file>, where
<tt><var>triplet</var></tt> is the value returned by
- <tt>dpkg-architecture -qDEB_HOST_GNU_TYPE</tt> for the
+ <tt>dpkg-architecture -qDEB_HOST_MULTIARCH</tt> for the
architecture of the package. Packages may <em>not</em>
install files to any <var>triplet</var> path other
than the one matching the architecture of that package;
for instance, an <tt>Architecture: amd64</tt> package
containing 32-bit x86 libraries may not install these
- libraries to <file>/usr/lib/i486-linux-gnu</file>.-->
+ libraries to <file>/usr/lib/i386-linux-gnu</file>.-->
オブジェクトファイル、内部で使うバイナリ、ライブラリ
(<file>libc.so.*</file> を含む) は、<file>/lib{,32}</file>
または <file>/lib{,32}</file>
@@ -9150,12 +9618,12 @@
および <file>/usr/lib/<var>triplet</var></file>
以下に置くことも許されています。ここで
<tt><var>triplet</var></tt> は対象アーキテクチャでの
- <tt>dpkg-architecture -qDEB_HOST_GNU_TYPE</tt> の返す値です。
+ <tt>dpkg-architecture -qDEB_HOST_MULTIARCH</tt> の返す値です。
パッケージが、その対象アーキテクチャ以外の <var>triplet</var>
パスにファイルをインストールすることは許されていません。
例えば、<tt>Architecture: amd64</tt> であるパッケージに
32-bit x86 向けライブラリが含まれている場合、
- それらのライブラリを <file>/usr/lib/i486-linux-gnu</file>
+ それらのライブラリを <file>/usr/lib/i386-linux-gnu</file>
にインストールすることは許されません
<footnote><!--
This is necessary in order to reserve the directories for
@@ -9215,7 +9683,37 @@
にシンボリックリンクを置かなければならないという制約は、推奨に緩和されています。
</p>
</item>
- <item>
+ <item>
+ <p><!--
+ The additional directory <file>/run</file> in the root
+ file system is allowed. <file>/run</file>
+ replaces <file>/var/run</file>, and the
+ subdirectory <file>/run/lock</file>
+ replaces <file>/var/lock</file>, with
+ the <file>/var</file> directories replaced by symlinks
+ for backwards compatibility. <file>/run</file>
+ and <file>/run/lock</file> must follow all of the
+ requirements in the FHS for <file>/var/run</file>
+ and <file>/var/lock</file>, respectively, such as file
+ naming conventions, file format requirements, or the
+ requirement that files be cleared during the boot
+ process. Files and directories residing
+ in <file>/run</file> should be stored on a temporary
+ file system.-->
+ root ファイルシステムに追加ディレクトリ <file>/run</file>
+ があることは許されます。<file>/run</file> は
+ <file>/var/run</file> を置き換えるもので、そのサブディレクトリ
+ <file>/run/lock</file> は <file>/var/lock</file>
+ を置き換えるものであり、<file>/var</file>
+ 以下のディレクトリは後方互換性のためシンボリックリンクに置き換えられます。
+ <file>/run</file> と <file>/run/lock</file> は、FHS での
+ <file>/var/run</file> と <file>/var/lock</file> に対する全ての要求
+ (ファイル命名規則、ファイルフォーマットの制限、ブート時のファイル初期化への要求など)
+ に従っていなければいけません。<file>/run</file>
+ にあるファイルおよびディレクトリは、一時ファイルシステムに格納されているべきです。
+ </p>
+ </item>
+ <item>
<p><!--
The following directories in the root filesystem are
additionally allowed: <file>/sys</file> and
@@ -9229,6 +9727,22 @@
</footnote>。
</p>
</item>
+ <item>
+ <p><!--
+ On GNU/Hurd systems, the following additional
+ directories are allowed in the root
+ filesystem: <file>/hurd</file>
+ and <file>/servers</file>.-->
+ GNU/Hurd システムでは、<file>/hurd</file> と <file>/servers</file>
+ の 2 ディレクトリも、追加で root ファイルシステムに置くことが許されます
+ <footnote><!--
+ These directories are used to store translators and as
+ a set of standard names for mount points,
+ respectively.-->
+ これらのディレクトリはトランスレータの格納と、マウントポイントの標準名の格納に使われます。
+ </footnote>。
+ </p>
+ </item>
</enumlist>
</p>
@@ -9343,12 +9857,11 @@
For example, the <tt>emacsen-common</tt> package could
contain something like
<example compact="compact">
-if [ ! -e /usr/local/share/emacs ]
-then
- if mkdir /usr/local/share/emacs 2>/dev/null
- then
- chown root:staff /usr/local/share/emacs
- chmod 2775 /usr/local/share/emacs
+if [ ! -e /usr/local/share/emacs ]; then
+ if mkdir /usr/local/share/emacs 2>/dev/null; then
+ if chown root:staff /usr/local/share/emacs; then
+ chmod 2775 /usr/local/share/emacs || true
+ fi
fi
fi
</example>
@@ -9438,6 +9951,40 @@
は、スプールが依然として物理的にその場所に置かれている場合でも、使うべきではありません。
</p>
</sect1>
+
+ <sect1 id="fhs-run">
+ <!--<heading><file>/run</file> and <file>/run/lock</file></heading>-->
+ <heading><file>/run</file> および <file>/run/lock</file></heading>
+
+ <p><!--
+ The directory <file>/run</file> is cleared at boot, normally
+ by being a mount point for a temporary file system. Packages
+ therefore must not assume that any files or directories
+ under <file>/run</file> other than <file>/run/lock</file>
+ exist unless the package has arranged to create those files or
+ directories since the last reboot. Normally, this is done by
+ the package via an init script. See <ref id="writing-init">
+ for more information.-->
+ ディレクトリ <file>/run</file> はブート時に初期化されます。
+ 通常は、この動作は一時ファイルシステムのマウントポイントとして実現されています。
+ パッケージは、したがって、最後のリブート以降にそのパッケージが作成しているのでない限り、
+ <file>/run/lock</file> 以外のファイルまたはディレクトリの存在を仮定してはいけません。
+ 通常、このような作成はパッケージの init スクリプトで行われます。
+ 詳細は <ref id="writing-init"> を参照ください。
+ </p>
+
+ <p><!--
+ Packages must not include files or directories
+ under <file>/run</file>, or under the
+ older <file>/var/run</file> and <file>/var/lock</file> paths.
+ The latter paths will normally be symlinks or other
+ redirections to <file>/run</file> for backwards compatibility.-->
+ パッケージは、<file>/run</file> 以下、及び古い <file>/var/run</file>
+ または <file>/var/lock</file> パス以下にファイルまたはディレクトリを収録していてはいけません。
+ 後者のパスは、今後は後方互換性のために <file>/run</file>
+ 以下へ、シンボリックリンクまたは他の方法で転送されるようになります。
+ </p>
+ </sect1>
</sect>
<sect id="users_and_groups">
@@ -10008,22 +10555,21 @@
が消されていた場合にも失敗することなく妥当に振る舞わなければいけません。
</p>
<p><!--
- <file>/var/run</file> and <file>/var/lock</file> may be mounted
- as temporary filesystems<footnote>
- For example, using the <tt>RAMRUN</tt> and <tt>RAMLOCK</tt>
- options in <file>/etc/default/rcS</file>.
- </footnote>, so the <file>init.d</file> scripts must handle this
- correctly. This will typically amount to creating any required
- subdirectories dynamically when the <file>init.d</file> script
- is run, rather than including them in the package and relying on
- <prgn>dpkg</prgn> to create them.-->
- <file>/var/run</file> および <file>/var/lock</file> は一時ファイルシステムとしてマウントされている場合があるため<footnote>
- 例えば、<file>/etc/default/rcS</file> で <tt>RAMRUN</tt> や <tt>RAMLOCK</tt>
- オプションを用いた場合などです。
- </footnote>、<file>init.d</file>
- はそのような場合を正しく処理できなければいけません。これは <file>init.d</file>
- 実行時に、パッケージにサブディレクトリを含めて <prgn>dpkg</prgn>
- に作成を任せるのではなく、必要なディレクトリを動的に生成することによって実現可能です。
+ Files and directories under <file>/run</file>, including ones
+ referred to via the compatibility paths <file>/var/run</file>
+ and <file>/var/lock</file>, are normally stored on a temporary
+ filesystem and are normally not persistent across a reboot.
+ The <file>init.d</file> scripts must handle this correctly.
+ This will typically mean creating any required subdirectories
+ dynamically when the <file>init.d</file> script is run.
+ See <ref id="fhs-run"> for more information.
+ -->
+ <file>/run</file> 以下のファイルまたはディレクトリ、および後方互換性のためのパス
+ <file>/var/run</file> および <file>/var/lock</file>
+ 経由のファイルまたはディレクトリは、通常は一時ファイルシステム上に格納され、通常リブート間では保持されません。
+ <file>init.d</file> スクリプトはこの挙動を正しく扱うことが出来なければいけません。
+ これは、典型的には必要なサブディレクトリを <file>init.d</file>
+ 実行時に動的に作成するという事です。詳しくは <ref id="fhs-run"> を参照ください。
</p>
</sect1>
@@ -10535,7 +11081,7 @@
</p>
</sect>
- <sect>
+ <sect id="cron-jobs">
<!--<heading>Cron jobs</heading>-->
<heading>Cron ジョブ</heading>
@@ -10550,11 +11096,14 @@
</p>
<p><!--
- If a package wants to install a job that has to be executed
- via cron, it should place a file with the name of the
- package in one or more of the following directories:-->
+ If a package wants to install a job that has to be executed via
+ cron, it should place a file named as specified
+ in <ref id="cron-files"> into one or more of the following
+ directories:
+ -->
パッケージが cron で実行されるようなジョブをインストールしたいときは、
- 下記のディレクトリにパッケージの名前を持つファイルを置いてください。
+ 下記のディレクトリに <ref id="cron-files">
+ で規定された仕様に沿った名前を持つファイルを置いてください。
<example compact="compact">
/etc/cron.hourly
/etc/cron.daily
@@ -10583,19 +11132,19 @@
</p>
<p><!--
- If a certain job has to be executed at some other frequency or
- at a specific time, the package should install a file
- <file>/etc/cron.d/<var>package</var></file>. This file uses the
- same syntax as <file>/etc/crontab</file> and is processed by
- <prgn>cron</prgn> automatically. The file must also be
+ at a specific time, the package should install a file in
+ <file>/etc/cron.d</file> with a name as specified
+ in <ref id="cron-files">. This file uses the same syntax
+ as <file>/etc/crontab</file> and is processed
+ by <prgn>cron</prgn> automatically. The file must also be
treated as a configuration file. (Note that entries in the
<file>/etc/cron.d</file> directory are not handled by
<prgn>anacron</prgn>. Thus, you should only use this
directory for jobs which may be skipped if the system is not
running.)-->
これ以外の頻度、あるいは指定時刻に実行する必要のあるジョブがある場合には、
- パッケージは <file>/etc/cron.d/<var>package-name</var></file>
- ファイルをインストールしてください。このファイルは
+ パッケージは <file>/etc/cron.d</file> ディレクトリに <ref id="cron-files">
+ で規定された仕様に沿った名称のファイルをインストールしてください。このファイルは
<file>/etc/crontab</file> と同じ書式で、<prgn>cron</prgn>
により自動的に実行されます。
このファイルも設定ファイルとして扱わなければいけません
@@ -10672,8 +11221,41 @@
また、デーモンは <file>/etc/cron.{hourly,daily,weekly,monthly}</file>
中のスクリプトを正しく実行しなければいけません。
</p>
- </sect>
+
+ <sect1 id="cron-files">
+ <!--<heading>Cron job file names</heading>-->
+ <heading>Cron ジョブファイル名称</heading>
+ <p><!--
+ The file name of a cron job file should normally match the
+ name of the package from which it comes.-->
+ cron ジョブのファイル名は、通常はそのジョブを提供したパッケージの名称と同じにすべきです。
+ </p>
+
+ <p><!--
+ If a package supplies multiple cron job files files in the
+ same directory, the file names should all start with the name
+ of the package (possibly modified as described below) followed
+ by a hyphen (<tt>-</tt>) and a suitable suffix.-->
+ パッケージが複数の cron ジョブファイルを同じディレクトリに置く場合、ファイル名はパッケージ名
+ (以下の修正も必要かもしれません) で始まり、ハイフン (<tt>-</tt>)
+ と適切な接尾子をつけるようにすべきです。
+ </p>
+
+ <p><!--
+ A cron job file name must not include any period or plus
+ characters (<tt>.</tt> or <tt>+</tt>) characters as this will
+ cause cron to ignore the file. Underscores (<tt>_</tt>)
+ should be used instead of <tt>.</tt> and <tt>+</tt>
+ characters.-->
+ cron ジョブ名には、ピリオド <tt>.</tt> やプラス文字 <tt>+</tt>
+ を含めることは許されません。含まれていた場合には、cron から無視されます。
+ <tt>.</tt> や <tt>+</tt> の代わりにアンダースコア (<tt>_</tt>)
+ を使うべきです。
+ </p>
+ </sect1>
+ </sect>
+
<sect id="menus">
<heading><!-- Menus-->メニュー</heading>
@@ -10768,19 +11350,33 @@
</p>
<p><!--
- The MIME support policy can be found in the <tt>mime-policy</tt>
- files in the <tt>debian-policy</tt> package.
- It is also available from the Debian web mirrors at
- <tt><url name="/doc/packaging-manuals/mime-policy/"
- id="http://www.debian.org/doc/packaging-manuals/mime-policy/"></tt>.-->
- この MIME サポートポリシーは <tt>debian-policy</tt> パッケージに
- <tt>mime-policy</tt> ファイルとして同梱されています。また、
- Debian ウェブミラーサイト
- <tt><url name="/doc/packaging-manuals/mime-policy/"
- id="http://www.debian.org/doc/packaging-manuals/mime-policy/"></tt>
- にもあります。
+ The <package>mime-support</package> package provides the
+ <prgn>update-mime</prgn> program which allows packages to
+ register programs that can show, compose, edit or print
+ MIME types.-->
+ MIME タイプを表示、作成、編集、印刷するプログラムをパッケージから登録するためのプログラム
+ <prgn>update-mime</prgn> は <package>mime-support</package> パッケージが提供しています。
</p>
+ <p><!--
+ Packages containing such programs must register them
+ with <prgn>update-mime</prgn> as documented in <manref
+ name="update-mime" section="8">. They should <em>not</em> depend
+ on, recommend, or suggest <prgn>mime-support</prgn>. Instead,
+ they should just put something like the following in the
+ <tt>postinst</tt> and <tt>postrm</tt> scripts:-->
+ MIME タイプを扱うプログラムを収録するパッケージは、そのようなプログラムを <manref
+ name="update-mime" section="8"> 説明文書に従って <prgn>update-mime</prgn>
+ により登録しなければいけません。これらのプログラムは、<prgn>mime-support</prgn>
+ に対して depend、recommend、suggest を指定すべきではありません。
+ 代わりに、それらのパッケージでは <tt>postinst</tt> および <tt>postrm</tt>
+ スクリプトに以下の例のような処理を含めるべきです。
+
+ <example>
+ if [ -x /usr/sbin/update-mime ]; then
+ update-mime
+ fi
+ </example>
</sect>
<sect>
@@ -11074,16 +11670,15 @@
package that provides online documentation (other than just
manual pages) to register these documents with
<package>doc-base</package> by installing a
- <package>doc-base</package> control file via the
- <prgn/install-docs/ script at installation time and
- de-register the manuals again when the package is removed.
+ <package>doc-base</package> control file in
+ <file>/usr/share/doc-base/</file>.
-->
<package>doc-base</package> パッケージは文書を扱ったり表示したりするための柔軟な枠組を提供します。
おすすめのやりかたは、オンライン文書 (単なる man ページだけではなく)
を提供している Debian パッケージでは、その文書を
<package>doc-base</package> に登録する方法です。これには、
- <package>doc-base</package> コントロールファイルを、インストール時に
- <prgn/install-docs/ スクリプトを用いて登録、あるいはパッケージ削除時に登録を解除します。
+ <package>doc-base</package> コントロールファイルを、
+ <file>/usr/share/doc-base/</file> にインストールします。
</p>
<p><!--
Please refer to the documentation that comes with the
@@ -11643,18 +12238,22 @@
<p><!--
You may wish to restrict your script to SUSv3 features plus the
above set when possible so that it may use <file>/bin/sh</file>
- as its interpreter. If your script works with <prgn>dash</prgn>
- (originally called <prgn>ash</prgn>), it probably complies with
- the above requirements, but if you are in doubt, use
- <file>/bin/bash</file>.-->
+ as its interpreter. Checking your script
+ with <prgn>checkbashisms</prgn> from
+ the <package>devscripts</package> package or running your script
+ with an alternate shell such as <prgn>posh</prgn> may help
+ uncover violations of the above requirements. If in doubt
+ whether a script complies with these requirements,
+ use <file>/bin/bash</file>.
+ -->
スクリプトをできる限り SUSv3
規定の機能および上記の追加機能だけを用いて書くようにし、
<file>/bin/sh</file>
- をインタープリタとして使えるようにしたいと思う場合、あなたのスクリプトが
- <prgn>dash</prgn> (旧名称 <prgn>ash</prgn>)
- で動くならおそらく上記の要求を満足していると思います。
- 但し、疑問があるなら明示的に
- <file>/bin/bash</file> を使ってください。
+ をインタープリタとして使えるようにしたいと思う場合、あなたのスクリプトを
+ <package>devscripts</package> パッケージの <prgn>checkbashisms</prgn>
+ を使ってチェックするか、<prgn>posh</prgn>
+ などの代替シェルでスクリプトを動かしてテストを行えば、上記の制限に対する違反の発見に有益でしょう。
+ 但し、疑問があるなら明示的に <file>/bin/bash</file> を使ってください。
</p>
<p>
@@ -11713,15 +12312,38 @@
<heading>シンボリックリンク</heading>
<p><!--
- In general, symbolic links within a top-level directory
- should be relative, and symbolic links pointing from one
- top-level directory into another should be absolute. (A
- top-level directory is a sub-directory of the root
- directory <file>/</file>.)</p>-->
+ In general, symbolic links within a top-level directory should
+ be relative, and symbolic links pointing from one top-level
+ directory to or into another should be absolute. (A top-level
+ directory is a sub-directory of the root
+ directory <file>/</file>.) For example, a symbolic link
+ from <file>/usr/lib/foo</file> to <file>/usr/share/bar</file>
+ should be relative (<file>../share/bar</file>), but a symbolic
+ link from <file>/var/run</file> to <file>/run</file> should be
+ absolute.<footnote>
+ This is necessary to allow top-level directories to be
+ symlinks. If linking <file>/var/run</file>
+ to <file>/run</file> were done with the relative symbolic
+ link <file>../run</file>, but <file>/var</file> were a
+ symbolic link to <file>/srv/disk1</file>, the symbolic link
+ would point to <file>/srv/run</file> rather than the intended
+ target.
+ </footnote>
+ -->
通常、トップレベルディレクトリ (ルートディレクトリ <file>/</file>
のサブディレクトリがトップレベルディレクトリです)
内のシンボリックリンクは相対参照とすべきです。
また、トップレベルディレクトリ間のシンボリックリンクは絶対参照とすべきです。
+ 例えば、<file>/usr/lib/foo</file> から <file>/usr/share/bar</file>
+ へのシンボリックリンクは相対参照とすべき (<file>../share/bar</file>) ですが、
+ <file>/var/run</file> から <file>/run</file>
+ へのシンボリックリンクは絶対参照とすべきです <footnote>
+ この規定は、トップレベルディレクトリにシンボリックリンクを置くために必要になります。
+ <file>/var/run</file> から <file>/run</file> からのシンボリックリンクを相対参照として
+ <file>../run</file> とした場合、<file>/var</file> が <file>/srv/disk1</file>
+ へのシンボリックとなっていると、シンボリックリンク <file>../run</file>
+ は意図したものではない <file>/srv/run</file> を指してしまいます。
+ </footnote>。
</p>
<p>
@@ -12084,30 +12706,8 @@
<sect1>
<!-- <heading>Sharing configuration files</heading>-->
<heading>設定ファイルの共用</heading>
- <p><!--
- Packages which specify the same file as a
- <tt>conffile</tt> must be tagged as <em>conflicting</em>
- with each other. (This is an instance of the general rule
- about not sharing files. Note that neither alternatives
- nor diversions are likely to be appropriate in this case;
- in particular, <prgn>dpkg</prgn> does not handle diverted
- <tt>conffile</tt>s well.)-->
- 同じファイルを <tt>conffile</tt> として指定しているパッケージ間は
- <em>競合 (conflict)</em> していると指定しなければいけません。
- これはファイルを共有してはいけないという一般則から来ています。
- この場合は代替 (alternative) や待避 (diversion) の指定は適しません。
- 特に、<prgn>dpkg</prgn> は待避時の <tt>conffile</tt>
- をうまく扱えません。
- </p>
<p>
- <!-- The maintainer scripts should not alter the conffile of
- <em>any</em> package, including the one the scripts belong
- to.-->
- メンテナスクリプトは、それ自身が収録されたパッケージを含む
- <em>いかなる</em>パッケージの <tt>conffile</tt>
- を変更してもいけません。</p>
- <p>
<!-- If two or more packages use the same configuration file
and it is reasonable for both to be installed at the same
time, one of these packages must be defined as
@@ -12177,6 +12777,50 @@
場合によっては、他のパッケージの基本的な土台を作成し、共有の設定ファイルを管理する新パッケージを作成した方がいいこともあります
(例として <tt>sgml-base</tt> パッケージを参考にしてください)。
</p>
+ <p><!--
+ If the configuration file cannot be shared as described above,
+ the packages must be marked as conflicting with each other.
+ Two packages that specify the same file as
+ a <tt>conffile</tt> must conflict. This is an instance of the
+ general rule about not sharing files. Neither alternatives
+ nor diversions are likely to be appropriate in this case; in
+ particular, <prgn>dpkg</prgn> does not handle diverted
+ <tt>conffile</tt>s well.-->
+ 設定ファイルが上記記載のように共有できない場合は、これらのパッケージは互いに競合していると指定されなければいけません。
+ 同じファイルを指定しているパッケージ間は
+ <em>競合 (conflict)</em> していると指定しなければいけません。
+ これはファイルを共有してはいけないという一般則から来ています。
+ この場合は代替 (alternative) や待避 (diversion) の指定は適しません。
+ 特に、<prgn>dpkg</prgn> は待避時の <tt>conffile</tt>
+ をうまく扱えません。
+ </p>
+
+ <p><!--
+ When two packages both declare the same <tt>conffile</tt>, they
+ may see left-over configuration files from each other even
+ though they conflict with each other. If a user removes
+ (without purging) one of the packages and installs the other,
+ the new package will take over the <tt>conffile</tt> from the
+ old package. If the file was modified by the user, it will be
+ treated the same as any other locally
+ modified <tt>conffile</tt> during an upgrade.-->
+ 2つのパッケージが同じ <tt>conffile</tt> を宣言している場合、それらパッケージが互いに
+ conflict を指定している場合でも、設定が残っている状況になる場合があります。
+ もしユーザが一方のパッケージを削除 (完全削除ではなく)
+ し、他方のパッケージをインストールした場合、新しいパッケージは古いパッケージの
+ <tt>conffile</tt> を引き継ぐことになります。
+ もしファイルがユーザの手で変更されていた場合、これはアップグレードの際には、
+ ローカルで変更されていた <tt>conffile</tt> と同じ扱いを受けます。
+ </p>
+
+ <p>
+ The maintainer scripts must not alter a <tt>conffile</tt>
+ of <em>any</em> package, including the one the scripts
+ belong to.
+ メンテナスクリプトは、それ自身が収録されたパッケージを含む
+ <em>いかなる</em>パッケージの <tt>conffile</tt>
+ を変更してもいけません。
+ </p>
</sect1>
<sect1>
@@ -13543,14 +14187,14 @@
<item>
<!--
If the window manager complies with <url
- id="http://www.freedesktop.org/Standards/wm-spec"
+ id="http://www.freedesktop.org/wiki/Specifications/wm-spec"
name="The Window Manager Specification Project">,
- written by the <url id="http://www.freedesktop.org"
+ written by the <url id="http://www.freedesktop.org/wiki/"
name="Free Desktop Group">, add 40 points.-->
もしウィンドウマネージャが
- <url id="http://www.freedesktop.org"
+ <url id="http://www.freedesktop.org/wiki/"
name="Free Desktop Group"> の <url
- id="http://www.freedesktop.org/standards/wm-spec"
+ id="http://www.freedesktop.org/wiki/Specifications/wm-spec"
name="The Window Manager Specification Project">
の基準を満たしている場合、40 を足してください。
</item>
@@ -13997,62 +14641,6 @@
<file>/etc/</file> ディレクトリを用いてください。
</p>
</sect1>
-
- <sect1>
- <!--<heading>The OSF/Motif and OpenMotif libraries</heading>-->
- <heading>The OSF/Motif と OpenMotif ライブラリ</heading>
-
- <p><!--
- <em>Programs that require the non-DFSG-compliant OSF/Motif or
- OpenMotif libraries</em><footnote>-->
- <em>DFSG 非互換の OSF/Motif または OpenMotif ライブラリ</em>
- <footnote><p>
- <!--
- OSF/Motif and OpenMotif are collectively referred to as
- "Motif" in this policy document.-->
- このポリシー文書では OSF/Motif と OpenMotif をあわせて
- Motif と呼んでいます。
- </p></footnote><!--
- should be compiled against and tested with LessTif (a free
- re-implementation of Motif) instead. If the maintainer
- judges that the program or programs do not work
- sufficiently well with LessTif to be distributed and
- supported, but do so when compiled against Motif, then two
- versions of the package should be created; one linked
- statically against Motif and with <tt>-smotif</tt>
- appended to the package name, and one linked dynamically
- against Motif and with <tt>-dmotif</tt> appended to the
- package name. -->
- を必要とするプログラムでは、Motif の別実装でフリーな
- LessTif で問題なく動作するかを調べるべきです。
- もし、Motif では動作するプログラムが LessTif
- では配布、サポートに耐えるだけ満足に動作しないとメンテナが判断したならば、二つの版のパッケージ、一方は
- Motif ライブラリに静的にリンクし <tt>-smotif</tt>
- をパッケージ名につけたもの 、もう一方は
- Motif ライブラリに動的にリンクし <tt>-dmotif</tt>
- をパッケージ名につけたものを作成すべきです。
- </p>
- <p><!--
- Both Motif-linked versions are dependent
- upon non-DFSG-compliant software and thus cannot be
- uploaded to the <em>main</em> distribution; if the
- software is itself DFSG-compliant it may be uploaded to
- the <em>contrib</em> distribution. While known existing
- versions of Motif permit unlimited redistribution of
- binaries linked against the library (whether statically or
- dynamically), it is the package maintainer's
- responsibility to determine whether this is permitted by
- the license of the copy of Motif in their possession.-->
- どちらの Motif にリンクしたパッケージも DFSG
- に準拠しないソフトウェアに依存しているので、<em>main</em>
- ディストリビューションにはアップロードできません。
- そのソフトウェア自体は DFSG に準拠したものであるときは、
- <em>contrib</em> ディストリビューションにアップロードできます。
- 一方、知られている Motif
- の各版はすべて静的または動的に同ライブラリにリンクされたバイナリの再配布を許していますが、使っている Motif
- のライセンスで再配布が可能かどうかを確認するのはメンテナの責任です。
- </p>
- </sect1>
</sect>
<sect id="perl">
@@ -14218,13 +14806,13 @@
themselves, if they so desire). Do not close the bug report
until a proper man page is available.<footnote>
<p>
- It is not very hard to write a man page. See the
+ It is not very hard to write a man page. See the
<url id="http://www.schweikhardt.net/man_page_howto.html"
name="Man-Page-HOWTO">,
- <manref name="man" section="7">, the examples
- created by <prgn>debmake</prgn> or <prgn>dh_make</prgn>,
- the helper program <prgn>help2man</prgn>, or the
- directory <file>/usr/share/doc/man-db/examples</file>.
+ <manref name="man" section="7">, the examples created
+ by <prgn>dh_make</prgn>, the helper
+ program <prgn>help2man</prgn>, or the
+ directory <file>/usr/share/doc/man-db/examples</file>.
</p>
</footnote>
</p>-->
@@ -14236,7 +14824,7 @@
マニュアルページを書くことはそんなに難しくありません。<url
id="http://www.schweikhardt.net/man_page_howto.html"
name="Man-Page-HOWTO"> や、<manref name="man" section="7">
- を見たり、<prgn>debmake</prgn> や <prgn>dh_make</prgn>
+ を見たり、<prgn>dh_make</prgn>
で作成されるサンプルを見てみてください。ヘルパープログラムの
<prgn>help2man</prgn> や、<file>/usr/share/doc/man-db/examples</file>
ディレクトリも参考になります。
@@ -14645,20 +15233,19 @@
</p>
<p>
<!-- In addition, the copyright file must say where the upstream
- sources (if any) were obtained. It should name the original
- authors of the package and the Debian maintainer(s) who were
- involved with its creation. -->
+ sources (if any) were obtained, and should name the original
+ authors.
+ -->
また、著作権情報ファイル中には元となった上流のソースをどこから手に入れたかを記載しなければなりません。
- またパッケージの原作者の名前とパッケージ作成に関与した
- Debian メンテナの名前を載せるべきです。
+ またパッケージの原作者の名前を載せるべきです。
</p>
<p><!--
Packages in the <em>contrib</em> or <em>non-free</em> archive
areas should state in the copyright file that the package is not part
- of the Debian GNU/Linux distribution and briefly explain why.-->
+ of the Debian distribution and briefly explain why.-->
<em>contrib</em> または <em>non-free</em>
アーカイブエリアのパッケージは、著作権情報ファイルにこのパッケージが
- Debian GNU/Linux の一部ではないこと、およびその簡潔な理由を示すべきです。
+ Debian の一部ではないこと、およびその簡潔な理由を示すべきです。
</p>
<p>
<!-- A copy of the file which will be installed in
@@ -14673,13 +15260,14 @@
link to another directory in <file>/usr/share/doc</file> only if
the same source and the first package has a "Depends"
relationship on the second. These rules are important
- because copyrights must be extractable by mechanical
+ because <file>copyright</file> must be extractable by mechanical
means.-->
<file>/usr/share/doc/<var>package</var></file>
は、<file>/usr/share/doc</file>
以下の他のディレクトリ中のシンボリックリンクの相手先と同じソースファイルから作成されたものであること、および相手先に対して
"Depends" で依存していることが宣言されていること、の二つの条件を満たすときのみ、シンボリックリンクとすることができます。
- この規則は、著作権関連ファイルが機械的に抽出できるようにするために大切になるものです。
+ この規則は、<file>copyright</file>(著作権関連ファイル)
+ が機械的に抽出できるようにするために大切になるものです。
</p>
<p><!--
@@ -14751,8 +15339,33 @@
あるいは <file>README.Debian</file>
やその他の適切な場所にインストールされるべきです。
</p>
- </sect>
+ <sect1 id="copyrightformat">
+ <!--<heading>Machine-readable copyright information</heading>-->
+ <heading>機械可読な著作権情報</heading>
+
+ <p><!--
+ A specification for a standard, machine-readable format
+ for <file>debian/copyright</file> files is maintained as part
+ of the <package>debian-policy</package> package. This
+ document may be found in the <file>copyright-format</file>
+ files in the <package>debian-policy</package> package. It is
+ also available from the Debian web mirrors at-->
+ <file>debian/copyright</file> の、標準の機械可読な形式の仕様は
+ <package>debian-policy</package> の一部として維持管理されています。
+ 仕様書は <package>debian-policy</package> に収録されている
+ <file>copyright-format</file> です。また、以下の Debian ウェブミラーからも取得できます。
+ <tt><url name="/doc/packaging-manuals/copyright-format/1.0/"
+ id="http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/"></tt><!-- .-->
+ </p>
+
+ <p><!--
+ Use of this format is optional.-->
+ このフォーマットの利用は任意です。
+ </p>
+ </sect1>
+ </sect>
+
<sect>
<!-- <heading>Examples</heading> -->
<heading>設定例など</heading>
@@ -14935,10 +15548,10 @@
<prgn>dpkg</prgn> はバイナリファイルを作成し、Unix システムにそれをインストールしたり削除したりするための一群のプログラム
<footnote><p>
<!--
- <prgn>dpkg</prgn> is targeted primarily at Debian
- GNU/Linux, but may work on or be ported to other
+ <prgn>dpkg</prgn> is targeted primarily at Debian,
+ but may work on or be ported to other
systems.-->
- <prgn>dpkg</prgn> は第一に Debian GNU/Linux を対象として作られているものではありますが、他のシステムでの動作や移植は可能です。
+ <prgn>dpkg</prgn> は第一に Debian を対象として作られているものではありますが、他のシステムでの動作や移植は可能です。
</p></footnote>です。
</p>
@@ -15004,19 +15617,14 @@
</p>
<p><!--
- The Debian version of the FSF's GNU hello program is provided
- as an example for people wishing to create Debian
- packages. The Debian <prgn>debmake</prgn> package is
- recommended as a very helpful tool in creating and maintaining
- Debian packages. However, while the tools and examples are
- helpful, they do not replace the need to read and follow the
- Policy and Programmer's Manual.</p>-->
+ The Debian version of the FSF's GNU hello program is provided as
+ an example for people wishing to create Debian packages. However,
+ while the examples are helpful, they do not replace the need to
+ read and follow the Policy and Programmer's Manual.</p>-->
Debian パッケージを作ってみたい人のために、FSF の GNU hello
プログラムの Debian 版が例として提供されています。
- Debian パッケージの作成と維持に非常に便利なツールとして
- <prgn>debmake</prgn> パッケージをお勧めします。
- ツールや例は有用ではありますが、読んで従うべき文書としての Policy
- Manual や Programmer's Manual の代わりにはなりません。
+ これらのツールや例は有用ではありますが、読んで従うべき文書としての Policy
+ Manual や Programmer's Manual の代わりにはなるわけではありません。
</p>
</appendix>
@@ -15122,9 +15730,9 @@
<p><!--
The <prgn>DEBIAN</prgn> directory will not appear in the
file system archive of the package, and so won't be installed
- by <prgn>dpkg</prgn> when the package is installed.-->
+ by <prgn>dpkg</prgn> when the package is unpacked.-->
<prgn>DEBIAN</prgn> ディレクトリはパッケージのファイルシステムアーカイブには入れられません。
- 従って、<prgn>dpkg</prgn> によってパッケージがインストールされる時にはインストールされません。
+ 従って、<prgn>dpkg</prgn> によってパッケージが展開される時にはインストールされません。
</p>
<p><!--
@@ -15542,21 +16150,20 @@
the <prgn>PATH</prgn> if necessary, and pass its
second and subsequent arguments to the command it
calls. If no <var>root-command</var> is supplied
- then <var>dpkg-buildpackage</var> will take no
- special action to gain root privilege, so that for
- most packages it will have to be invoked as root to
- start with.-->
+ then <var>dpkg-buildpackage</var> will use
+ the <prgn>fakeroot</prgn> command, which is sufficient
+ to build most packages without actually requiring root
+ privileges.
+ -->
root 特権が必要な時、<var>root-command</var>
というコマンドを呼び出します。<var>root-command</var>
は第 1 引数をコマンドとして、必要ならば <prgn>PATH</prgn>
から呼び出し、第 2
引数以降を呼び出したコマンドに渡さなければいけません。
<var>root-command</var> が与えられなかった場合は、
- <var>dpkg-buildpackage</var> は root
- 特権を得るための特別な動作をしません。
- そのため、ほどんどのパッケージでは
- <var>dpkg-buildpackage</var> を root
- として実行しなければなりません。
+ <var>dpkg-buildpackage</var> は <prgn>fakeroot</prgn>
+ コマンドを使用します。これは、実際に root
+ 特権を取得せずにパッケージをビルドするのに殆どの場合は十分なはずです。
</p>
</item>
<tag><tt>-b</tt>, <tt>-B</tt></tag>
@@ -16897,13 +17504,13 @@
dpkg-divert --package smailwrapper --remove --rename \
--divert /usr/sbin/smail.real /usr/sbin/smail
fi
- </example><!-- where <tt>1.02-2</tt> is the version at which the
+ </example><!-- where <tt>1.0-2</tt> is the version at which the
diversion was first added to the package. The postrm should not
remove the diversion on upgrades both because there's no reason to
remove the diversion only to immediately re-add it and since the
postrm of the old package is run after unpacking so the removal of
the diversion will fail.-->
- ここでは、<tt>1.02-2</tt> が退避バージョンの追加がおこなわれたバージョンです。
+ ここでは、<tt>1.0-2</tt> が退避バージョンの追加がおこなわれたバージョンです。
アップグレードの際の postrm ではいずれの退避バージョンも削除してはいけません。
これは、直後に再度追加するために退避バージョンを削除する理由がないこと、および古いパッケージの
postrm が展開後に走った場合、退避バージョンの削除は失敗するためです。