summary refs log tree commit diff
path: root/pkgs/development/python-modules/gruut/default.nix
diff options
context:
space:
mode:
authorMartin Weinelt <mweinelt@users.noreply.github.com>2021-07-10 20:15:53 +0200
committerGitHub <noreply@github.com>2021-07-10 20:15:53 +0200
commitb7e408dd17f6868ff5d3f50d4b44eaee067412cc (patch)
treed6e3789177ec4a8b49892302f5c24e0cb72a25dc /pkgs/development/python-modules/gruut/default.nix
parentc786eaf612327455b1eaed7c32563c3d07c3d6be (diff)
parent26f64b251cbac73569e2f5cf83b27f1b0f1fe011 (diff)
downloadnixpkgs-b7e408dd17f6868ff5d3f50d4b44eaee067412cc.tar
nixpkgs-b7e408dd17f6868ff5d3f50d4b44eaee067412cc.tar.gz
nixpkgs-b7e408dd17f6868ff5d3f50d4b44eaee067412cc.tar.bz2
nixpkgs-b7e408dd17f6868ff5d3f50d4b44eaee067412cc.tar.lz
nixpkgs-b7e408dd17f6868ff5d3f50d4b44eaee067412cc.tar.xz
nixpkgs-b7e408dd17f6868ff5d3f50d4b44eaee067412cc.tar.zst
nixpkgs-b7e408dd17f6868ff5d3f50d4b44eaee067412cc.zip
Merge branch 'master' into staging-next
Diffstat (limited to 'pkgs/development/python-modules/gruut/default.nix')
-rw-r--r--pkgs/development/python-modules/gruut/default.nix74
1 files changed, 74 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/gruut/default.nix b/pkgs/development/python-modules/gruut/default.nix
new file mode 100644
index 00000000000..c922d0b52d4
--- /dev/null
+++ b/pkgs/development/python-modules/gruut/default.nix
@@ -0,0 +1,74 @@
+{ lib
+, buildPythonPackage
+, callPackage
+, pythonOlder
+, fetchFromGitHub
+, Babel
+, gruut-ipa
+, jsonlines
+, num2words
+, python-crfsuite
+, dataclasses
+, python
+}:
+
+let
+  langPkgs = [
+    "cs"
+    "de"
+    "es"
+    "fr"
+    "it"
+    "nl"
+    "pt"
+    "ru"
+    "sv"
+    "sw"
+  ];
+in
+buildPythonPackage rec {
+  pname = "gruut";
+  version = "1.2.0";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "rhasspy";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1763qmcd1gxap27jppqaywx03k5cagcl62z2p2qdiqigdksplm2g";
+  };
+
+  postPatch = ''
+    substituteInPlace requirements.txt \
+      --replace "Babel~=2.8.0" "Babel"
+  '';
+
+  propagatedBuildInputs = [
+    Babel
+    gruut-ipa
+    jsonlines
+    num2words
+    python-crfsuite
+  ] ++ lib.optionals (pythonOlder "3.7") [
+    dataclasses
+  ] ++ (map (lang: callPackage ./language-pack.nix {
+    inherit lang version format src;
+  }) langPkgs);
+
+  checkPhase = ''
+    runHook preCheck
+    ${python.interpreter} -m unittest discover
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [
+    "gruut"
+  ];
+
+  meta = with lib; {
+    description = "A tokenizer, text cleaner, and phonemizer for many human languages";
+    homepage = "https://github.com/rhasspy/gruut";
+    license = licenses.mit;
+    maintainers = teams.tts.members;
+  };
+}