Files
nixpkgs/pkgs/by-name/li/libskk/package.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

86 lines
2.1 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
libtool,
gettext,
pkg-config,
vala,
gnome-common,
gobject-introspection,
libgee,
json-glib,
skkDictionaries,
libxkbcommon,
}:
stdenv.mkDerivation rec {
pname = "libskk";
version = "1.0.5";
src = fetchFromGitHub {
owner = "ueno";
repo = "libskk";
tag = version;
hash = "sha256-xXed7mQqseefIldGjNsQf8n0YTcI9L9T1FkO/dhNR3g=";
};
env = {
NIX_CFLAGS_COMPILE = toString [
"-Wno-error=int-conversion"
];
};
patches = [
# fix parse error in default.json
# https://github.com/ueno/libskk/pull/90
(fetchpatch {
url = "https://github.com/ueno/libskk/commit/2382ebedc8dca88e745d223ad7badb8b73bbb0de.diff";
hash = "sha256-e1bKVteNjqmr40XI82Qar63LXPWYIfnUVlo5zQSkPNw=";
})
];
buildInputs = [ libxkbcommon ];
nativeBuildInputs = [
vala
gnome-common
gobject-introspection
libtool
gettext
pkg-config
];
propagatedBuildInputs = [
libgee
json-glib
];
configureScript = "./autogen.sh";
# link SKK-JISYO.L from skkdicts for the bundled tool `skk`
preInstall = ''
dictDir=$out/share/skk
mkdir -p $dictDir
ln -s ${skkDictionaries.l}/share/skk/SKK-JISYO.L $dictDir/
'';
enableParallelBuilding = true;
meta = {
description = "Library to deal with Japanese kana-to-kanji conversion method";
mainProgram = "skk";
longDescription = ''
Libskk is a library that implements basic features of SKK including:
new word registration, completion, numeric conversion, abbrev mode, kuten input,
hankaku-katakana input, Lisp expression evaluation (concat only), and re-conversion.
It also supports various typing rules including: romaji-to-kana, AZIK, TUT-Code, and NICOLA,
as well as various dictionary types including: file dictionary (such as SKK-JISYO.[SML]),
user dictionary, skkserv, and CDB format dictionary.
'';
homepage = "https://github.com/ueno/libskk";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ yuriaisaka ];
platforms = lib.platforms.linux;
};
}