NixOSを最新にして、日本語入力にfcitx5を使うようにした

手順

今回はNixOS 22.11から23.05を飛ばして23.11にアップグレードする。

基本的に毎回そうだがリリースノートを読んで、/etc/nixos/configuration.nixを変更する。

通常の場合、NixOSのマニュアルに書いてあるとおり、チャンネルを新バージョンに切り替えてから、 nixos-rebuild switch --upgradeを行うが、今回はリリースノートにnixos-rebuild bootを使う旨が書いてあるのでnixos-rebuild boot --upgradeでアップグレードを行い、その後、再起動をする。(switchとbootの違いはヘルプ参照)

日本語入力

fcitx4を使っていたが、NixOS 23.05から削除されたのでfcitx5に移行する。

NixOSのwikiに書いてあるとおりに以下のように設定した。

i18n.inputMethod = {
    enabled = "fcitx5";
    fcitx5.addons = with pkgs; [
        fcitx5-mozc
        fcitx5-gtk
    ];
};

しかし、私はデスクトップマネージャーを使わずにi3を使っており、fcitx5自動起動せず、 自分で起動しないと日本語入力が有効にならない状況だったので、 services.xserver.desktopManager.runXdgAutostartIfNone = true;を追加した。

これにより、期待通り動作するようになった。

私のようにデスクトップマネージャーを使ってない人はこの設定が必要になるかと思われる。

オプションの詳細はNixOS Search - Optionsで確認ができる。

services = {
  xserver = {
    ...(その他の設定)
    desktopManager = {
      ...(その他の設定)
      runXdgAutostartIfNone = true;
    };
  };
};