やるきなし

2024/03/03 21:44 / Gnome 環境で日本語入力モードにすると gnome-shell が死ぬ

64-bit time_t への移行とかあったりして Debian unstable がややこしいことになっているが,それの影響かよくわからないが Mozc で日本語入力モードにすると gnome-shell が死ぬようになった.死ぬというのは以下の表示と Log Out ボタンが現れる.

Oh no! Something has gone wrong.
A problem has occurred and the system can't recover.
Please log out and try again.

別環境では問題無いようだったので,調べてみたら dconf の設定に依存するらしい.というか org.gnome.desktop.input-sourcesper-windowtrue だと不具合起こすらしい.以下で解決.

% gsettings set org.gnome.desktop.input-sources per-window false

なお,dconf の内容は以下のように dump して(テキスト形式),編集して,取り込む,ということができる.

% dconf dump / > dump.dconf
% vi dump.dconf
% dconf reset -f /
% dconf load / < dump.dconf 

以下の設定を一旦まるごと消して,そこから再度設定をしていって問題箇所を明らかにしていった.

ちなみに dconf の設定は ~/.config/dconf/user にある(バイナリ).たまにダンプしてバックアップするのが良いかもしれない.

追記(2024/5/21)

現在は per-windowtrue でも gnome-shell は問題なく動作する.Terminal (や Emacs) は基本的に Direct 入力なので,per-window false だと少々面倒だった.なお,Emacs は以下をして,そもそもデスクトップ環境のIMを使わないように設定している.

echo "Emacs*useXIM: false" | xrdb -merge

追記(2024/5/30)

% gsettings set org.gnome.desktop.input-sources per-window true

な状態で gnome-shell 起動して,Mozc で日本語入力しようと Direct input から Hiragana に切り替えたタイミングで gnome-shell が死んでしまう様子.

% gsettings set org.gnome.desktop.input-sources per-window false

としておいて,Mozc Hiragana 状態にしてしまえば,あとは per-window true にして問題ない様子.

Related articles