[Linuxmint-jp-devel:197] Re: ibus 設定の強制上書き問題

AYANOKOUZI, Ryuunosuke i38w7i3 @ yahoo.co.jp
2012年 11月 13日 (火) 21:29:27 JST


綾小路です。

ご連絡ありがとうございます。

> AYANOKOUZI さま、 sachs 氏から、バージョン番号は上げていないが、現在の
> パッケージでは直っているという返信をもらいました。
> それで、 mint-gnome-ja をインストールしてみたところ、強制上書きされませ
> んでした。

新しいパッケージの内容を確認しました。下の内容に変更されていますね。

user=`ls /home`
for i in $user
do
if ! [ -d /home/$i/.gconf/desktop/ibus ]; then
if [ -d /home/$i/.gconf ]; then
if [ -d /home/$i/.gconf/desktop ]; then
cp -R /etc/skel/.gconf/desktop/ibus /home/$i/.gconf/desktop
else
cp -R /etc/skel/.gconf/desktop /home/$i/.gconf
fi
else
cp -R /etc/skel/.gconf /home/$i
fi
chown -R $i:$i /home/$i/.gconf
fi
done

> メンテナーさんが出来ない場合には代わりに対応してくださるとの言葉、ありが
> とうございます。
> そのまま、パッケージを入れ続けて様子を見てみようと思います。

以下のケースで期待とは異なる挙動を示すのではないでしょうか。

新しい postinst スクリプトは既存ユーザの個人設定ディレクトリの有無を判
断材料にして変換エンジンの優先順位を高いほうから mozc-jp、anthy の順に
設定しようとしていますが、

1. root がシステムの変換エンジンの優先順位設定に変更を加えており、これ
   が高いほうから mozc-jp、anthy の順でなく、さらにユーザがシステムの設
   定に変更を加えていない場合、変換エンジンの優先順位設定が強制的に
   mozc-jp、anthy の順に上書きされます。

2. ユーザが変換エンジンの優先順位と関係無い設定に変更を加えて個人設定ディ
   レクトリが存在する場合、変換エンジンの優先順位設定はシステムの設定に
   なり、mozc-jp、anthy の順になりません。

これらは postinst スクリプトが

1. gconf の設定内容はいくつかのファイルに格納されており、ユーザの設定内
   容 ($(HOME)/.gconf) はシステムの設定内容
   (/etc/gconf/gconf.xml.defaults) よりも優先される点を考慮していない

2. 個々の設定項目の内容を確認していない

点に原因があります。

個人的な設定があることは高い確率で本人がその設定に満足していると考え、
強制上書きしないという判断は正しいと思いますが、個人的な設定が無いこと
はシステムの設定に満足しており設定の必要が無く強制上書きされると困る場
合 (上記 1) と、システムの設定に満足していないが設定が出来なかったため
強制上書きしたほうが良い場合 (上記 2) の正反対の状態が考えられます。

メンテナがユーザの利便性を考慮して postinst スクリプトを作っていること
は素晴らしい事と思いますがが、設定内容の有無を根拠に強制上書きの判断を
下すのはユーザの利便性を考慮すると危険だと私は考えます。利便性の判断が
できない以上、既存ユーザの設定は尊重すべきで、root よりもグローバルな強
制力を持つパッケージメンテナの判断でこれを上書きすることは止めたほうが
よいと思います。

綾小路龍之介
--
AYANOKOUZI, Ryuunosuke <i38w7i3 @ yahoo.co.jp>

-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: 無し
型:         application/pgp-signature
サイズ:     836 バイト
説明:       無し
URL:        <http://linuxmint-jp.net/pipermail/linuxmint-jp-devel/attachments/20121113/f96f7984/attachment.sig>


Linuxmint-jp-devel メーリングリストの案内