summaryrefslogtreecommitdiffstats
path: root/nixos/modules/i18n/input-method
diff options
context:
space:
mode:
authorLin Yinfeng <lin.yinfeng@outlook.com>2023-04-01 15:12:19 +0800
committerLin Yinfeng <lin.yinfeng@outlook.com>2023-04-02 10:36:36 +0800
commite4246ae1e7f78b7087dce9c9da10d28d3725025f (patch)
tree91a71fea8e8814657137e979a1ab2e20da65f5c6 /nixos/modules/i18n/input-method
parente3652e0735fbec227f342712f180f4f21f0594f2 (diff)
{ibus,fcitx5}-rime: Refactor RIME data support
Diffstat (limited to 'nixos/modules/i18n/input-method')
-rw-r--r--nixos/modules/i18n/input-method/fcitx5.nix38
1 files changed, 15 insertions, 23 deletions
diff --git a/nixos/modules/i18n/input-method/fcitx5.nix b/nixos/modules/i18n/input-method/fcitx5.nix
index aa816c90a3de..7251240d26ac 100644
--- a/nixos/modules/i18n/input-method/fcitx5.nix
+++ b/nixos/modules/i18n/input-method/fcitx5.nix
@@ -5,10 +5,9 @@ with lib;
let
im = config.i18n.inputMethod;
cfg = im.fcitx5;
- addons = cfg.addons ++ optional cfg.enableRimeData pkgs.rime-data;
- fcitx5Package = pkgs.fcitx5-with-addons.override { inherit addons; };
- whetherRimeDataDir = any (p: p.pname == "fcitx5-rime") cfg.addons;
-in {
+ fcitx5Package = pkgs.fcitx5-with-addons.override { inherit (cfg) addons; };
+in
+{
options = {
i18n.inputMethod.fcitx5 = {
addons = mkOption {
@@ -19,30 +18,23 @@ in {
Enabled Fcitx5 addons.
'';
};
-
- enableRimeData = mkEnableOption (lib.mdDoc "default rime-data with fcitx5-rime");
};
};
+ imports = [
+ (mkRemovedOptionModule [ "i18n" "inputMethod" "fcitx5" "enableRimeData" ] ''
+ RIME data is now included in `fcitx5-rime` by default, and can be customized using `fcitx5-rime.override { rimeDataPkgs = ...; }`
+ '')
+ ];
+
config = mkIf (im.enabled == "fcitx5") {
i18n.inputMethod.package = fcitx5Package;
- environment = mkMerge [{
- variables = {
- GTK_IM_MODULE = "fcitx";
- QT_IM_MODULE = "fcitx";
- XMODIFIERS = "@im=fcitx";
- QT_PLUGIN_PATH = [ "${fcitx5Package}/${pkgs.qt6.qtbase.qtPluginPrefix}" ];
- };
- }
- (mkIf whetherRimeDataDir {
- pathsToLink = [
- "/share/rime-data"
- ];
-
- variables = {
- NIX_RIME_DATA_DIR = "/run/current-system/sw/share/rime-data";
- };
- })];
+ environment.variables = {
+ GTK_IM_MODULE = "fcitx";
+ QT_IM_MODULE = "fcitx";
+ XMODIFIERS = "@im=fcitx";
+ QT_PLUGIN_PATH = [ "${fcitx5Package}/${pkgs.qt6.qtbase.qtPluginPrefix}" ];
+ };
};
}