js-design
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
source_x86_64=("${pkgname}-${pkgver}-x86_64.deb::https://img.js.design/assets/download/%E7%BB%9F%E4%BF%A1UOS/%E5%8D%B3%E6%97%B6%E8%AE%BE%E8%AE%A1_amd64.deb")
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): This PKGBUILD installs a prebuilt proprietary Electron/Chromium-based binary application downloaded from img.js.design, which is the CDN/asset host for the js.design (即时设计) commercial design tool. The host is not a standard Linux distribution mirror or well-known package registry, but it does appear to be the official vendor's own CDN (img.js.design is a subdomain of js.design, the product's own domain). The binary is a full Electron app that will execute on the user's system. The sha512 checksums are present, which mitigates tampering risk somewhat, but the checksums are only as trustworthy as the moment they were recorded — if the upstream URL serves a mutable/latest artifact (no version pinning in the URL path), the checksums could become stale or the file could be silently replaced. The URL does not contain the version string, meaning the same URL could serve different content over time, making reproducibility and integrity verification weaker. This is a real medium-severity supply-chain concern: an executed proprietary binary from a vendor CDN with mutable URLs, not a false positive, but also not clearly malicious.
PKGBUILD
1 offending line(s) highlighted# Maintainer: Integral <integral@member.fsf.org>
pkgname=js-design
pkgver=1.0.6
pkgrel=1
pkgdesc="即时设计 A professional UI design software tailored for Chinese designers."
arch=('x86_64' 'aarch64')
url="https://js.design/"
license=('LicenseRef-js-design')
depends=('nss' 'alsa-lib' 'gtk3')
optdepends=('libappindicator-gtk3: Allow js-design to extend a menu via Ayatana indicators in Unity, KDE or Systray (GTK+ 3 library).')
source_x86_64=("${pkgname}-${pkgver}-x86_64.deb::https://img.js.design/assets/download/%E7%BB%9F%E4%BF%A1UOS/%E5%8D%B3%E6%97%B6%E8%AE%BE%E8%AE%A1_amd64.deb")
source_aarch64=("${pkgname}-${pkgver}-aarch64.deb::https://img.js.design/assets/download/%E7%BB%9F%E4%BF%A1UOS/%E5%8D%B3%E6%97%B6%E8%AE%BE%E8%AE%A1_arm64.deb")
sha512sums_x86_64=('010c279208dd73b525fec1714cf6de176d5e8b45b587c632e89cc22d14432a9a5208545cc6a3b6bfed2f6c12c5036c4159a6538834fa4d5160faf1d5027e3bed')
sha512sums_aarch64=('b6579f6df0d31d06f980a673f5c53939c5796eed36da938eefdfff1c36b7614242534302f417f509bf7a80a419e79c0359b23926c36cd58c83040edf8954c3e5')
package() {
bsdtar -xvf data.tar.xz -C "${pkgdir}/"
# Launcher
mkdir -p "${pkgdir}/usr/bin/"
ln -s "/opt/apps/design.js.jsdesign/files/js.design" "${pkgdir}/usr/bin/${pkgname}"
# Desktop Entry
install -Dm644 "${pkgdir}/opt/apps/design.js.jsdesign/entries/applications/js.design.desktop" -t "${pkgdir}/usr/share/applications/"
# Icon
cp -a "${pkgdir}/opt/apps/design.js.jsdesign/entries/icons/" "${pkgdir}/usr/share/"
# License
install -Dm644 ${pkgdir}/opt/apps/design.js.jsdesign/files/{LICENSE.electron.txt,LICENSES.chromium.html} \
-t "${pkgdir}/usr/share/licenses/${pkgname}/"
}
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 |