sqlynx-bin
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:20
"${pkgname%-bin}-${pkgver}.zip::https://maicong-software-1302946156.cos.ap-beijing.myqcloud.com/software/sqlynx_linux_no_jdk_${pkgver}.zip"
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): This PKGBUILD downloads a prebuilt binary ZIP from a QCloud COS (Tencent Cloud Object Storage) bucket owned by 'maicong-software' rather than from the official sqlynx.com domain or a well-known distribution mirror. The bucket name 'maicong-software-1302946156' appears to be a personal/vendor-controlled bucket that is not the canonical upstream release host. While a sha256sum is provided (mitigating substitution risk at build time), the concern is that the bucket owner could replace the file at any time and update the PKGBUILD checksum, and there is no way to verify the binary's authenticity (no GPG signature). The package installs a prebuilt binary with a systemd service, giving it persistent execution capability. This is a classic medium-severity supply-chain concern: executed binary from an unofficial/personal host with no cryptographic provenance beyond a mutable checksum. Additionally, the package writes files into $HOME during the package() phase (using ${pkgdir}/${HOME}/), which is non-standard and potentially problematic packaging practice, but not a direct security issue. Overall this is a legitimate medium risk, not a false positive.
PKGBUILD
1 offending line(s) highlighted# Maintainer: witt <1989161762 at qq dot com>
pkgname=sqlynx-bin
pkgver=3.6.0
pkgrel=4
pkgdesc="桌面和 Web SQL 工具"
arch=(
'x86_64'
)
url="https://www.sqlynx.com/"
license=('custom')
conflicts=('sqlynx' 'sqlynx-bin')
provides=('sqlynx' 'sqlynx-bin' 'sqlynx-nojdk' 'sqlynx-nojdk-bin')
depends=('java-runtime>=8')
options=(
'!strip'
'!debug'
)
install="${pkgname}.install";
source=(
"${pkgname%-bin}-${pkgver}.zip::https://maicong-software-1302946156.cos.ap-beijing.myqcloud.com/software/sqlynx_linux_no_jdk_${pkgver}.zip"
"sqlynx.service"
)
sha256sums=('e0a6d0ba7cfc19d0d5ab65660452c422a1ba6ccd8cebc3ddf38cdd89c8dadeae'
'96edc4ea1996f5152f87ad9a31dc4f85f8c32a831cb55a428a7cc3fc1c287b49')
package() {
install -d "${pkgdir}/opt/"
cp -r "${srcdir}/sqlynx_linux_${pkgver}" "${pkgdir}/opt/sqlynx"
# data db
install -dm700 "${pkgdir}/${HOME}/"
install -dm755 "${pkgdir}/${HOME}/.config/"
install -Dm644 "${srcdir}/sqlynx_linux_${pkgver}/data/sqlite.db" "${pkgdir}/${HOME}/.config/sqlynx/data/sqlite.db"
install -Dm644 "${srcdir}/sqlynx_linux_${pkgver}/data/sqlite.db" "${pkgdir}/opt/sqlynx/data/init.db"
ln -sf "${HOME}/.config/sqlynx/data/sqlite.db" "${pkgdir}/opt/sqlynx/data/sqlite.db"
# config
install -Dm644 "${srcdir}/sqlynx_linux_${pkgver}/config/sqlynx.yaml" "${pkgdir}/${HOME}/.config/sqlynx/config/sqlynx.yaml"
ln -sf "${HOME}/.config/sqlynx/config/sqlynx.yaml" "${pkgdir}/opt/sqlynx/config/sqlynx.yaml"
# # link
# install -dm755 "${pkgdir}/usr/bin/"
# ln -s "${pkgdir}/opt/sqlynx/sqlynx-ide.sh" "${pkgdir}/usr/bin/sqlynx"
install -Dm755 "${srcdir}/sqlynx.service" -t "${pkgdir}/usr/lib/systemd/system/"
}
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 |