{ pkgs, ... }:

let
  themes = ".local/share/fcitx5/themes/"; # fcitx5 theme folder
  nord = pkgs.fetchFromGitHub {
    owner = "tonyfettes";
    repo = "fcitx5-nord";
    rev = "bdaa8fb723b8d0b22f237c9a60195c5f9c9d74d1";
    sha256 = "qVo/0ivZ5gfUP17G29CAW0MrRFUO0KN1ADl1I/rvchE=";
  };
  gruvbox = pkgs.fetchFromGitHub {
    owner = "ayamir";
    repo = "fcitx5-gruvbox";
    rev = "80bd3ab4c723fc6fcc4a222b6cede6f8337eedda";
    sha256 = "UZc6UTpodxP3pJ6q58FZsJaHr1Wwl/NLYYmo22QYmNk=";
  };
in
{
  i18n.inputMethod = {
    enabled = "fcitx5";
    fcitx5.addons = with pkgs.fcitx-engines; [ anthy ];
  };

  home.file = {
    "${themes}Nord-Dark".source = "${nord}/Nord-Dark";
    "${themes}Nord-Light".source = "${nord}/Nord-Light";
    "${themes}Gruvbox-Dark".source = "${gruvbox}/Gruvbox-Dark";
    "${themes}Gruvbox-Light".source = "${gruvbox}/Gruvbox-Light";
    ".config/fcitx5/conf/classicui.conf".text = "Theme=Nord-Dark";
  };
}
