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-11-01 00:21:48 | Medium | 2 |
| 2026-10-31 00:07:41 | Medium | 2 |
| 2026-10-30 00:29:30 | Medium | 2 |
| 2026-10-29 00:13:55 | Medium | 2 |
| 2026-10-28 00:06:54 | Medium | 2 |
| 2026-10-27 00:23:28 | Medium | 2 |
| 2026-10-26 00:12:40 | Medium | 2 |
| 2026-10-25 00:20:48 | Medium | 2 |
| 2026-10-24 00:14:55 | Medium | 2 |
| 2026-10-23 00:02:19 | Medium | 2 |
| 2026-10-22 00:13:10 | Medium | 2 |
| 2026-10-21 00:12:50 | Medium | 2 |
| 2026-10-20 00:10:31 | Medium | 2 |
| 2026-10-19 00:03:55 | Medium | 2 |
| 2026-10-18 00:06:55 | Medium | 2 |
| 2026-10-17 00:21:55 | Medium | 2 |
| 2026-10-16 00:12:47 | Medium | 2 |
| 2026-10-15 00:28:05 | Medium | 2 |
| 2026-10-14 00:06:47 | Medium | 2 |
| 2026-10-13 00:23:45 | Medium | 2 |