ethos-lang
The PKGBUILD pulls Nuitka from PyPI via pip --user during build, which is non-standard packaging practice (makedepends should list python-nuitka or use a proper source). However, Nuitka is a well-known, widely-used Python compiler available on PyPI with a strong upstream identity, not an obscure or personal package. The actual installed artifact is a compiled binary from the tagged GitHub source of ethos-lang itself, not from the pip-installed tool. The supply-chain concern is real but minor: pip install without a pinned version/hash is sloppy and could theoretically pull a compromised Nuitka release, but this is a standard ecosystem tool with high visibility. The source uses a git tag (though sha256sums is SKIP, which is acceptable for VCS sources). Overall this is a packaging quality issue rather than a genuine medium-severity supply-chain threat.
Triggered rules
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 82%): The PKGBUILD pulls Nuitka from PyPI via pip --user during build, which is non-standard packaging practice (makedepends should list python-nuitka or use a proper source). However, Nuitka is a well-known, widely-used Python compiler available on PyPI with a strong upstream identity, not an obscure or personal package. The actual installed artifact is a compiled binary from the tagged GitHub source of ethos-lang itself, not from the pip-installed tool. The supply-chain concern is real but minor: pip install without a pinned version/hash is sloppy and could theoretically pull a compromised Nuitka release, but this is a standard ecosystem tool with high visibility. The source uses a git tag (though sha256sums is SKIP, which is acceptable for VCS sources). Overall this is a packaging quality issue rather than a genuine medium-severity supply-chain threat.
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:19
python3 -m pip install --user --break-system-packages nuitka
PKGBUILD
1 offending line(s) highlighted# Maintainer: Aman Adlakha <amanady125@gmail.com>
pkgname=ethos-lang
pkgver=0.5.0
pkgrel=1
pkgdesc="The Ethos Programming Language Compiler"
arch=('x86_64' 'aarch64')
url="https://github.com/AmanCode22/ethos-lang"
license=('Apache-2.0')
depends=('python' 'python-zstandard' 'gcc' 'patchelf')
optdepends=('ethos-forge: for managing Ethos packages and projects')
makedepends=('git' 'python-pip')
source=("git+https://github.com/AmanCode22/ethos-lang.git#tag=v${pkgver}")
sha256sums=('SKIP')
options=('!strip')
build() {
cd "${pkgname}"
# Install Nuitka locally for build
python3 -m pip install --user --break-system-packages nuitka
# Compile Ethos using memory-safe flags
python3 -m nuitka --assume-yes-for-downloads --jobs=1 --lto=no --low-memory --onefile main.py --output-filename=ethos
}
package() {
cd "${pkgname}"
install -Dm755 ethos "${pkgdir}/usr/bin/ethos"
}
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 |