Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / libraries / hunspell / dictionaries-chromium.nix
blob6f834147d00b66e2e4725d62935a9c13ec9cc699
1 { lib, stdenv, fetchgit }:
3 let
4   mkDictFromChromium = { shortName, dictFileName, shortDescription }:
5     stdenv.mkDerivation {
6       pname = "hunspell-dict-${shortName}-chromium";
7       version = "115.0.5790.170";
9       src = fetchgit {
10         url = "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries";
11         rev = "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e";
12         hash = "sha256-67mvpJRFFa9eMfyqFMURlbxOaTJBICnk+gl0b0mEHl8=";
13       };
15       dontBuild = true;
17       installPhase = ''
18         cp ${dictFileName} $out
19       '';
21       passthru = {
22         # As chromium needs the exact filename in ~/.config/chromium/Dictionaries,
23         # this value needs to be known to tools using the package if they want to
24         # link the file correctly.
25         inherit dictFileName;
27         updateScript = ./update-chromium-dictionaries.py;
28       };
30       meta = {
31         homepage = "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries/";
32         description = "Chromium compatible hunspell dictionary for ${shortDescription}";
33         longDescription = ''
34           Humspell directories in Chromium's custom bdic format
36           See https://www.chromium.org/developers/how-tos/editing-the-spell-checking-dictionaries/
37         '';
38         license = with lib.licenses; [ gpl2 lgpl21 mpl11 lgpl3 ];
39         maintainers = with lib.maintainers; [ networkexception ];
40         platforms = lib.platforms.all;
41       };
42     };
44 rec {
46   /* ENGLISH */
48   en_US = en-us;
49   en-us = mkDictFromChromium {
50     shortName = "en-us";
51     dictFileName = "en-US-10-1.bdic";
52     shortDescription = "English (United States)";
53   };
55   en_GB = en-us;
56   en-gb = mkDictFromChromium {
57     shortName = "en-gb";
58     dictFileName = "en-GB-10-1.bdic";
59     shortDescription = "English (United Kingdom)";
60   };
62   /* GERMAN */
64   de_DE = de-de;
65   de-de = mkDictFromChromium {
66     shortName = "de-de";
67     dictFileName = "de-DE-3-0.bdic";
68     shortDescription = "German (Germany)";
69   };