shroomie-git

maintainer snowancestor · 0 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The PKGBUILD pulls pexpect from PyPI via pip during build(), but this is a well-known, widely-used Python package on the official PyPI registry, not an unofficial or personal host. The real issue is that it's redundant and sloppy: python-pexpect is already listed as a runtime dependency (which means it's available from the official Arch repos), so the pip install is unnecessary and installs a duplicate copy into the package. There's no checksum on the pip-installed package, which is mildly concerning from a supply-chain hygiene standpoint, but PyPI is a standard, trusted ecosystem mirror for Python packages. This is a packaging quality issue (redundant pip install of an already-declared dependency, no hash pinning) rather than a genuine supply-chain threat. The source is a git repo with SKIP checksum, which is standard for -git packages. Overall: sloppy packaging, not a security risk.

Triggered rules

LOW AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (anthropic/claude-4.6-sonnet-20260217) reviewed the full PKGBUILD and judged it LOW (confidence 85%): The PKGBUILD pulls pexpect from PyPI via pip during build(), but this is a well-known, widely-used Python package on the official PyPI registry, not an unofficial or personal host. The real issue is that it's redundant and sloppy: python-pexpect is already listed as a runtime dependency (which means it's available from the official Arch repos), so the pip install is unnecessary and installs a duplicate copy into the package. There's no checksum on the pip-installed package, which is mildly concerning from a supply-chain hygiene standpoint, but PyPI is a standard, trusted ecosystem mirror for Python packages. This is a packaging quality issue (redundant pip install of an already-declared dependency, no hash pinning) rather than a genuine supply-chain threat. The source is a git repo with SKIP checksum, which is standard for -git packages. Overall: sloppy packaging, not a security risk.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM pip install of an external package pip_install_external

`pip install <package>` fetches an unpinned package from PyPI at build time, outside source=() and makepkg's checksums.

  • PKGBUILD:22 python -m pip install --no-deps --ignore-installed --target="${srcdir}/python-packages" pexpect>=4.9.0

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: snow-arc
2pkgname=shroomie-git
3pkgver=r22.f7545c4
4pkgrel=1
5pkgdesc="A friendly AUR package manager with a simple GUI"
6arch=('x86_64')
7url="https://github.com/snow-arc/shroomie"
8license=('MIT')
9depends=('python>=3.8' 'python-pip' 'python-pyqt6' 'python-pexpect' 'git' 'base-devel')
10makedepends=('python-setuptools' 'python-wheel')
11source=("git+${url}.git")
12sha256sums=('SKIP')
13
14pkgver() {
15 cd "${srcdir}/shroomie"
16 printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
17}
18build() {
19 cd "${srcdir}/shroomie"
20 # Create temporary directory for Python packages
21 mkdir -p "${srcdir}/python-packages"
22 python -m pip install --no-deps --ignore-installed --target="${srcdir}/python-packages" pexpect>=4.9.0
23}
24
25package() {
26 cd "${srcdir}/shroomie"
27
28 # Create directories
29 install -dm755 "${pkgdir}/usr/bin"
30 install -dm755 "${pkgdir}/usr/lib/shroomie"
31
32 # Copy Python packages from build
33 cp -r "${srcdir}/python-packages"/* "${pkgdir}/usr/lib/shroomie/"
34
35 # Copy project files
36 cp -r components config models resources services ui utils "${pkgdir}/usr/lib/shroomie/"
37 install -Dm755 main.py "${pkgdir}/usr/lib/shroomie/"
38 install -Dm644 README.md "${pkgdir}/usr/share/doc/shroomie/README.md"
39 install -Dm644 "${startdir}/requirements.txt" "${pkgdir}/usr/share/doc/shroomie/requirements.txt"
40
41 # Create launcher script with python3
42 cat > "${pkgdir}/usr/bin/shroomie" << EOF
43#!/bin/sh
44exec python3 /usr/lib/shroomie/main.py "\$@"
45EOF
46 chmod 755 "${pkgdir}/usr/bin/shroomie"
47}
48

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