coqui-tts
The package uses uv to install a specific version of coqui-tts from PyPI into a virtual environment, which is a standard and safe practice for Python packages; the dependencies are either system-provided or pulled from trusted sources, and no unverified or obfuscated remote code execution occurs.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package uses uv to install a specific version of coqui-tts from PyPI into a virtual environment, which is a standard and safe practice for Python packages; the dependencies are either system-provided or pulled from trusted sources, and no unverified or obfuscated remote code execution occurs.
2 higher static findings superseded - not the current verdict (shown for transparency)
pip_install_external
`pip install <package>` fetches an unpinned package from PyPI at build time, outside source=() and makepkg's checksums.
-
PKGBUILD:44
uv pip install 'coqui-tts==0.28.0'
alt_pkg_manager_install
A non-pip/npm package manager (pipx, uv, poetry, cargo install, go install, gem, conda…) fetches and builds an external package at build time, outside source=() and makepkg's checksums.
-
PKGBUILD:44
uv pip install 'coqui-tts==0.28.0'
PKGBUILD
1 offending line(s) highlighted# Maintainer: AlphaJack <alphajack at tuta dot io>
# Co-maintainer: Evert Vorster <evorster at gmail dot com>
pkgname="coqui-tts"
pkgver=0.28.0
pkgrel=1
pkgdesc="Deep learning for Text to Speech (hybrid venv)"
arch=('any')
url="https://github.com/idiap/coqui-ai-TTS"
license=('MPL-2.0')
provides=("tts" "python-tts")
conflicts=("tts" "python-tts")
replaces=("python-tts" "tts")
depends=('uv'
'python-pytorch-cuda'
'python-torchaudio'
'python-torchcodec'
'python-numpy'
'python-scipy'
'python-soundfile'
'python-librosa'
'python-inflect'
'python-tqdm'
'python-anyascii'
'python-yaml'
'python-fsspec'
'python-packaging'
'python-typing_extensions'
'python-matplotlib'
'python-transformers'
'python-huggingface-hub')
source=('0001-replace-pyin-with-yin.patch')
sha256sums=('e5d00022730c5cce0e5a5b0cba0f64159efc9d9fab8864d9bc00276a0c2d98c3')
makedepends=('uv')
build() {
# Create venv inheriting system packages (torch, numpy, scipy, librosa, etc.)
uv venv --system-site-packages --clear venv
source venv/bin/activate
# Install coqui-tts and any deps not on the system (AUR-only packages).
# uv will install newer deps into the venv as needed.
uv pip install 'coqui-tts==0.28.0'
_sp="venv/lib/python3.14/site-packages"
# Patch: librosa 0.11.0 removed pyin and magphase; use yin and np.abs
patch -Np1 -d "$_sp" < "$srcdir/0001-replace-pyin-with-yin.patch"
# Patch: transformers 5 removed isin_mps_friendly; PyTorch has torch.isin
sed -i 's/from transformers\.pytorch_utils import isin_mps_friendly as isin/isin = torch.isin/' \
"$_sp/TTS/tts/layers/tortoise/autoregressive.py"
}
package() {
_optdir="$pkgdir/opt/$pkgname"
install -d "$_optdir"
cp -r venv "$_optdir/"
# Relocate venv: rewrite build-dir paths to install path
_oldpath="$srcdir"
_newpath="/opt/$pkgname"
find "$_optdir/venv" -type f \( -name '*.cfg' -o -name 'activate*' -o -name '*.nu' -o -name '*.bat' -o -name '*.csh' -o -name '*.fish' \) \
-exec sed -i "s|$_oldpath|$_newpath|g" {} + 2>/dev/null
# Fix shebangs in bin/ scripts
sed -i "s|$_oldpath/venv|$_newpath/venv|g" "$_optdir/venv/bin"/* 2>/dev/null || true
# Clean up caches
rm -rf "$_optdir/venv/cache"
find "$_optdir/venv" -name '__pycache__' -type d -exec rm -rf {} + 2>/dev/null
# Wrapper scripts
install -d "$pkgdir/usr/bin"
{
echo '#!/bin/bash'
echo 'exec /opt/coqui-tts/venv/bin/tts "$@"'
} > "$pkgdir/usr/bin/tts"
chmod 755 "$pkgdir/usr/bin/tts"
{
echo '#!/bin/bash'
echo 'exec /opt/coqui-tts/venv/bin/tts-server "$@"'
} > "$pkgdir/usr/bin/tts-server"
chmod 755 "$pkgdir/usr/bin/tts-server"
}
Changes since previous scan
--- PKGBUILD @ 2026-10-29 15:52+++ PKGBUILD @ 2026-11-01 00:21@@ -2,8 +2,8 @@ # Co-maintainer: Evert Vorster <evorster at gmail dot com> pkgname="coqui-tts"-pkgver=0.27.5-pkgrel=2+pkgver=0.28.0+pkgrel=1 pkgdesc="Deep learning for Text to Speech (hybrid venv)" arch=('any') url="https://github.com/idiap/coqui-ai-TTS"@@ -41,7 +41,7 @@ # Install coqui-tts and any deps not on the system (AUR-only packages). # uv will install newer deps into the venv as needed.- uv pip install 'coqui-tts==0.27.5'+ uv pip install 'coqui-tts==0.28.0' _sp="venv/lib/python3.14/site-packages" Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Low | 3 |
| 2026-10-31 00:07:41 | Low | 3 |
| 2026-10-30 00:29:30 | Low | 3 |
| 2026-10-29 17:53:05 | Medium | 2 |
| 2026-10-29 15:52:51 | Medium | 2 |
| 2026-10-29 00:13:55 | Low | 3 |
| 2026-10-28 00:06:54 | Low | 3 |
| 2026-10-27 00:23:28 | Low | 3 |
| 2026-10-26 00:12:40 | Low | 3 |
| 2026-10-25 00:20:48 | Low | 3 |
| 2026-10-24 00:14:55 | Low | 3 |
| 2026-10-23 00:02:19 | Low | 3 |
| 2026-10-22 00:13:10 | Low | 3 |
| 2026-10-21 00:12:50 | Low | 3 |
| 2026-10-20 00:10:31 | Low | 3 |
| 2026-10-19 00:03:55 | Low | 3 |
| 2026-10-18 00:06:55 | Low | 3 |
| 2026-10-17 00:21:55 | Low | 3 |
| 2026-10-16 00:12:47 | Low | 3 |
| 2026-10-15 00:28:05 | Low | 3 |