[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Packaging Manual 第13章
早瀬です。
Packaging Manual 第13章 です。
--
早瀬 茂規 (shayase@xxxxxxxxxxxxxxx)
<!-- ORIG
<chapt id="methif"><heading><prgn>dselect</prgn>'s interface to
its installation methods
ORIG -->
<chapt id="methif"><heading><prgn>dselect</prgn> の
インストール方法へのインターフェース
</heading>
<p>
<!-- ORIG
<prgn>dselect</prgn> calls scripts from its installation
methods when it needs to actually access data from the
distribution. The core program <prgn>dselect</prgn> itself
just calls these scripts and provides the package and access
method selection interfaces. The installation methods are
responsible for invoking <prgn>dpkg</prgn> as appropriate.
ORIG -->
<prgn>dselect</prgn> は、ディストリビューションのデータに実際に
アクセスするときには、dselect のもつ「インストール方法」である
スクリプトを呼び出します。核となるプログラム
<prgn>dselect</prgn> 自身は、スクリプトを呼び出すだけであり、
パッケージとアクセス方法に関して選択を行なうことができる
インターフェースを提供します。必要に応じて、<prgn>dpkg</prgn>
を起動することは、このインストール方法のスクリプトの側の責任です。
</p>
<p>
<!-- ORIG
Each installation method has three scripts:
<list compact="compact">
<item><p>Setup installation parameters.</p></item>
<item><p>Update list of available packages.</p></item>
<item><p>Install.</p></item>
</list>
ORIG -->
それぞれのインストール方法は、3 つのスクリプトを持っています。
<list compact="compact">
<item><p>インストールパラメータの設定</p></item>
<item><p>パッケージリストの更新</p></item>
<item><p>インストール</p></item>
</list></p>
<p>
<!-- ORIG
<prgn>dselect</prgn> searches for methods in
<tt>/usr/lib/dpkg/methods</tt> and
<tt>/usr/local/lib/dpkg/methods</tt>.
ORIG -->
<prgn>dselect</prgn> は、<tt>/usr/lib/dpkg/methods</tt> と、
<tt>/usr/local/lib/dpkg/methods</tt> から利用できる
インストール方法を検索します。
</p>
<!-- ORIG
<sect><heading>Functions of the method scripts
ORIG -->
<sect><heading>方法スクリプトの機能
</heading>
<p>
<!-- ORIG
The setup script is run just after the user has chosen an
installation method. It should prompt the user for
parameters like the site to NFS-mount or FTP from, the
directory to use, or the directory or filesystem where the
<tt>.deb</tt> files can be found, or the tape or floppy
device to install from. It should store the responses under
<tt>/var/lib/dpkg/methods</tt> - see below. If no available
packages list is available it should perhaps offer to scan
the available packages.
ORIG -->
ユーザがインストール方法を選択したすぐ後に、設定スクリプトが
実行されます。ここでは、環境によって異なる値についてユーザに
入力を求めます。例えば、NFS マウントする、または FTP によって
アクセスされるサイトの名前、使用ディレクトリ名、<tt>.deb</tt>
ファイルが置かれているファイルシステムやディレクトリ名、
テープからインストールするのか、または、フロッピーディスクを
使用するのか、などです。これらに対するユーザの入力結果は、
<tt>/var/lib/dpkg/methods</tt> に保存します。詳しくは、以下を
ごらん下さい。また、利用可能なパッケージリストが得られない
場合には、パッケージを検索する機能が使用できなければいけません。
</p>
<p>
<!-- ORIG
The update script should obtain a list of available packages
if possible, and run <tt>dpkg −update-avail</tt>, <tt>dpkg
−merge-avail</tt> and/or <tt>dpkg −forget-old-unavail</tt>
to load it into <prgn>dpkg</prgn> and <prgn>dselect</prgn>'s
database of available packages. If no packages list was
available and the user was offered and accepted the option
of scanning the actual files available this scan should be
done here, using <tt>dpkg −record-avail</tt>.
ORIG -->
更新スクリプトは、もし可能であれば、有効なパッケージのリストを
読みこみます。そして、パッケージのリストを <prgn>dpkg</prgn>
と <prgn>dselect</prgn> との有効パッケージのデータベースに
読みこむために、<tt>dpkg --update-avail</tt> と、
<tt>dpkg --merge-avail</tt> を実行します。場合によっては
さらに、<tt>dpkg --forget-old-unavail</tt> も実行します。
有効なパッケージリストが存在しない場合で、実際のファイルから
データを走査することをユーザが選択した場合においては、
その走査作業はこの段階で実行されます。そのとき
<tt>dpkg --record-avail</tt> が用いられます。
</p>
<p>
<!-- ORIG
The install script should feed all the available
<tt>.deb</tt> files to <tt>dpkg −iGOEB</tt> (this is
equivalent to <tt>dpkg −install
−refuse-downgrade −selected-only −skip-same-version
−auto-deconfigure</tt>). The <tt>-R</tt>
(<tt>−recursive</tt>) option for traversing subdirectories
may also be useful here).
ORIG -->
インストールスクリプトは、すべての有効な <tt>.deb</tt>
ファイルを、<tt>dpkg --iGOEB</tt> に供給します
(これは、 <tt>dpkg --install --refuse-downgrade
--selected-only --skip-same-version --auto-deconfigure</tt>
と等価です)。
<tt>-R</tt> (<tt>--recursive</tt>) オプションは、
サブディレクトリも同時に考慮してくれるので、便利かもしれません。
</p>
<p>
<!-- ORIG
If any of these scripts needs to display a message for the
user, it should wait for the user to hit `return' before
exiting so that dselect doesn't immediately rewrite the
screen.
ORIG -->
いくつかのスクリプトは、メッセージを画面に出力することも
あります。この時、あっという間に dselect がスクリーンを
再描画して、その出力メッセージが流れていってしまっては
困ります。そこで、スクリプトは、ユーザが「リターン」を
たたくまで、メッセージの出力を待っていなければいけません。
</p>
<p>
<!-- ORIG
If a method script succeeds (returns a zero exit status)
<prgn>dselect</prgn> will return immediately to the main
menu, with the `next' option highlighted ready for the user
to select it. If it fails <prgn>dselect</prgn> will display
a message and wait for the user to hit return.</p>
ORIG -->
方法スクリプトが成功した場合 (0 を返します)、
<prgn>dselect</prgn> は、メインメニューへと即座に戻ります。
戻ったときには、`next' オプションがハイライト表示されて、
ユーザがすぐ選ぶことができるようになっています。もし、
次に進むことができなかった場合には、<prgn>dselect</prgn> は、
メッセージを画面に出力して、ユーザが「リターン」を叩くのを
待ちます。</p>
</sect>
<!-- ORIG
<sect><heading>Location and arguments of the method scripts
ORIG -->
<sect><heading>方法スクリプトの場所と引数
</heading>
<p>
<!-- ORIG
A set of scripts (henceforth known as a group) may provide
several methods on the `main menu' with different behaviour.
For example, there might be a generic get-packages-by-FTP
group which might provide methods in the main menu for
installation directly from one of the Debian mirror sites as
well as for installation from a user-specified site.
ORIG -->
あるスクリプトの集合 (以後、グループと表記します) は、
メインメニュー中で違う動作のいくつかのインストール方法を
提供します。例えば、一般的な get-packages-by-FTP グループは、
メインメニュー中でミラーサイトからのインストール、および
ユーザの指定したサイトからのインストールの手段を提供します。
</p>
<p>
<!-- ORIG
Each group of methods implemented by the same set of scripts
should have a subdirectory
<tt>/usr/lib/dpkg/methods/<var>group</var></tt> or
<tt>/usr/local/lib/dpkg/methods/<var>group</var></tt>,
containing:
ORIG -->
同一集合のスクリプトによって規定されるそれぞれの
インストール方法のグループは、サブディレクトリ、
<tt>/usr/lib/dpkg/methods/<var>group</var></tt> か
<tt>/usr/local/lib/dpkg/methods/<var>group</var></tt>
を持ち、これらは以下を含みます。
<taglist compact="compact">
<tag><tt>names</tt></tag>
<!-- ORIG
<item><p>a list of user-visible methods provided by these scripts.</p>
ORIG -->
<item><p>これらのスクリプトによって提供されるユーザに見える
インストール方式</p>
</item>
<tag><tt>setup</tt></tag>
<tag><tt>update</tt></tag>
<tag><tt>install</tt></tag>
<!-- ORIG
<item><p>executable programs, the scripts themselves.</p>
ORIG -->
<item><p>実行可能なプログラム、スクリプト自身</p>
</item>
<tag><tt>desc.<var>option</var></tt></tag>
<!-- ORIG
<item><p>description file.</p></item>
ORIG -->
<item><p>説明ファイル</p></item>
</taglist>
</p>
<p>
<!-- ORIG
<tt>names</tt> will be formatted as a list of lines, each containing:
ORIG -->
<tt>names</tt> は、行のリストとして構成されます。それぞれの
行は、以下のものを含みます。
<example>
<var>sequence</var> <var>method</var> <var>summary</var>
</example>
</p>
<p>
<!-- ORIG
<var>sequence</var> is a two-digit number that will be used
much like <tt>rc.d</tt> prefixes to control the order in the
main menu. If in doubt use 50.
ORIG -->
<var>sequence</var> は、2 桁の数字で、メインメニューの並びの
順序を制御するために、<tt>rc.d</tt> の接頭辞のように
使われます。よく分からないときは、50 を使用します。
</p>
<p>
<!-- ORIG
<var>method</var> is a name which is displayed by
<prgn>dselect</prgn> as the name of the method, and which
will be passed to <tt>setup</tt>, <tt>update</tt> and
<tt>unpack</tt> as their first argument.
ORIG -->
<var>method</var> は、インストール方法の名前として
<prgn>dselect</prgn> によって、画面に出力される名前です。
<tt>setup</tt> と、<tt>update</tt>、<tt>unpack</tt> に
渡される第一引数となります。
</p>
<p>
<!-- ORIG
<var>summary</var> is the brief description string for
<prgn>dselect</prgn>'s menu.
ORIG -->
<var>summary</var> は、<prgn>dselect</prgn> のメニューに
使用される簡単な説明文です。
</p>
<p>
<!-- ORIG
Each of the three scripts gets the same three arguments:
<var>vardir</var>, <var>group</var> and <var>method</var>.
<var>vardir</var> is the base directory for storing
<prgn>dpkg</prgn> and <prgn>dselect</prgn>'s state, usually
<tt>/var/lib/dpkg</tt>; this is passed in so that the
<tt>−admindir</tt> option to <prgn>dselect</prgn> is
honoured).
ORIG -->
それぞれの三つのスクリプトはそれぞれ同じ三つの引数をとります。
それらは、<var>vardir</var> と <var>group</var>、
<var>method</var> です。<var>vardir</var> は、
<prgn>dpkg</prgn> と <prgn>dselect</prgn> の状態を
保存するための基本となるディレクトリで、通常、
<tt>/var/lib/dpkg</tt> です。これは、<prgn>dselect</prgn>
の <tt>--admindir</tt> 指定を尊重するために渡されるように
なっています。
</p>
<p>
<!-- ORIG
Each option may have an extended description in
<tt>desc.<var>option</var></tt>. This should be formatted
like the extended description part of a <tt>Description</tt>
field entry <em>shifted one character to the left</em>.
ORIG -->
それぞれのインストール方式 (option) は、さらに詳細な説明文を、
<tt>desc.<var>option</var></tt>ファイル に書くことができます。
このファイルの書式は、<tt>Description</tt> フィールドの
エントリの拡張説明文のように、<em>行頭に一つのスペースを
入れなければいけません。</em>
</p>
<p>
<!-- ORIG
<tt><var>vardir</var>/methods</tt> will exist, and a method
group may use a
<tt><var>vardir</var>/methods/<var>group</var></tt>
directory to store its state.
ORIG -->
また、<tt><var>vardir</var>/methods</tt> ディレクトリが
あります。インストール方法のグループは、現在の状態の保存に
<tt><var>vardir</var>/methods/<var>group</var></tt>
ディレクトリを使用できます。
</p>
<p>
<!-- ORIG
The group name and method name must follow the rules for C
identifiers.
ORIG -->
グループ名とインストール方法名は、C 言語の識別子の規則に
従っていなければいけません。
</p>
</sect>
</chapt>