lynx-devtool
Triggered rules
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:12
"https://cnb.cool/zaeyee/open-source/lynx-devtool/-/releases/download/v${pkgver}/LynxDevTool-${pkgver}.AppImage"
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The PKGBUILD downloads and installs a prebuilt AppImage binary from cnb.cool, which is a Chinese cloud/DevOps platform (similar to GitLab SaaS). The host is not an official upstream release mirror but rather a personal/organizational repository hosted by the maintainer themselves (zaeyee/open-source/lynx-devtool). The AppImage is installed as an executable at /opt/lynx-devtool/ and run directly by users. Key concerns: (1) cnb.cool is not a well-known, audited release host — it's essentially a personal artifact store, meaning the binary could be replaced without any upstream verification mechanism beyond the sha256sum; (2) AppImages bundle their own runtime and libraries, so the entire execution environment is opaque; (3) the sha256sums are present and pinned, which mitigates silent substitution at build time, but does not verify the binary's provenance or contents. The upstream GitHub project (lynx-family/lynx-devtool) exists and is legitimate (Lynx is ByteDance's cross-platform framework), but the releases are being served from a third-party host rather than GitHub Releases, which is the standard pattern. This is a genuine medium-risk supply-chain concern: an executed binary from an unofficial/personal host with no reproducibility guarantee, even though sha256sums are present.
PKGBUILD
1 offending line(s) highlighted# Maintainer: zaeyee <zaeyee@163.com>
pkgname=lynx-devtool
pkgver=0.1.1
pkgrel=1
pkgdesc="Debug Lynx On-the-Fly"
arch=("x86_64")
url="https://github.com/lynx-family/lynx-devtool"
license=("Apache-2.0")
depends=("fuse2" "gtk3" "nss" "libxss" "libxtst" "xdg-utils")
options=("!strip")
source=(
"https://cnb.cool/zaeyee/open-source/lynx-devtool/-/releases/download/v${pkgver}/LynxDevTool-${pkgver}.AppImage"
"${pkgname}.desktop"
"${pkgname}.png::https://cnb.cool/zaeyee/open-source/lynx-devtool/-/git/raw/v${pkgver}/res/icons/lynx-devtool_256x256.png"
)
sha256sums=('e90fdd19524c554f458cade3bab2a8c5b6f5c68ec536b921eaea92d518eda26c'
'91765fa4430c48ed574f732d28d3fb21c16bde66a621b6bd5c7901c33f3da1bf'
'd093412e18403e54af0ffcb5d325d50f5c05b6f398277f787bc18ec4a0b529ca')
package() {
install -Dm755 "${srcdir}/LynxDevTool-${pkgver}.AppImage" "${pkgdir}/opt/${pkgname}/LynxDevTool.AppImage"
install -Dm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
install -Dm644 "${srcdir}/${pkgname}.png" "${pkgdir}/usr/share/icons/${pkgname}.png"
}
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 |