Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 65 lines 1.3 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchurl, 5 pkg-config, 6 cmake, 7 extra-cmake-modules, 8 gettext, 9 zstd, 10 fcitx5, 11 librime, 12 rime-data, 13 symlinkJoin, 14 rimeDataPkgs ? [ rime-data ], 15}: 16 17stdenv.mkDerivation rec { 18 pname = "fcitx5-rime"; 19 version = "5.1.10"; 20 21 src = fetchurl { 22 url = "https://download.fcitx-im.org/fcitx5/${pname}/${pname}-${version}.tar.zst"; 23 hash = "sha256-ACW79fLgrS+Qv8YJjGr4WldTJsnnGhC0WWf8ia9khYk="; 24 }; 25 26 cmakeFlags = [ 27 "-DRIME_DATA_DIR=${placeholder "out"}/share/rime-data" 28 ]; 29 30 nativeBuildInputs = [ 31 cmake 32 extra-cmake-modules 33 pkg-config 34 gettext 35 zstd 36 ]; 37 38 buildInputs = [ 39 fcitx5 40 librime 41 ]; 42 43 rimeDataDrv = symlinkJoin { 44 name = "fcitx5-rime-data"; 45 paths = rimeDataPkgs; 46 postBuild = '' 47 mkdir -p $out/share/rime-data 48 49 # Ensure default.yaml exists 50 [ -e "$out/share/rime-data/default.yaml" ] || touch "$out/share/rime-data/default.yaml" 51 ''; 52 }; 53 54 postInstall = '' 55 cp -r "${rimeDataDrv}/share/rime-data/." $out/share/rime-data/ 56 ''; 57 58 meta = with lib; { 59 description = "RIME support for Fcitx5"; 60 homepage = "https://github.com/fcitx/fcitx5-rime"; 61 license = licenses.lgpl21Plus; 62 maintainers = with maintainers; [ poscat ]; 63 platforms = platforms.linux; 64 }; 65}