cnats
The package downloads prebuilt binaries from a project-owned but non-whitelisted host; however, the source is verifiable via checksums, and the host is plausibly official, reducing supply-chain risk to low.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads prebuilt binaries from a project-owned but non-whitelisted host; however, the source is verifiable via checksums, and the host is plausibly official, reducing supply-chain risk to low.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:18
source_x86_64=("cnats-v${pkgver}-x86_64.tar.gz::https://project.uhhm.no/uhhm/cnats/releases/download/v${pkgver}/cnats-v${pkgver}-x86_64.tar.gz")
PKGBUILD
1 offending line(s) highlighted# Maintainer: Bendik Aagaard Lynghaug <bendik.lynghaug@gmail.com>
pkgname=cnats
pkgver=0.4.2
pkgrel=1
pkgdesc="Web chat over NATS subjects with Kanidm SSO (Leptos SSR)"
arch=('x86_64' 'aarch64')
options=('!strip')
url="https://project.uhhm.no/uhhm/cnats"
license=('MIT')
depends=('glibc' 'gcc-libs')
optdepends=(
'nats-server: local message bus'
'postgresql: local message history archive'
)
provides=('cnats')
conflicts=('cnats-git' 'cnats-bin')
backup=('etc/cnats/env')
source_x86_64=("cnats-v${pkgver}-x86_64.tar.gz::https://project.uhhm.no/uhhm/cnats/releases/download/v${pkgver}/cnats-v${pkgver}-x86_64.tar.gz")
source_aarch64=("cnats-v${pkgver}-aarch64.tar.gz::https://project.uhhm.no/uhhm/cnats/releases/download/v${pkgver}/cnats-v${pkgver}-aarch64.tar.gz")
sha256sums_x86_64=('e5be4fa6d9adf9b799b6517d28e832bdb855f0c544fc3b7e58737e671a5881a6')
sha256sums_aarch64=('59e7bcfe5670cedc1c0c344d34a972a0d683c8259b1cd7504a2680ca113178f6')
package() {
install -Dm755 cnats "$pkgdir/usr/bin/cnats"
# Hydration wasm/js + css served by the binary (LEPTOS_SITE_ROOT).
install -dm755 "$pkgdir/usr/share/cnats"
cp -r site "$pkgdir/usr/share/cnats/site"
install -Dm644 cnats.service "$pkgdir/usr/lib/systemd/system/cnats.service"
install -Dm600 cnats.env "$pkgdir/etc/cnats/env"
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
}
Changes since previous scan
--- PKGBUILD @ 2026-11-01 00:21+++ PKGBUILD @ 2026-11-02 00:26@@ -1,6 +1,6 @@ # Maintainer: Bendik Aagaard Lynghaug <bendik.lynghaug@gmail.com> pkgname=cnats-pkgver=0.4.0+pkgver=0.4.2 pkgrel=1 pkgdesc="Web chat over NATS subjects with Kanidm SSO (Leptos SSR)" arch=('x86_64' 'aarch64')@@ -17,8 +17,8 @@ backup=('etc/cnats/env') source_x86_64=("cnats-v${pkgver}-x86_64.tar.gz::https://project.uhhm.no/uhhm/cnats/releases/download/v${pkgver}/cnats-v${pkgver}-x86_64.tar.gz") source_aarch64=("cnats-v${pkgver}-aarch64.tar.gz::https://project.uhhm.no/uhhm/cnats/releases/download/v${pkgver}/cnats-v${pkgver}-aarch64.tar.gz")-sha256sums_x86_64=('ee6eab490c440b1e0aebab9b44f55a3da250d14ba2dc6e0bbc7fbd4a93ee8319')-sha256sums_aarch64=('f21604ce1bbb16c326210a96eecf1c3917b40a7bf91d503fc900c8fa5ed3eefc')+sha256sums_x86_64=('e5be4fa6d9adf9b799b6517d28e832bdb855f0c544fc3b7e58737e671a5881a6')+sha256sums_aarch64=('59e7bcfe5670cedc1c0c344d34a972a0d683c8259b1cd7504a2680ca113178f6') package() { install -Dm755 cnats "$pkgdir/usr/bin/cnats"Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-02 00:26:00 | Low | 2 |
| 2026-11-01 20:01:18 | Medium | 1 |
| 2026-11-01 00:21:48 | Low | 2 |
| 2026-10-31 00:07:41 | Low | 2 |
| 2026-10-30 15:56:05 | Medium | 1 |
| 2026-10-30 00:29:30 | Low | 2 |
| 2026-10-29 00:13:55 | Low | 2 |
| 2026-10-28 00:06:54 | Low | 2 |
| 2026-10-27 00:23:28 | Low | 2 |
| 2026-10-26 00:12:40 | Low | 2 |
| 2026-10-25 00:20:48 | Low | 2 |
| 2026-10-24 00:14:55 | Low | 2 |
| 2026-10-23 00:02:19 | Low | 2 |
| 2026-10-22 00:13:10 | Low | 2 |
| 2026-10-21 00:12:50 | Low | 2 |
| 2026-10-20 00:10:31 | Low | 2 |
| 2026-10-19 00:03:55 | Low | 2 |
| 2026-10-18 00:06:55 | Low | 2 |
| 2026-10-17 00:21:55 | Low | 2 |
| 2026-10-16 00:12:47 | Low | 2 |