{ lib, pkgs, ... }: with lib; { i18n = { defaultLocale = mkDefault "en_GB.UTF-8"; supportedLocales = [ "C.UTF-8/UTF-8" "en_GB.UTF-8/UTF-8" "en_US.UTF-8/UTF-8" "ja_JP.UTF-8/UTF-8" "ru_RU.UTF-8/UTF-8" ]; inputMethod = { enabled = "fcitx5"; fcitx5.addons = with pkgs; [ fcitx5-configtool fcitx5-mozc ]; }; }; hm.xdg.configFile."fcitx5/profile".text = generators.toINI {} { "Groups/0" = { Name = "Default"; DefaultIM = "mozc"; "Default Layout" = "us"; }; "Groups/0/Items/0" = { Name = "keyboard-us"; Layout = ""; }; "Groups/0/Items/1" = { Name = "mozc"; Layout = "us"; }; "Groups/0/Items/2" = { Name = "keyboard-ru-phonetic"; Layout = ""; }; GroupOrder."0" = "Default"; }; services.xserver = { layout = "us"; xkbOptions = concatStringsSep "," [ "caps:escape" "compose:menu" "terminate:ctrl_alt_bksp" ]; }; }