1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pkgs
5, python
6}:
7
8buildPythonPackage rec {
9 pname = "gruut-ipa";
10 version = "0.9.3";
11 format = "setuptools";
12
13 src = fetchFromGitHub {
14 owner = "rhasspy";
15 repo = pname;
16 rev = "v${version}";
17 sha256 = "sha256-d/AbvgAD3GHXpwhqjT5Xt9q7Kix+eFMX4kW2BywZWX0=";
18 };
19
20 postPatch = ''
21 patchShebangs bin/speak-ipa
22 substituteInPlace bin/speak-ipa \
23 --replace '${"\${src_dir}:"}' "$out/lib/${python.libPrefix}/site-packages:" \
24 --replace "do espeak" "do ${pkgs.espeak}/bin/espeak"
25 '';
26
27 postInstall = ''
28 install -m0755 bin/speak-ipa $out/bin/speak-ipa
29 '';
30
31 checkPhase = ''
32 runHook preCheck
33 ${python.interpreter} -m unittest discover
34 runHook postCheck
35 '';
36
37 pythonImportsCheck = [
38 "gruut_ipa"
39 ];
40
41 meta = with lib; {
42 description = "Library for manipulating pronunciations using the International Phonetic Alphabet (IPA)";
43 homepage = "https://github.com/rhasspy/gruut-ipa";
44 license = licenses.mit;
45 maintainers = teams.tts.members;
46 };
47}