135 lines
2.7 KiB
Nix
135 lines
2.7 KiB
Nix
{pkgs, ...}: let
|
|
python = pkgs.python312;
|
|
spacyModelEn = python.pkgs.buildPythonPackage rec {
|
|
pname = "en-core-web-sm";
|
|
version = "3.8.0";
|
|
format = "wheel";
|
|
|
|
src = pkgs.fetchurl {
|
|
url = "https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-${version}/en_core_web_sm-${version}-py3-none-any.whl";
|
|
hash = "sha256-GTJCnbcn1L/z3u1rNM/AXfF3lPSlLusmz4ko98Gg+4U=";
|
|
};
|
|
|
|
propagatedBuildInputs = with python.pkgs; [
|
|
spacy
|
|
];
|
|
|
|
doCheck = false;
|
|
pythonImportsCheck = ["en_core_web_sm"];
|
|
};
|
|
|
|
espeakngLoaderPkg = python.pkgs.buildPythonPackage rec {
|
|
pname = "espeakng-loader";
|
|
version = "0.2.4";
|
|
format = "wheel";
|
|
|
|
src = python.pkgs.fetchPypi {
|
|
pname = "espeakng_loader";
|
|
inherit version;
|
|
format = "wheel";
|
|
dist = "py3";
|
|
python = "py3";
|
|
abi = "none";
|
|
platform = "manylinux_2_17_x86_64.manylinux2014_x86_64";
|
|
hash = "sha256-CHIbryfRPUYfa+bu2aZSd+cNaCNP9IT9i5iXsiLNy20=";
|
|
};
|
|
|
|
doCheck = false;
|
|
pythonImportsCheck = ["espeakng_loader"];
|
|
};
|
|
|
|
misakiPkg = python.pkgs.buildPythonPackage rec {
|
|
pname = "misaki";
|
|
version = "0.9.4";
|
|
pyproject = true;
|
|
|
|
src = python.pkgs.fetchPypi {
|
|
inherit pname version;
|
|
hash = "sha256-OWD6Pm3heakO6OYoRGpKT2uMcwtuNBCZnPOWGJ9NnEA=";
|
|
};
|
|
|
|
nativeBuildInputs = with python.pkgs; [
|
|
hatchling
|
|
];
|
|
|
|
propagatedBuildInputs = with python.pkgs; [
|
|
spacyModelEn
|
|
num2words
|
|
addict
|
|
numpy
|
|
regex
|
|
requests
|
|
tqdm
|
|
spacy
|
|
espeakngLoaderPkg
|
|
];
|
|
|
|
doCheck = false;
|
|
pythonImportsCheck = ["misaki"];
|
|
};
|
|
|
|
kokoroPkg = python.pkgs.buildPythonPackage rec {
|
|
pname = "kokoro";
|
|
version = "0.9.4";
|
|
pyproject = true;
|
|
|
|
src = python.pkgs.fetchPypi {
|
|
inherit pname version;
|
|
hash = "sha256-+/YzJieX+M9G/awzFc+creZ9yLdiwP7M8zSJJ3L7msQ=";
|
|
};
|
|
|
|
nativeBuildInputs = with python.pkgs; [
|
|
hatchling
|
|
];
|
|
|
|
propagatedBuildInputs = with python.pkgs; [
|
|
torch
|
|
numpy
|
|
scipy
|
|
soundfile
|
|
huggingface-hub
|
|
loguru
|
|
tqdm
|
|
regex
|
|
requests
|
|
transformers
|
|
misakiPkg
|
|
|
|
phonemizer
|
|
];
|
|
|
|
doCheck = false;
|
|
pythonImportsCheck = ["kokoro"];
|
|
};
|
|
|
|
slopPython = python.withPackages (ps: [
|
|
ps.spacy
|
|
ps.num2words
|
|
ps.addict
|
|
ps.requests
|
|
ps.pillow
|
|
ps.numpy
|
|
ps.soundfile
|
|
ps.scipy
|
|
ps.tqdm
|
|
ps.regex
|
|
ps.torch
|
|
ps.transformers
|
|
ps.huggingface-hub
|
|
ps.phonemizer
|
|
kokoroPkg
|
|
misakiPkg
|
|
espeakngLoaderPkg
|
|
spacyModelEn
|
|
]);
|
|
in {
|
|
documentation.doc.enable = false;
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
ffmpeg
|
|
git
|
|
yt-dlp
|
|
espeak-ng
|
|
slopPython
|
|
];
|
|
}
|