1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-11-21 09:49:39 +01:00
home-manager/tests/modules/i18n/input-method/fcitx5/configuration.nix
2025-04-23 11:51:43 -05:00

83 lines
2.5 KiB
Nix

{
config,
lib,
realPkgs,
...
}:
lib.mkIf config.test.enableBig {
i18n.inputMethod = {
enable = true;
type = "fcitx5";
fcitx5 = {
waylandFrontend = true;
settings = {
globalOptions = {
Behavior = {
ActiveByDefault = false;
resetStateWhenFocusIn = "No";
ShareInputState = "No";
PreeditEnabledByDefault = true;
ShowInputMethodInformation = true;
showInputMethodInformationWhenFocusIn = false;
CompactInputMethodInformation = true;
ShowFirstInputMethodInformation = true;
DefaultPageSize = 5;
OverrideXkbOption = false;
PreloadInputMethod = true;
AllowInputMethodForPassword = false;
ShowPreeditForPassword = false;
AutoSavePeriod = 30;
};
Hotkey = {
EnumerateWithTriggerKeys = true;
EnumerateSkipFirst = false;
ModifierOnlyKeyTimeout = 250;
};
};
inputMethod = {
GroupOrder."0" = "Default";
"Groups/0" = {
Name = "Default";
"Default Layout" = "us";
DefaultIM = "pinyin";
};
"Groups/0/Items/0" = {
Name = "keyboard-us";
Layout = null;
};
"Groups/0/Items/1" = {
Name = "pinyin";
Layout = null;
};
};
addons.classicui.globalSection.Theme = "example";
};
themes.example = {
theme = ''
[Metadata]
Name=example
Version=0.1
Author=home-manager
Description=Theme for testing
ScaleWithDPI=True
'';
};
};
};
_module.args.pkgs = lib.mkForce realPkgs;
nmt.script = ''
assertFileExists home-files/.config/systemd/user/fcitx5-daemon.service
assertFileExists home-files/.config/fcitx5/config
assertFileContent home-files/.config/fcitx5/config ${./config}
assertFileExists home-files/.config/fcitx5/profile
assertFileContent home-files/.config/fcitx5/profile ${./profile}
assertFileExists home-files/.config/fcitx5/conf/classicui.conf
assertFileContent home-files/.config/fcitx5/conf/classicui.conf ${./classicui.conf}
assertFileExists home-files/.local/share/fcitx5/themes/example/theme.conf
assertFileNotRegex home-path/etc/profile.d/hm-session-vars.sh 'GTK_IM_MODULE'
assertFileNotRegex home-path/etc/profile.d/hm-session-vars.sh 'QT_IM_MODULE'
'';
}