[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-devel:04083] Re: about diversion
中原です。
> 香田です。最近 diversion というのをよく目にしていた
> のですが使いたいことになって調べたのですがよく
> 理解できない点があるのでご教示ください。
>
> Packaging Manual によると
> preinst で
>
> if [ install = "$1" ] ; then
> dpkg-divert ....
>
> とあって upgrade で余計なことをしないため if 文がいる,
知らなかった。debstd では "if" なしで preinst に入れてくれるてて不満が
なかったので。
> postrm で
>
> if [ remove = "$1" ] ; then
> dpkg-divert ....
>
> と書かれていました。そこで
>
> * 途中のバージョンから diversion を採用すると install
> だけでなく upgrade にも対応しないと困るのでは?
preinst/postinst などについては Packaging Manual 6 章が詳しいです。
6.2 によると upgrade時には
new-preinst upgrade old-version
とだけ呼ばれるようなので、 途中のバージョンから diversion を採用すると
if [ install = "$1" ] ; then
とすると不十分のような気がします。(if がなければ問題ない)
$2 を使って、今インストールされているパッケージが diversion 導入済かど
うか知らべるのでしょうね。
> * postrm は当然 purge にも対応するべきと思うのですが。
purge 時にも "postrm remove" が呼ばれるから不要でしょう。(6.5)
--
中原 早生
広島大学総合科学部
nakahara@xxxxxxxxxxxxxxxxxxxxx