stats: 2.11.23 -> 2.11.26 (#374860)
[NixPkgs.git] / pkgs / development / libraries / hunspell / default.nix
blob0644c6b6e984d5e6dd9ed0dc93dc9bca42321e1d
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   ncurses,
6   readline,
7   autoreconfHook,
8 }:
10 stdenv.mkDerivation rec {
11   version = "1.7.2";
12   pname = "hunspell";
14   src = fetchFromGitHub {
15     owner = "hunspell";
16     repo = "hunspell";
17     rev = "v${version}";
18     sha256 = "sha256-x2FXxnVIqsf5/UEQcvchAndXBv/3mW8Z55djQAFgNA8=";
19   };
21   outputs = [
22     "bin"
23     "dev"
24     "out"
25     "man"
26   ];
28   buildInputs = [
29     ncurses
30     readline
31   ];
32   nativeBuildInputs = [ autoreconfHook ];
34   patches = [
35     ./0001-Make-hunspell-look-in-XDG_DATA_DIRS-for-dictionaries.patch
36   ];
38   postPatch = ''
39     patchShebangs tests
40   '';
42   autoreconfFlags = [ "-vfi" ];
44   configureFlags = [
45     "--with-ui"
46     "--with-readline"
47   ];
49   hardeningDisable = [ "format" ];
51   meta = with lib; {
52     homepage = "https://hunspell.sourceforge.net";
53     description = "Spell checker";
54     longDescription = ''
55       Hunspell is the spell checker of LibreOffice, OpenOffice.org, Mozilla
56       Firefox 3 & Thunderbird, Google Chrome, and it is also used by
57       proprietary software packages, like macOS, InDesign, memoQ, Opera and
58       SDL Trados.
60       Main features:
62       * Extended support for language peculiarities; Unicode character encoding, compounding and complex morphology.
63       * Improved suggestion using n-gram similarity, rule and dictionary based pronunciation data.
64       * Morphological analysis, stemming and generation.
65       * Hunspell is based on MySpell and works also with MySpell dictionaries.
66       * C++ library under GPL/LGPL/MPL tri-license.
67       * Interfaces and ports:
68         * Enchant (Generic spelling library from the Abiword project),
69         * XSpell (macOS port, but Hunspell is part of the macOS from version 10.6 (Snow Leopard), and
70             now it is enough to place Hunspell dictionary files into
71             ~/Library/Spelling or /Library/Spelling for spell checking),
72         * Delphi, Java (JNA, JNI), Perl, .NET, Python, Ruby ([1], [2]), UNO.
73     '';
74     platforms = platforms.all;
75     license = with licenses; [
76       gpl2
77       lgpl21
78       mpl11
79     ];
80     maintainers = [ ];
81   };