⌨️

WSLでGUIアプリの日本語入力を設定しようとしたらハマった

2024/02/18に公開

さくっとfcitx-mozc入れて設定できるかと思ったらエラーが出て動きませんでした。

fcitx-mozcのインストール

sudo apt update
sudo apt upgrade
sudo apt install fcitx-mozc

.profileで環境変数を設定

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export DefaultIMModule=fcitx

ここでwslを再起動

fcitxを起動

fcitx-autostart

ここで以下のエラーが出て起動しませんでした。

 Connection Error (Failed to connect to socket /run/user/1000/bus: No such file or directory)

設定を開いても本来キーボードの設定が出るところが出ない。

fcitx-config-gtk3

ネットを検索したところ以下の記事を発見
https://tech.buty4649.net/entry/2023/10/10/112349

ということでエラーメッセージで無いよと怒られていたものを追加します。
どうもWSLgが提供するWaylandのUnixドメインソケットファイルが必要みたいで、それは /mnt/wslg/runtime-dir 配下にあるそう。なのでリンクを貼ります。

ln -s /mnt/wslg/runtime-dir/wayland-0* /run/user/1000/

その後にsystemdでログインユーザーに紐づいているサービスを全て起動

sudo systemctl start user@1000

もう一度fcitxを起動してから設定を開くとちゃんとキーボードの設定が。

fcitx-autostart
fcitx-config-gtk3

あとは左下の+からMozcを追加すれば日本語入力ができるようになりました。

設定は以上ですがWSLを再起動するたびにサービス起動のコマンドを叩かないといけず面倒なため、追加で起動のための設定を入れる必要がありそうです。

Discussion