fix(tts): install kittentts on python 3.14 via the misaki fork
KittenTTS 0.8.1 requires misaki[en]>=0.9.4, and PyPI's misaki 0.9.4 declares requires-python <3.13, so the extra was gated off the managed 3.14 interpreter. NousResearch/misaki f03fd2be73 is upstream main (0.9.4 + "Enable Python 3.13") with the cap raised to <3.15 and no code change. The extra now declares misaki[en] at that commit directly, so uv resolves KittenTTS's transitive requirement to the fork. A [tool.uv.sources] entry would not reach a transitive dependency, and an override would bypass pip installs of the extra. The extra is gated on platform instead of Python: onnxruntime has no Intel macOS wheel and torch (pulled by misaki[en]) has no Windows ARM64 wheel, the same gate piper already carries. Nix: uv.lock records no build backend for the git source, so buildSystemOverrides supplies hatchling for misaki. Without it the opt-in build fails with "No module named 'hatchling'". The default package derivation is unchanged; kittentts is in no Nix bundle. Verified on macOS arm64 with CPython 3.14.7: uv sync --frozen --extra kittentts from this lock installs misaki from the fork commit, and tools.tts_tool_local._generate_kittentts writes a 3.87 s 24 kHz WAV.
This commit is contained in:
@@ -74,6 +74,13 @@ let
|
||||
cffi = [ ];
|
||||
};
|
||||
});
|
||||
# [kittentts] locks misaki as a git source. uv.lock records no build
|
||||
# backend for it, so supply the hatchling its pyproject declares.
|
||||
misaki = prev.misaki.overrideAttrs (old: {
|
||||
nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ final.resolveBuildSystem {
|
||||
hatchling = [ ];
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
pythonPackageOverrides =
|
||||
|
||||
Reference in New Issue
Block a user