第9章 パッケージをアップロードする

目次

9.1. Debian アーカイブへアップロードする
9.2. アップロード用orig.tar.gzの内容
9.3. スキップされたアップロード

あなたの新しいパッケージは徹底的にテストできたので、あなたはそれを共有すべく公開アーカイブにリリースしたいでしょう。

正規デベロッパー[83]になると、パッケージを Debian アーカイブにアップロードできます。[84] 手動でもできますが、 dupload(1)dput(1) 等の既存の自動化ツールを用いる方が楽です。ここでは dupload を使ってどうするかを説明します。[85]

まず dupload の設定ファイルを調整しなければいけません。 システム全体の設定ファイルである /etc/dupload.conf を編集するか、あるいはあなた専用の設定ファイルである ~/.dupload.conf を使って変更したい項目だけをオーバーライドさせてもかまいません。

またそれぞれのオプションが持つ意味を理解するため dupload.conf(5) マニュアルページを読むことができます。

$default_host オプションはデフォルトで利用されるアップロードキューを指定します。anonymous-ftp-masterがメインのアップロードキューですが、別のアップロードキューを利用したいこともあるでしょう。[86]

インターネットにつながった状態で、以下のようにすればあなたのパッケージをアップロード出来ます:

$ dupload gentoo_0.9.12-1_i386.changes

dupload は各ファイルの SHA1/SHA256 チェックサムを計算し、 .changes ファイルの中の情報と照合します。 もしそれらが一致しない場合には、適正にアップロードされるように「完全な(再)ビルド」 の説明に従って最初から再ビルドをするよう警告します。

ftp://ftp.upload.debian.org/pub/UploadQueue/へのアップロードで問題があった場合には、GPG 署名した *.commands ファイルを ftp を用いてftpで手動アップロードすることで修正出来ます。 [87] 例えば、hello.commands を使います:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Uploader: Foo Bar <Foo.Bar@example.org>
Commands: 
 rm hello_1.0-1_i386.deb
 mv hello_1.0-1.dsx hello_1.0-1.dsc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

[...]
-----END PGP SIGNATURE-----

はじめてパッケージをアーカイブにアップロードする際は、オリジナルのorig.tar.gz ソースファイルを含めなければなりません。当該パッケージの Debian リビジョン番号が 1 でも 0 でも無い場合には、dpkg-buildpackage-sa オプションを付けなければなりません。

dpkg-buildpackage コマンドの場合:

$ dpkg-buildpackage -sa

debuildコマンドの場合:

$ debuild -sa

debuildコマンドの場合:

$ pdebuild --debbuildopts -sa

逆に、-sdオプションを付けると、オリジナルのorig.tar.gz ソースファイルを強制的に除外します。

アップロードをスキップすることで debian/changelog 中に複数の項目を作成した場合は、前回アップロード以来の全ての変更を含む適切な *_.changes ファイルを作成しなければいけません。 dpkg-buildpackage オプションの -v を、例えば 1.2 と言うバージョンに関して指定すると可能です。

dpkg-buildpackage コマンドの場合:

$ dpkg-buildpackage -v1.2

debuildコマンドの場合:

$ debuild -v1.2

debuildコマンドの場合:

$ pdebuild --debbuildopts "-v1.2"


[84] Debian アーカイブとほぼ同様に機能し、非-DD に対してアップロードエリアを提供する http://mentors.debian.net/ のような公開アーカイブがあります。http://wiki.debian.org/HowToSetupADebianRepository に列記されているツールを使い自分自身で同様のアーカイブを設定することも出来ます。だからこのセクションは非-DD にも有用です。

[85] dput パッケージは、より多くの機能があり dupload パッケージより人気が出てきています。それは、/etc/dput ファイルをグローバル設定に用い、 ~/.dput.cf ファイルをユーザー毎の設定に用います。更にそれは、そのままUbuntu関連のサービスもサポートします。

[87] ftp://ftp.upload.debian.org/pub/UploadQueue/README を参照下さい。dput パッケージ中にある dcut コマンドをこれに代わる方法として用いることもできます。