mirror of
https://github.com/zoriya/home-manager.git
synced 2026-06-03 19:02:51 +00:00
i18n.inputMethod: add module
This commit is contained in:
committed by
Robert Helgesson
parent
ab0e6c3e0e
commit
7e2b1a42aa
@@ -0,0 +1,45 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let cfg = config.i18n.inputMethod.uim;
|
||||
in {
|
||||
options = {
|
||||
|
||||
i18n.inputMethod.uim = {
|
||||
toolbar = mkOption {
|
||||
type = types.enum [ "gtk" "gtk3" "gtk-systray" "gtk3-systray" "qt4" ];
|
||||
default = "gtk";
|
||||
example = "gtk-systray";
|
||||
description = ''
|
||||
Selected UIM toolbar.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = mkIf (config.i18n.inputMethod.enabled == "uim") {
|
||||
i18n.inputMethod.package = pkgs.uim;
|
||||
|
||||
home.sessionVariables = {
|
||||
GTK_IM_MODULE = "uim";
|
||||
QT_IM_MODULE = "uim";
|
||||
XMODIFIERS = "@im=uim";
|
||||
};
|
||||
|
||||
systemd.user.services.uim-daemon = {
|
||||
Unit = {
|
||||
Description = "Uim input method editor";
|
||||
PartOf = [ "graphical-session.desktop" ];
|
||||
};
|
||||
Service.ExecStart = toString
|
||||
(pkgs.writeShellScript "start-uim-xim-and-uim-toolbar" ''
|
||||
${pkgs.uim}/bin/uim-xim &
|
||||
${pkgs.uim}/bin/uim-toolbar-${cfg.toolbar}
|
||||
'');
|
||||
Install.WantedBy = [ "graphical-session.target" ];
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user