nixpkgs/pkgs/development/libraries/libime/default.nix

68 lines
1.5 KiB
Nix

{ lib
, stdenv
, fetchurl
, fetchFromGitHub
, cmake
, extra-cmake-modules
, boost
, python3
, fcitx5
, zstd
}:
let
tableVer = "20240108";
table = fetchurl {
url = "https://download.fcitx-im.org/data/table-${tableVer}.tar.gz";
hash = "sha256-cpxZbYaQfecnx00Pw/0kHEBsXevStMt07v4CI4funa4=";
};
arpaVer = "20230712";
arpa = fetchurl {
url = "https://download.fcitx-im.org/data/lm_sc.arpa-${arpaVer}.tar.xz";
hash = "sha256-ut1iwWxjc3h6D9qPCc1FLRL2DVhohW9lHO7PGge6ujI=";
};
dictVer = "20240416";
dict = fetchurl {
url = "https://download.fcitx-im.org/data/dict-${dictVer}.tar.zst";
hash = "sha256-nCYsv6MGy0w7BVmRt+IrRT4PJn8gzrXZ2eX4++Ty02c=";
};
in
stdenv.mkDerivation rec {
pname = "libime";
version = "1.1.7";
src = fetchFromGitHub {
owner = "fcitx";
repo = "libime";
rev = version;
hash = "sha256-I8zznZlMz1U2DAVYkvtF1thEYz/tIEbA682y7czK5ck=";
fetchSubmodules = true;
};
prePatch = ''
ln -s ${table} data/$(stripHash ${table})
ln -s ${arpa} data/$(stripHash ${arpa})
ln -s ${dict} data/$(stripHash ${dict})
'';
nativeBuildInputs = [
cmake
extra-cmake-modules
python3
];
buildInputs = [
zstd
boost
fcitx5
];
meta = with lib; {
description = "A library to support generic input method implementation";
homepage = "https://github.com/fcitx/libime";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}