[ 前のページ ] [ 目次 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 次のページ ]
Debian パッケージ化されていない、ソースコードのみ利用可能な特定バージョンの プログラムのを使いたい場合があるでしょう。しかし、これをやるとパッケージング システムがトラブルを起こすことがあります。電子メールサーバの新バージョンを コンパイルしたいと想像してみてください。全てうまくいきましたが、Debian の 多くのパッケージは MTA に依存しています。自分でコンパイルしたものをインス トールしても、パッケージシステムはその事に気づいてくれません。
ここで equivs が登場する番です。使うには、同名の
パッケージをインストールしてください。同パッケージが行なうのは、依存関係を
満たせる空のパッケージを生成することで、これによりパッケージングシステムに
依存関係が満たされていると信じ込ませます。
さっそく始める前に、Debian パッケージが存在するプログラムを、異なる オプション付でコンパイルするもっと安全な方法があり、自分がしていることを 理解できないのなら、依存関係を置き換えるのに equivs を使うべきではないと いうことは、覚えておいた方がよいでしょう。より詳しい情報は、 ソースパッケージでの作業, 第 6 章 のセクションを参照してください。
MTA を例にして話を続けましょう。あなたは新たにコンパイルした postfix を
インストールしたばかりで、今度は mutt をインストール
しようとしています。突然、mutt が他の MTA をインス
トールしたがっているのを発見しました。ですが、あなたには自分用の MTA が
すでにあります。
(たとえば /tmp などの) ディレクトリへ移って、次のように
実行してください:
# equivs-control name
name の箇所は、生成したいコントロールファイル名で置き換えて ください。以下のようにファイルが生成されるでしょう:
Section: misc
Priority: optional
Standards-Version: 3.0.1
Package: <enter package name; defaults to equivs-dummy>
Version: <enter version here; defaults to 1.0>
Maintainer: <your name and email address; defaults to username>
Pre-Depends: <packages>
Depends: <packages>
Recommends: <packages>
Suggests: <package>
Provides: <(virtual)package>
Architecture: all
Copyright: <copyright file; defaults to GPL2>
Changelog: <changelog file; defaults to a generic changelog>
Readme: <README.Debian file; defaults to a generic one>
Extra-Files: <additional files for the doc directory, comma separated>
Description: <short description; defaults to some wise words>
long description and info
.
second paragraph
これを望む通りに修正する必要があるだけです。フィールドのフォーマットと、 その説明を眺めてください。各々について、ここで説明する必要はないでしょう。 さあ、必要なことをやってしまいましょう。
Section: misc
Priority: optional
Standards-Version: 3.0.1
Package: mta-local
Provides: mail-transport-agent
そう、これで終わりです。mutt は mailt-transport-agent
に依存しており、これはあらゆる MTA によって
提供される仮想パッケージです。単純にパッケージ名を
mailt-transport-agent とすることもできますが、著者は Provides
を使って 仮想パッケージの概要を示す方が好みです。
あとはパッケージを構築するだけです:
# equivs-build name
dh_testdir
touch build-stamp
dh_testdir
dh_testroot
dh_clean -k
# Add here commands to install the package into debian/tmp.
touch install-stamp
dh_testdir
dh_testroot
dh_installdocs
dh_installchangelogs
dh_compress
dh_fixperms
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb
dpkg-deb: building package `name' in `../name_1.0_all.deb'.
The package has been created.
Attention, the package has been created in the current directory,
そして、出来あがった .deb をインストールしてください。
お判りのように、equivs には様々な使用法があります。たとえば、
あなたがいつもインストールするプログラムに依存する my-favorites
パッケージを
生成することさえ可能です。自由に想像力の翼を拡げてかまいませんが、用心は
してください。
/usr/share/doc/equivs/examples 内にコントロールファイルの見本が
ありますので忘れないように。それらをチェックしてください。
多くの Debian ユーザは、たった 1 種類の locale しか使っていません。たとえば ブラジルの Debian ユーザなら、普段は常に pt_BR という locale を 使うでしょう。
localepurge は、これらのユーザにとって非常に役に立つ
ツールです。本当に使う locale のみを残すことにより、大量のディスク容量を
節約できます。さあ、apt-get install localepurge してください。
設定はとても簡単で、debconf の質問に沿って順序通りに設定していきます。ですが 最初の質問には慎重に答えてください。間違って答えてしまうと、あなたが使いたい ものも含めて全ての locale ファイルが削除されるかもしれません。ファイルを復活 させる手段は、それらを提供するパッケージを再インストールするしかありません。
[ 前のページ ] [ 目次 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 次のページ ]
APT HOWTO (Obsolete Documentation)
1.7.6 - 2002 年 1 月kov@debian.org