python-p4python

maintainer orphaned · 0 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The package downloads source code from pythonhosted.org (standard PyPI host) and a Perforce API binary from perforce.com, both legitimate sources; the build uses official project sources and no unverified or executable payloads are run.

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 95%): The package downloads source code from pythonhosted.org (standard PyPI host) and a Perforce API binary from perforce.com, both legitimate sources; the build uses official project sources and no unverified or executable payloads are run.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM source=() URL on a non-standard host source_untrusted_domain

One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).

  • PKGBUILD:15 'http://ftp.perforce.com/perforce/r18.1/bin.linux26x86_64/p4api.tgz')

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Adrian Bacircea <adrian.bacircea@gmail.com>
2# Packager: Adrian Bacircea <adrian.bacircea@gmail.com>
3# Contributor: Alex Whitt <alex.joseph.whitt@gmail.com>
4
5_pkgsrcname=p4python
6pkgname=python-p4python
7pkgver=2018.2.1743033
8p4apiver=2018.1.1957529
9pkgrel=2
10pkgdesc="Interface to Perforce API for Python 3"
11url="https://www.perforce.com/perforce/doc.current/manuals/p4script/03_python.html"
12arch=('any')
13license=('custom')
14source=($pkgname-$pkgver.tar.gz::"https://files.pythonhosted.org/packages/36/5a/0a1b192cdecd31cb8bc0d0ba39c73ffd84ce823053d0004823a1fdbe1440/p4python-2018.2.1743033.tar.gz"
15 'http://ftp.perforce.com/perforce/r18.1/bin.linux26x86_64/p4api.tgz')
16sha256sums=('caa37ea520566f50181b042a474eb8012ff8dcbcc0512874170ad34bea1ba0c0'
17 '331fad2257e4c427e1f864032f8125821865f2ecad3c643574cf4157f9ca7295')
18makedepends=('python-setuptools')
19depends=('openssl-1.0' 'python')
20
21prepare() {
22 # Clean up if needed
23 rm -rf python-$_pkgsrcname-$pkgver
24
25 sed -i 's/OpenSSL (\\d)\\.(\\d)\\.(\\d)(\\S+)\\s+\\d+ \\S+ \\d+/OpenSSL (\\d)\\.(\\d)\\.(\\d)(.*)/g' \
26 ${_pkgsrcname}-${pkgver}/setup.py
27 sed -i 's/pattern.match(version_string)/pattern.search(version_string)/g' \
28 ${_pkgsrcname}-${pkgver}/setup.py
29
30 # Copy folder, so we can cleanly build for both python versions
31 mv $_pkgsrcname-$pkgver python-$_pkgsrcname-$pkgver
32
33 cd ${srcdir}
34 tar -xf p4api.tgz
35}
36
37build() {
38 cd python-$_pkgsrcname-$pkgver
39 python setup.py build \
40 --ssl '/usr/lib/openssl-1.0' \
41 --apidir ${srcdir}/p4api-${p4apiver}
42}
43
44package() {
45 cd $srcdir/python-$_pkgsrcname-$pkgver
46
47 python setup.py install --root="$pkgdir/" --skip-build --optimize=1 \
48 --apidir ${srcdir}/p4api-${p4apiver}
49 install -Dm644 LICENSE.txt $pkgdir/usr/share/licenses/$pkgname/LICENSE
50}
51

Scan history

Scanned at (UTC)SeverityRules
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

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion