1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 pkg-config,
6 cmake,
7 extra-cmake-modules,
8 gettext,
9 fcitx5,
10 fcitx5-qt,
11 libskk,
12 qtbase,
13 skkDictionaries,
14 enableQt ? false,
15}:
16
17stdenv.mkDerivation rec {
18 pname = "fcitx5-skk";
19 version = "5.1.6";
20
21 src = fetchFromGitHub {
22 owner = "fcitx";
23 repo = pname;
24 rev = version;
25 hash = "sha256-1gfR0wXBXM6Gttwldg2vm8DUUW4OciqKMQkpFQHqLoE=";
26 };
27
28 nativeBuildInputs = [
29 cmake
30 extra-cmake-modules
31 gettext
32 pkg-config
33 ];
34
35 buildInputs = [
36 fcitx5
37 libskk
38 ]
39 ++ lib.optionals enableQt [
40 fcitx5-qt
41 qtbase
42 ];
43
44 cmakeFlags = [
45 (lib.cmakeBool "ENABLE_QT" enableQt)
46 (lib.cmakeBool "USE_QT6" (lib.versions.major qtbase.version == "6"))
47 "-DSKK_DEFAULT_PATH=${skkDictionaries.l}/share/skk/SKK-JISYO.L"
48 ];
49
50 dontWrapQtApps = true;
51
52 meta = with lib; {
53 description = "Input method engine for Fcitx5, which uses libskk as its backend";
54 homepage = "https://github.com/fcitx/fcitx5-skk";
55 license = licenses.gpl3Plus;
56 maintainers = with maintainers; [ wattmto ];
57 platforms = platforms.linux;
58 };
59}