この章では、開発者が利用できるツール群を大まかに説明します。 これらのツール群は、開発者の便宜を図り、 これらを使うことによって空いた時間をより重要な 作業にまわせるよう用意されています。
高レベルのパッケージ開発ツールの利用を好む人もいれば、好まない人もいます。 Debian では、この問題に関して公式な取り決めはありません。 つまり、どのツールを用いても作業を行なうことができるならば問題ありません。 そのため、この章は、どのツールを使うべきなのか、 開発に伴う作業にどのように取り組むべきなのか、 について規定するものではありません。 また、競合するツールの排除を避けるために、 特定のツールを推奨することもしません。
これらパッケージの説明文の大半は、 実際のパッケージ説明文そのものを参考にしたものです。 より詳細な情報は各パッケージのドキュメントをご覧ください。
dpkg-dev
dpkg-dev
には、Debian ソースパッケージの展開、
構築、アップロードに必要となる (dpkg-source
を含む)
ツール群が収録されています。
これらのユーティリティ群は、パッケージの作成および操作に必要となる
基本的で低レベルな機能を提供します。 そのため、こちらはいずれの Debian
開発者にも必要となるものです。
lintian
lintian
は Debian パッケージを精査し、
バグやポリシー違反を報告します。 lintian
は、一般的なエラーのチェックとともに、 Debian
ポリシーの多角的な自動チェックも行ないます。 lintian
の使い方については、 アップロードの前にパッケージをチェックする,
Section 6.2.3 および Lintian による報告, Section
10.5 ですでに説明してあります。
debhelper
debhelper
は、 バイナリ Debian パッケージの構築に関連する
一般的な作業を自動化するために、 debian/rules
で利用できるプログラム集です。
このプログラム集には、作成するパッケージへのさまざまなファイルのインストールや、
ファイルの圧縮、ファイルパーミッションの修正、作成するパッケージの Debian menu
システムへの統合を行なうプログラム群が含まれています。
debmake
とは異なり、debhelper
は、
一貫した流儀で動作しながらも、小さく、
独立している多数のコマンド群から構成されています。
そのため、debhelper
は debmake
より細かな管理を行なうことができます。
debmake
debmake
は、debhelper
に先行して開発されたもので、より大まかなコマンドで debian/rules
の補助を行なうものです debmake
には主に二つのプログラムが含まれています。 一つは deb-make
で、
こちらは、開発者が通常の (Debian 的ではない) ソースアーカイブを Debian
ソースパッケージへ変換する補助をします。 もう一つは debstd
で、
こちらは debhelper
においては複数のコマンドによって
実現されている自動化された機能を一つにまとめたものです。
今では debhelper
の利用が好まれ、 debmake
の利用は避けようとの合意があります。 しかし、これは debmake
のバグが問題であるから、というわけではありません。
yada
yada
は若干異なる思想を持つ、 新たなパッケージング補助ツールです。
debian/packages
ファイルを用いて、 debian/
サブディレクトリ以下に設置される 他の必要なファイルを自動生成します。
なお yada
はまだまだ新しいものですので、
他のシステムに比べれば問題が残っている可能性があります。
equivs
equivs
は、パッケージ作成用に 用意されているパッケージです。
equivs
は、
単に依存関係を満たすためにパッケージを作成しなければならない場合などの、
ローカルな利用にしばしば推奨されているものです。
また、他パッケージに依存することのみを目的としたパッケージ ``meta-packages''
を作成する場合などにも利用されます。
cvs-buildpackage
cvs-buildpackage
は、 Debian ソースパッケージの CVS
リポジトリへの導入やインポート、 CVS リポジトリからの Debian パッケージの構築、
アップストリームにおける変更のリポジトリへの統合の補助
といった機能を提供します。
これらのユーティリティは、Debian 開発者による CVS
の利用を容易にするインフラを提供します。 cvs-buildpackage
を利用すれば、 stable や、unstable、場合によっては
experimental といったディストリビューション向けに、
あるパッケージを独立した複数の CVS ブランチにて管理したり、
そのほかのバージョンコントロールシステムの恩恵を受けることができます
dupload
dupload
は、 Debian パッケージを Debian
アーカイブに自動アップロードしたり、 アップロードのログをとったり、
アップロードに関する電子メールを送信したりする、
スクリプトおよびパッケージです。 dupload
では、新規アップロードを行なう先の場所や、 その方法を設定することも可能です。
fakeroot
fakeroot
は root 権限をシミュレートします。 fakeroot
を利用すれば、root にならずにパッケージを構築できます。 (各パッケージでは、通常
root の所有権でファイルがインストールされている必要があります。)
fakeroot
がインストールされていれば、 一般ユーザで、例えば
dpkg-buildpackage -rfakeroot とすることができます。
devscripts
devscripts
は、Debian パッケージ開発に役立つ
ラッパーやツールを収録したパッケージです。
例えば、debian/changelog
ファイルをコマンドラインから操作するための debchange
や、dpkg-buildpackage
のラッパーである debuild
といったスクリプトが含まれています。
debget
debget
は、Debian
アーカイブからファイルをダウンロードする際に役立つ
便利なスクリプトを収録したパッケージです。
例えば、ソースパッケージのダウンロードにこちらを利用することができます。
aph@debian.org
schwarz@debian.org
ijackson@gnu.ai.mit.edu