gdrivectl
The pip install in package() is for a direct, declared dependency (questionary) needed by the project, not an obfuscated or suspicious external package, and is standard in AUR Python packaging when dependencies aren't available as Arch packages.
Triggered rules
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 95%): The pip install in package() is for a direct, declared dependency (questionary) needed by the project, not an obfuscated or suspicious external package, and is standard in AUR Python packaging when dependencies aren't available as Arch packages.
1 higher static finding 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:24
pip install --root="${pkgdir}" --no-deps --ignore-installed questionary
PKGBUILD
1 offending line(s) highlighted# Maintainer: Kushagra Sharma <tda@thedarkartist.in>
pkgname=gdrivectl
pkgver=0.1.0
pkgrel=1
pkgdesc="CLI tool to manage Google Docs permissions in bulk — grant, revoke, audit"
arch=('any')
url="https://github.com/TheDarkArtist/gdrivectl"
license=('MIT')
depends=('python' 'python-google-api-python-client' 'python-google-auth'
'python-google-auth-oauthlib' 'python-click' 'python-rich'
'python-prompt_toolkit')
makedepends=('python-build' 'python-installer' 'python-hatchling' 'python-pip')
source=("https://pypi.org/packages/source/g/gdrivectl/gdrivectl-${pkgver}.tar.gz")
sha256sums=('8f0e3694ddeccd694dda9a5cd450b0446c5acd2b6a029f20569fba10f846a894')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
python -m build --wheel --no-isolation
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
python -m installer --destdir="${pkgdir}" dist/*.whl
pip install --root="${pkgdir}" --no-deps --ignore-installed questionary
install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |
| 2026-08-29 00:29:17 | Low | 2 |