aboutsummaryrefslogtreecommitdiff
path: root/nix/utils-i18n.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nix/utils-i18n.nix')
-rw-r--r--nix/utils-i18n.nix57
1 files changed, 57 insertions, 0 deletions
diff --git a/nix/utils-i18n.nix b/nix/utils-i18n.nix
new file mode 100644
index 0000000..95ae312
--- /dev/null
+++ b/nix/utils-i18n.nix
@@ -0,0 +1,57 @@
+{ pkgs }: rec {
+ sphinx-intl = with pkgs.python3.pkgs;
+ buildPythonPackage rec {
+ pname = "sphinx-intl";
+ version = "2.0.1";
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "1d1q0sanjp4nkfvhsxi75zf3xjyyi8nzxvl3v7l0jy9ld70nwnmj";
+ };
+ propagatedBuildInputs = with pkgs.python3Packages; [ Babel click sphinx ];
+ };
+ dicts = rec {
+ mkDict = let
+ prefix =
+ "https://raw.githubusercontent.com/wooorm/dictionaries/61016e00e276f9bf5e52cbc6c02a45f2e49b2c7e/dictionaries";
+ in { lang, dicSHA256, affSHA256 }:
+ let
+ dic = builtins.fetchurl {
+ url = "${prefix}/${lang}/index.dic";
+ sha256 = dicSHA256;
+ };
+ aff = builtins.fetchurl {
+ url = "${prefix}/${lang}/index.aff";
+ sha256 = affSHA256;
+ };
+ in pkgs.stdenv.mkDerivation {
+ name = "website-dict-${lang}";
+ builder = builtins.toFile "builder.sh" ''
+ source $stdenv/setup
+ install -dm755 $out/share/hunspell
+ install -m644 ${dic} $out/share/hunspell/${lang}.dic
+ install -m644 ${aff} $out/share/hunspell/${lang}.aff
+ runHook postInstall
+ '';
+ };
+ en = mkDict {
+ lang = "en";
+ dicSHA256 = "1k4660ccwwpwac0rc7b8ih3vd24kxgvljkrakv2l1f72yfpw3bp2";
+ affSHA256 = "0yvc2fhc03y0y1gwjyb20ifcrxnzm3ama1fri9r5gna092fz3qca";
+ };
+ pt = mkDict {
+ lang = "pt";
+ dicSHA256 = "1z0kfxv8m361xhp4zwdlsn2ib8q3rnljj0b2s4482alyxpd00h9x";
+ affSHA256 = "1ssj1g7qwh0lv3ajzvchwsfr7cgzrlqms28m1j3gm1y2avi50qhw";
+ };
+ fr = mkDict {
+ lang = "fr";
+ dicSHA256 = "10p6jlk9j117mjd1z3dp3vfszcvxqha11kfvksqhvrq4ld9xwzbn";
+ affSHA256 = "0d6k608h7gm1za3vdq1fhlwqzz2zxg1z0bx1bfvi0spg4a2mn09p";
+ };
+ eo = mkDict {
+ lang = "eo";
+ dicSHA256 = "1hbs8f67kq953llcx8pm0rwi2ln2y693pva952fb9mjc4l99ic3m";
+ affSHA256 = "198jaiab98xks5srizi3ww7sg5biqhjl7acjhrsrmcycp8jvns56";
+ };
+ };
+}