_ [debian] 続々々々・uim 1:1.8.1-3

piuparts でローカルの新しいパッケージのアップグレードテストをするときの仕組みを考えてみた。 まず、/tmp/debian/ ディレクトリ以下に作成した新しいパッケージを置く。

% ls -la /tmp/debian
合計 17148
drwxr-xr-x  4 dai  dai      980 10月 18 02:00 .
drwxrwxrwt 16 root root     480 10月 18 02:10 ..
-rw-r--r--  1 dai  dai    12996 10月 18 01:52 libuim-custom2_1.8.1-4_amd64.deb
-rw-r--r--  1 dai  dai   287084 10月 18 01:52 libuim-data_1.8.1-4_amd64.deb
-rw-r--r--  1 dai  dai   136774 10月 18 01:52 libuim-dev_1.8.1-4_amd64.deb
        :

ダミーのレポジトリを作る。

for i in main contrib non-free; do
        for j in sid squeeze; do
                k=/tmp/debian/dists/${j}/${i}/binary-amd64
                mkdir -p ${k}
                touch ${k}/Packages
                gzip ${k}/Packages
        done
done

新しいパッケージ用の Packages ファイルを生成する。

cd /tmp/debian
apt-ftparchive packages . | gzip -c >! ./dists/sid/main/binary-amd64/Packages.gz

これで piuparts を実行する。

sudo /bin/rm /tmp/libuim-data.log ; \
sudo piuparts \
        --skip-logrotatefiles-test \
        --warn-on-others \
        --warn-on-leftovers-after-purge \
        --no-eatmydata \
        -b /var/cache/pbuilder/base-squeeze.tgz \
        --list-installed-files \
        -l /tmp/libuim-data.log \
        --do-not-verify-signatures \
        -m http://ftp.jp.debian.org/debian \
        -m file:/tmp/debian \
        --bindmount /tmp/debian \
        -d squeeze \
        -d sid \
        --apt libuim-data=1:1.8.1-4

–do-not-verify-signatures : サインしていないレポジトリで停止してしまうことを防ぐ。 -m file:/tmp/debian –bindmonut /tmp/debian : chroot 内からレポジトリが見えるように。なお、/tmp/debian 以下を CWD とするプロセスがいた場合、kill されたうえに piuparts がエラーで終了することに注意。 本当はもっといいやりかたがあるような気がするけど…。

_ [debian] uim 1:1.8.1-4

mv_conffile は移動先にもファイルがないといけないようなので(類例: #665813)、touch して作ることにして対処。けど、直前で uim-module-manager で作成してるはずなんだけどな。今度は piuparts でローカルの新しいパッケージのアップグレードテストをしたので大丈夫のはず。 先走って 1.8.2 と 1.8.3 を upstream ブランチに入れて master ブランチにマージしてしまっていたので、debian/1%1.8.1-3 タグから debian/1%1.8.1 ブランチを分岐してそちらを更新した。