presenterm: 0.9.0 -> 0.10.0 (#378946)
[NixPkgs.git] / pkgs / by-name / li / librime / package.nix
blob6024dd41123023a41c935ba6dfec3170a7fa7b58
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   cmake,
6   boost,
7   glog,
8   leveldb,
9   marisa,
10   opencc,
11   yaml-cpp,
12   gtest,
13   capnproto,
14   pkg-config,
15   librime-lua,
16   librime-octagram,
17   plugins ? [
18     librime-lua
19     librime-octagram
20   ],
23 let
24   copySinglePlugin = plug: "cp -r ${plug} plugins/${plug.name}";
25   copyPlugins = ''
26     mkdir -p plugins
27     ${lib.concatMapStringsSep "\n" copySinglePlugin plugins}
28     chmod +w -R plugins/*
29   '';
31 stdenv.mkDerivation rec {
32   pname = "librime";
33   version = "1.13.0";
35   src = fetchFromGitHub {
36     owner = "rime";
37     repo = pname;
38     rev = version;
39     sha256 = "sha256-vkliraMsBLX05gae834R0LX4uT+XaxrfHmDkFPh1XIQ=";
40   };
42   nativeBuildInputs = [
43     cmake
44     pkg-config
45   ];
47   buildInputs = [
48     boost
49     glog
50     leveldb
51     marisa
52     opencc
53     yaml-cpp
54     gtest
55     capnproto
56   ] ++ plugins; # for propagated build inputs
58   preConfigure = copyPlugins;
60   meta = with lib; {
61     homepage = "https://rime.im/";
62     description = "Rime Input Method Engine, the core library";
63     license = licenses.bsd3;
64     maintainers = with maintainers; [ vonfry ];
65     platforms = platforms.linux ++ platforms.darwin;
66   };