Jump to content

Fcitx5: Difference between revisions

From NixOS Wiki
drop 23.11
Setup: update option names
Line 2: Line 2:


== Setup ==
== Setup ==
The following is a simple NixOS configuration that'll setup fcitx5, its GUI config tool, and two addons.
The following is a simple NixOS configuration that sets up fcitx5, its GUI config tool, and two addons.<syntaxhighlight lang="nix">
 
i18n.inputMethod = {
i18n.inputMethod = {
  enable = true;
    enabled = "fcitx5";
  type = "fcitx5";
    fcitx5.addons = with pkgs; [
  fcitx5.addons = with pkgs; [ fcitx5-mozc fcitx5-gtk ];
        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 ===
Installing 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]].
'''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.

Fcitx5 failing to load IME module (claims "使用不可" (unusable))

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.