Merge pull request #278765 from NickCao/fcitx

nixos/fcitx5: allow using the wayland frontend instead of the fcitx5 one
This commit is contained in:
Nick Cao 2024-01-04 17:15:57 -05:00 committed by GitHub
commit 998bcbec9b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -19,6 +19,14 @@ in
Enabled Fcitx5 addons. Enabled Fcitx5 addons.
''; '';
}; };
waylandFrontend = mkOption {
type = types.bool;
default = false;
description = lib.mdDoc ''
Use the Wayland input method frontend.
See [Using Fcitx 5 on Wayland](https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland).
'';
};
quickPhrase = mkOption { quickPhrase = mkOption {
type = with types; attrsOf str; type = with types; attrsOf str;
default = { }; default = { };
@ -118,10 +126,11 @@ in
]; ];
environment.variables = { environment.variables = {
GTK_IM_MODULE = "fcitx";
QT_IM_MODULE = "fcitx";
XMODIFIERS = "@im=fcitx"; XMODIFIERS = "@im=fcitx";
QT_PLUGIN_PATH = [ "${fcitx5Package}/${pkgs.qt6.qtbase.qtPluginPrefix}" ]; QT_PLUGIN_PATH = [ "${fcitx5Package}/${pkgs.qt6.qtbase.qtPluginPrefix}" ];
} // lib.optionalAttrs (!cfg.waylandFrontend) {
GTK_IM_MODULE = "fcitx";
QT_IM_MODULE = "fcitx";
} // lib.optionalAttrs cfg.ignoreUserConfig { } // lib.optionalAttrs cfg.ignoreUserConfig {
SKIP_FCITX_USER_PATH = "1"; SKIP_FCITX_USER_PATH = "1";
}; };