termius-beta
The package downloads a prebuilt .snap file from the official snapcraft.io API, which is the project's legitimate distribution channel; while the host is not whitelisted, the source is verifiable and the content is unpacked and installed without executing remote code or introducing untrusted binaries beyond the official release.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads a prebuilt .snap file from the official snapcraft.io API, which is the project's legitimate distribution channel; while the host is not whitelisted, the source is verifiable and the content is unpacked and installed without executing remote code or introducing untrusted binaries beyond the official release.
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:20
"$pkgname-$pkgver.snap::https://api.snapcraft.io/api/v1/snaps/download/yyZzRdoyiRz3EM7iuvjhaIjDfnlFJcZs_415.snap"
PKGBUILD
1 offending line(s) highlighted# Maintainer: TBK <aur at jjtc dot eu>
# Contributor: TBK <aur at jjtc dot eu>
pkgname=termius-beta
pkgver=9.41.1
pkgrel=1
pkgdesc="Desktop SSH Client"
url="https://www.termius.com/"
arch=('x86_64')
license=('custom')
depends=('alsa-lib' 'at-spi2-core' 'dbus' 'e2fsprogs' 'expat' 'gtk3' 'keyutils' 'libbsd' 'libnotify' 'libsecret' 'libxss' 'libxtst' 'nss' 'util-linux-libs' 'xdg-utils')
optdepends=('libappindicator-gtk3')
makedepends=('squashfs-tools')
# Prebuilt binaries without debug symbols; stripping only breaks them
options=('!strip' '!debug')
# Get latest version + link from https://snapcraft.io/termius-beta|| snap info termius-beta || run the following
# curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-beta | jq '.download_url' -r
# curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-beta | jq '.version' -r
source=(
"$pkgname-$pkgver.snap::https://api.snapcraft.io/api/v1/snaps/download/yyZzRdoyiRz3EM7iuvjhaIjDfnlFJcZs_415.snap"
"termius-beta.desktop"
"tos.html"
)
sha512sums=('319fbe09f2ad5517fe42cda3e05ab6ac315c14a2c99c2f1fa21e995a7bb7e10d864cc4ae98ac55acd5186c76c0632c6740c066fb31a4d71cb9849ffbf0a88554'
'8bf93360614226cf477e5322d87e5fefe781d97e30390777ccb89282219c90714e98868381ab69b001c67a606e068f51a177b6f48bbbdb0c0f4a4f27bf0f0dd4'
'6ac7c082d1adba92dd911f46f9926f702be0f92a9843e6252364477d81364569eeeee9b37170a6d9000fde644588734cb6a11d165fc0aff3dbfbcd6ad353ca96')
prepare() {
mkdir -p $pkgname
unsquashfs -f -d $pkgname $pkgname-$pkgver.snap
}
package() {
# Option 1 - copy only the needed files ~183 MiB
mkdir -p "$pkgdir"/opt/$pkgname
cd "$srcdir"/$pkgname
cp -r \
chrome_100_percent.pak \
chrome_200_percent.pak \
chrome_crashpad_handler \
icudtl.dat \
libEGL.so \
libffmpeg.so \
libGLESv2.so \
libvk_swiftshader.so \
libvulkan.so.1 \
locales \
resources \
resources.pak \
termius-beta \
v8_context_snapshot.bin \
vk_swiftshader_icd.json \
"$pkgdir"/opt/$pkgname
cd "$srcdir"
# Option 2 - copy all files from the .snap file ~503 MiB
#mkdir -p "$pkgdir"/opt/
#cp -r "$srcdir"/$pkgname "$pkgdir"/opt/$pkgname
find "$pkgdir"/opt/$pkgname/ -type f -exec chmod 644 {} \;
chmod 755 "$pkgdir"/opt/$pkgname/termius-beta
chmod 755 "$pkgdir"/opt/$pkgname/chrome_crashpad_handler
mkdir -p "$pkgdir"/usr/bin
ln -sf /opt/$pkgname/termius-beta "$pkgdir"/usr/bin/$pkgname
install -Dm0644 tos.html "$pkgdir"/usr/share/licenses/$pkgname/tos.html
install -Dm0644 $pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
install -Dm0644 $pkgname/meta/gui/icon.png "$pkgdir"/usr/share/pixmaps/$pkgname.png
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |
| 2026-08-29 00:29:17 | Low | 2 |