diff options
Diffstat (limited to 'nixpkgs/pkgs/tools/inputmethods/fcitx5/default.nix')
-rw-r--r-- | nixpkgs/pkgs/tools/inputmethods/fcitx5/default.nix | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/inputmethods/fcitx5/default.nix b/nixpkgs/pkgs/tools/inputmethods/fcitx5/default.nix new file mode 100644 index 000000000000..e578fbf14432 --- /dev/null +++ b/nixpkgs/pkgs/tools/inputmethods/fcitx5/default.nix @@ -0,0 +1,102 @@ +{ lib, stdenv +, fetchurl +, fetchFromGitHub +, pkg-config +, cmake +, extra-cmake-modules +, cairo +, cldr-emoji-annotation +, pango +, fribidi +, fmt +, wayland +, systemd +, wayland-protocols +, json_c +, isocodes +, xkeyboard_config +, enchant +, gdk-pixbuf +, libGL +, libevent +, libuuid +, libselinux +, libXdmcp +, libsepol +, libxkbcommon +, libthai +, libdatrie +, xcbutilkeysyms +, pcre +, xcbutilwm +, xcb-imdkit +, libxkbfile +}: +let + enDictVer = "20121020"; + enDict = fetchurl { + url = "https://download.fcitx-im.org/data/en_dict-${enDictVer}.tar.gz"; + sha256 = "1svcb97sq7nrywp5f2ws57cqvlic8j6p811d9ngflplj8xw5sjn4"; + }; +in +stdenv.mkDerivation rec { + pname = "fcitx5"; + version = "5.0.4"; + + src = fetchFromGitHub { + owner = "fcitx"; + repo = "fcitx5"; + rev = version; + sha256 = "sha256-2KGdR1m70Qatidzf/DZuFK3lc1t8z7sxjyhaxuc0Tqg="; + }; + + prePatch = '' + ln -s ${enDict} src/modules/spell/dict/$(stripHash ${enDict}) + ''; + + nativeBuildInputs = [ + cmake + extra-cmake-modules + pkg-config + ]; + + buildInputs = [ + fmt + isocodes + cairo + enchant + pango + libthai + libdatrie + fribidi + systemd + gdk-pixbuf + wayland + wayland-protocols + cldr-emoji-annotation + json_c + libGL + libevent + libuuid + libselinux + libsepol + libXdmcp + libxkbcommon + pcre + xcbutilwm + xcbutilkeysyms + xcb-imdkit + xkeyboard_config + libxkbfile + ]; + + passthru.updateScript = ./update.py; + + meta = with lib; { + description = "Next generation of fcitx"; + homepage = "https://github.com/fcitx/fcitx5"; + license = licenses.lgpl21Plus; + maintainers = with maintainers; [ poscat ]; + platforms = platforms.linux; + }; +} |