aider-chat-venv
maintainer AlphaJack
· 9 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package uses uv to install a Python tool from PyPI, which is a standard and expected method for Python packages; the installation target is properly scoped to $pkgdir, and there is no evidence of malicious behavior or untrusted remote code execution.
Triggered rules
LOW
AI review downgraded a static finding
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 90%): The package uses uv to install a Python tool from PyPI, which is a standard and expected method for Python packages; the installation target is properly scoped to $pkgdir, and there is no evidence of malicious behavior or untrusted remote code execution.
1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM
External install via pipx/uv/poetry/cargo/go/gem
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:49
uv tool install --force --with pip aider-chat@latest
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: AlphaJack <alphajack at tuta dot io>
2
3
pkgname="aider-chat-venv"
4
pkgver=0.86.2
5
pkgrel=2
6
pkgdesc="AI pair programming in your terminal (installed with uv)"
7
url="https://github.com/Aider-AI/aider"
8
license=("Apache-2.0")
9
arch=("any")
10
provides=("aider-chat")
11
conflicts=("aider-chat")
12
makedepends=("jq" "uv")
13
options=("!strip")
14
15
pkgver(){
16
curl -s "https://pypi.org/pypi/aider-chat/json" | jq -r '.info.version'
17
}
18
19
_strip_pkgdir_from_links() {
20
find "$pkgdir" -type l -print0 |
21
while IFS= read -r -d '' _link; do
22
# current target
23
_target=$(readlink -- "$_link")
24
case "$_target" in
25
# contains $pkgdir
26
"$pkgdir"/*)
27
# new target
28
_stripped=${_target#"$pkgdir"}
29
# replace the link
30
ln -sf "$_stripped" "$_link"
31
;;
32
esac
33
done
34
}
35
36
package() {
37
# install in $pkgdir using uv
38
UV_LINK_MODE=copy \
39
UV_NO_COMPILE_BYTECODE=TRUE \
40
UV_NO_CACHE=TRUE \
41
UV_NO_INSTALLER_METADATA=TRUE \
42
UV_PYTHON=3.12 \
43
UV_PYTHON_PREFERENCE=only-managed \
44
UV_PYTHON_DOWNLOADS=automatic \
45
UV_PYTHON_BIN_DIR="$pkgdir/usr/share/aider-chat/bin" \
46
UV_PYTHON_INSTALL_DIR="$pkgdir/usr/share/aider-chat/python" \
47
UV_TOOL_DIR="$pkgdir/usr/share/aider-chat/tool" \
48
UV_TOOL_BIN_DIR="$pkgdir/usr/bin" \
49
uv tool install --force --with pip aider-chat@latest
50
51
# remove cache
52
find "$pkgdir" -type d -name "__pycache__" -exec rm -r {} +
53
rm -rf "$pkgdir/usr/share/aider-chat/cache"
54
55
# remove mentions of $pkgdir in files
56
grep -RIlZ "$pkgdir" "$pkgdir" | xargs -0 sed -i "s|$pkgdir||g"
57
58
# remove mentions of $pkgdir in symlinks
59
_strip_pkgdir_from_links
60
}
61
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | LOW | 2 |
| 2026-08-02 00:16:08 | LOW | 2 |
| 2026-08-01 00:11:18 | LOW | 2 |
| 2026-07-31 00:14:10 | LOW | 2 |
| 2026-07-30 00:17:23 | LOW | 2 |
| 2026-07-29 00:25:53 | LOW | 2 |
| 2026-07-28 00:07:28 | LOW | 2 |
| 2026-07-27 00:24:32 | LOW | 2 |
| 2026-07-26 00:07:32 | LOW | 2 |
| 2026-07-25 00:13:44 | LOW | 2 |
| 2026-07-24 00:02:28 | LOW | 2 |
| 2026-07-23 00:14:47 | LOW | 2 |
| 2026-07-22 00:29:32 | LOW | 2 |
| 2026-07-21 00:24:15 | LOW | 2 |
| 2026-07-20 00:19:49 | LOW | 2 |
| 2026-07-19 00:17:08 | LOW | 2 |
| 2026-07-18 00:14:48 | LOW | 2 |
| 2026-07-17 00:06:16 | LOW | 2 |
| 2026-07-16 00:05:41 | LOW | 2 |
| 2026-07-15 00:09:25 | LOW | 2 |