stevenblack-blocklist: 3.15.5 -> 3.15.8 (#372042)
[NixPkgs.git] / pkgs / tools / inputmethods / fcitx5 / default.nix
blob6267021e208c09b351a9050e7b3453d68a402d9f
1 { lib
2 , stdenv
3 , fetchurl
4 , fetchFromGitHub
5 , pkg-config
6 , cmake
7 , extra-cmake-modules
8 , wayland-scanner
9 , cairo
10 , pango
11 , expat
12 , fribidi
13 , fmt
14 , wayland
15 , systemd
16 , wayland-protocols
17 , json_c
18 , isocodes
19 , xkeyboard_config
20 , enchant
21 , gdk-pixbuf
22 , libGL
23 , libuuid
24 , libselinux
25 , libXdmcp
26 , libsepol
27 , libxkbcommon
28 , libthai
29 , libdatrie
30 , xcbutilkeysyms
31 , pcre
32 , xcbutil
33 , xcbutilwm
34 , xcb-imdkit
35 , libxkbfile
36 , nixosTests
37 , gettext
39 let
40   enDictVer = "20121020";
41   enDict = fetchurl {
42     url = "https://download.fcitx-im.org/data/en_dict-${enDictVer}.tar.gz";
43     hash = "sha256-xEpdeEeSXuqeTS0EdI1ELNKN2SmaC1cu99kerE9abOs=";
44   };
46 stdenv.mkDerivation rec {
47   pname = "fcitx5";
48   version = "5.1.11";
50   src = fetchFromGitHub {
51     owner = "fcitx";
52     repo = pname;
53     rev = version;
54     hash = "sha256-8J2gr2quZvJELd3zzhgwZUowjkOylpM6VZGJ1G3VomI=";
55   };
57   prePatch = ''
58     ln -s ${enDict} src/modules/spell/$(stripHash ${enDict})
59   '';
61   nativeBuildInputs = [
62     cmake
63     extra-cmake-modules
64     pkg-config
65     wayland-scanner
66     gettext
67   ];
69   buildInputs = [
70     extra-cmake-modules # required to please CMake
71     expat
72     fmt
73     isocodes
74     cairo
75     enchant
76     pango
77     libthai
78     libdatrie
79     fribidi
80     systemd
81     gdk-pixbuf
82     wayland
83     wayland-protocols
84     json_c
85     libGL
86     libuuid
87     libselinux
88     libsepol
89     libXdmcp
90     libxkbcommon
91     pcre
92     xcbutil
93     xcbutilwm
94     xcbutilkeysyms
95     xcb-imdkit
96     xkeyboard_config
97     libxkbfile
98   ];
100   strictDeps = true;
102   passthru = {
103     updateScript = ./update.py;
104     tests = {
105       inherit (nixosTests) fcitx5;
106     };
107   };
109   meta = with lib; {
110     description = "Next generation of fcitx";
111     homepage = "https://github.com/fcitx/fcitx5";
112     license = licenses.lgpl21Plus;
113     mainProgram = "fcitx5";
114     maintainers = with maintainers; [ poscat ];
115     platforms = platforms.linux;
116   };