quickoverflow
Triggered rules
pip_install_external
`pip install <package>` fetches an unpinned package from PyPI at build time, outside source=() and makepkg's checksums.
-
PKGBUILD:18
pipenv run pip install -r requirements.txt
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The PKGBUILD installs Python dependencies via 'pipenv run pip install -r requirements.txt' where requirements.txt comes from the tarball source (not separately listed/checksummed in the source array). While the tarball itself has an md5sum, the requirements.txt inside it could pin arbitrary PyPI packages that get downloaded at build time without independent verification. Additionally, pyinstaller bundles the result into a single binary, obscuring what's actually being installed. The 'sudo' calls inside package() are a serious packaging error (makepkg already runs as a user, and sudo in package() is wrong/dangerous). The installed binary is named 'search' which is an extremely generic name that could shadow system utilities. These are real supply-chain and packaging concerns: unreviewed pip dependencies fetched at build time, a bundled opaque binary, and misuse of sudo. Not clearly malicious but a genuine medium-risk concern.
PKGBUILD
1 offending line(s) highlighted# Maintainer: SpaciousCoder78 <aryankmmiv@outlook.com>
pkgname=quickoverflow
pkgver=3.0.0
pkgrel=1
pkgdesc="A CLI Tool to auto-detect code errors and open solutions"
arch=('x86_64')
url="https://github.com/SpaciousCoder78/QuickOverflow"
license=('GPL3')
depends=('python')
makedepends=('python-pipenv' 'python-pip' 'gcc')
source=("https://github.com/SpaciousCoder78/QuickOverflow/releases/download/v3.0.0/QuickOverflow3.0.0.tar.gz")
md5sums=('3812a9438f234df57e26f75a7b9e4dc1')
build() {
cd "$srcdir/pyoverflow-cli"
if [[ -f Pipfile ]]; then
pipenv install --python python3
pipenv run pip install -r requirements.txt
pipenv install pyinstaller
fi
gcc main.c -o quickoverflow
chmod +x search.py
pipenv run pyinstaller --onefile --name search search.py
}
package() {
cd "$srcdir/pyoverflow-cli"
sudo install -Dm755 quickoverflow "/usr/local/bin/quickoverflow"
sudo install -Dm755 dist/search "/usr/local/bin/search"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | MEDIUM | 2 |
| 2026-08-02 00:16:08 | MEDIUM | 2 |
| 2026-08-01 00:11:18 | MEDIUM | 2 |
| 2026-07-31 00:14:10 | MEDIUM | 2 |
| 2026-07-30 00:17:23 | MEDIUM | 2 |
| 2026-07-29 00:25:53 | MEDIUM | 2 |
| 2026-07-28 00:07:28 | MEDIUM | 2 |
| 2026-07-27 00:24:32 | MEDIUM | 2 |
| 2026-07-26 00:07:32 | MEDIUM | 2 |
| 2026-07-25 00:13:44 | MEDIUM | 2 |
| 2026-07-24 00:02:28 | MEDIUM | 2 |
| 2026-07-23 00:14:47 | MEDIUM | 2 |
| 2026-07-22 00:29:32 | MEDIUM | 2 |
| 2026-07-21 00:24:15 | MEDIUM | 2 |
| 2026-07-20 00:19:49 | MEDIUM | 2 |
| 2026-07-19 00:17:08 | MEDIUM | 2 |
| 2026-07-18 00:14:48 | MEDIUM | 2 |
| 2026-07-17 00:06:16 | MEDIUM | 2 |
| 2026-07-16 00:05:41 | MEDIUM | 2 |
| 2026-07-15 00:09:25 | MEDIUM | 2 |