[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