Fcitx5: Difference between revisions
 drop 23.11  | 
				Starfish2228 (talk | contribs)  →Setup:  update option names  | 
				||
| Line 2: | Line 2: | ||
== Setup ==  | == Setup ==  | ||
The following is a simple NixOS configuration that  | The following is a simple NixOS configuration that sets up fcitx5, its GUI config tool, and two addons.<syntaxhighlight lang="nix">  | ||
i18n.inputMethod = {  | |||
  enable = true;  | |||
  type = "fcitx5";  | |||
  fcitx5.addons = with pkgs; [ fcitx5-mozc fcitx5-gtk ];  | |||
};  | |||
</syntaxhighlight>Notably, NixOS automagically sets session variables that are required for fcitx5.    | |||
Notably, NixOS automagically sets session variables that are required for fcitx5.    | |||
== Troubleshooting ==  | == Troubleshooting ==  | ||
=== Add-ons Not Detected ===  | === Add-ons Not Detected ===  | ||
'''Do not''' install fcitx5 using <code>environment.systemPackages</code> can interfere with add-on detection. Make sure to only add fcitx5 to your config as shown in [[Fcitx5#Setup | Setup]].  | |||
[[File:Fcitx5-mozc-load-fail.jpg|thumb|Fcitx5 failing to load IME module (claims "使用不可" (unusable))]]  | [[File:Fcitx5-mozc-load-fail.jpg|thumb|Fcitx5 failing to load IME module (claims "使用不可" (unusable))]]  | ||
Revision as of 14:05, 24 February 2025
Fcitx5 is a lightweight input method framework with addon support.
Setup
The following is a simple NixOS configuration that sets up fcitx5, its GUI config tool, and two addons.
i18n.inputMethod = {
  enable = true;
  type = "fcitx5";
  fcitx5.addons = with pkgs; [ fcitx5-mozc fcitx5-gtk ];
};
Notably, NixOS automagically sets session variables that are required for fcitx5.
Troubleshooting
Add-ons Not Detected
Do not install fcitx5 using environment.systemPackages can interfere with add-on detection. Make sure to only add fcitx5 to your config as shown in  Setup.

Another possibility is that you are calling ${pkgs.fcitx5}/bin/fcitx5 instead of the patched fcitx5-with-addons (/run/current-system/sw/bin/fcitx5). For example in Hyprland:
 # ~/.config/hypr/hyprland.conf
 exec-once=fcitx5 -d # not ${pkgs.fcitx5}/bin/fcitx5 !
Fcitx5 Doesn't Start When Using WM
If using a Window Manager (WM), such as Sway, you may need to add services.xserver.desktopManager.runXdgAutostartIfNone = true; to your NixOS configuration.
Using Wayland
Set boolean i18n.inputMethod.fcitx5.waylandFrontend to true to suppress warnings about environment variables.