lynx-devtool
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.
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-09-17 00:27:14 | Medium | 2 |
| 2026-09-16 00:03:17 | Medium | 2 |
| 2026-09-15 00:25:31 | Medium | 2 |
| 2026-09-14 00:27:57 | Medium | 2 |
| 2026-09-13 00:19:54 | Medium | 2 |
| 2026-09-12 00:25:17 | Medium | 2 |
| 2026-09-11 00:19:22 | Medium | 2 |
| 2026-09-10 00:22:44 | Medium | 2 |
| 2026-09-09 00:04:09 | Medium | 2 |
| 2026-09-08 00:18:08 | Medium | 2 |
| 2026-09-07 00:30:15 | Medium | 2 |
| 2026-09-06 00:17:06 | Medium | 2 |
| 2026-09-05 00:16:27 | Medium | 2 |
| 2026-09-04 00:03:13 | Medium | 2 |
| 2026-09-03 00:15:47 | Medium | 2 |
| 2026-09-02 00:02:31 | Medium | 2 |
| 2026-09-01 00:11:19 | Medium | 2 |
| 2026-08-31 00:19:57 | Medium | 2 |
| 2026-08-30 00:04:14 | Medium | 2 |
| 2026-08-29 00:29:17 | Medium | 2 |