qt-akvis2
Triggered rules
external_download_not_in_source
curl/wget fetches a URL on a non-allowlisted host that is not part of source=(), so it is not checksum-verified by makepkg.
-
PKGBUILD:19
_pkgver="`wget -q --output-document=- https://akvis-deb.sfo2.cdn.digitaloceanspaces.com/ |tr ">" "\n" |grep "</Key" |grep -v 5.9.7-7 |grep qt-akvis2_ |awk -F_ '{print $2}' |tail -1`"
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
source=("https://akvis-deb.sfo2.cdn.digitaloceanspaces.com/pool/non-free/q/qt-akvis2/qt-akvis2_${_pkgver}_amd64.deb")
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 85%): This PKGBUILD dynamically resolves the package version at build time by querying an S3-compatible bucket listing (akvis-deb.sfo2.cdn.digitaloceanspaces.com), then downloads and installs a prebuilt Debian binary package from that same host. Several real concerns exist: (1) The source URL is constructed dynamically inside prepare() rather than declared in the source=() array, bypassing makepkg's integrity verification entirely — sha256sums=('SKIP') applies to nothing meaningful. (2) The downloaded .deb is a prebuilt binary from a third-party CDN (DigitalOcean Spaces bucket controlled by the AKVIS vendor), not from an official distro mirror or the upstream project's own release infrastructure. (3) The version selection logic (grep -v 5.9.7-7, tail -1) means whatever the latest file in that bucket is gets installed — if the bucket is compromised or the maintainer pushes a malicious update, users get arbitrary code execution with no checksum protection. However, the host appears to be the actual AKVIS software vendor's CDN (alivecolors.com is AKVIS's product site), so this is a vendor-hosted binary rather than a random personal host. The risk is real but not clearly malicious: it's a supply-chain concern due to no integrity verification of an executed binary from a non-standard host with dynamic version resolution.
PKGBUILD
2 offending line(s) highlighted# Maintainer: sfs <sfslinux@gmail.com>
pkgname=qt-akvis2
pkgver=5.9.7_30
pkgrel=1
pkgdesc="Akvis-patched Qt 5.9.7 runtime"
arch=('x86_64')
url="https://alivecolors.com"
license=('GPL3' 'LGPL3' 'FDL' 'custom')
depends=('double-conversion' 'libinput' 'libproxy' 'libwacom' 'libxkbcommon-x11' 'md4c' 'tslib' 'xcb-util-image' 'xcb-util-keysyms' 'xcb-util-renderutil' 'xcb-util-wm' )
makedepends=('wget' 'tar' 'libarchive')
sha256sums=('SKIP')
pkgver() {
echo ${_pkgver} |sed 's/-/_/'
}
prepare() {
_pkgver="`wget -q --output-document=- https://akvis-deb.sfo2.cdn.digitaloceanspaces.com/ |tr ">" "\n" |grep "</Key" |grep -v 5.9.7-7 |grep qt-akvis2_ |awk -F_ '{print $2}' |tail -1`"
source=("https://akvis-deb.sfo2.cdn.digitaloceanspaces.com/pool/non-free/q/qt-akvis2/qt-akvis2_${_pkgver}_amd64.deb")
wget "$source" -O ${pkgname}-${_pkgver}-1.deb &&
bsdtar -xf ${pkgname}-${_pkgver}-1.deb &&
tar -xf data.tar.xz
}
package() {
cp -dr --no-preserve=ownership usr "${pkgdir}"/
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | MEDIUM | 3 |
| 2026-08-02 00:16:08 | MEDIUM | 3 |
| 2026-08-01 00:11:18 | MEDIUM | 3 |
| 2026-07-31 00:14:10 | MEDIUM | 3 |
| 2026-07-30 00:17:23 | MEDIUM | 3 |
| 2026-07-29 00:25:53 | MEDIUM | 3 |
| 2026-07-28 00:07:28 | MEDIUM | 3 |
| 2026-07-27 00:24:32 | MEDIUM | 3 |
| 2026-07-26 00:07:32 | MEDIUM | 3 |
| 2026-07-25 00:13:44 | MEDIUM | 3 |
| 2026-07-24 00:02:28 | MEDIUM | 3 |
| 2026-07-23 00:14:47 | MEDIUM | 3 |
| 2026-07-22 00:29:32 | MEDIUM | 3 |
| 2026-07-21 00:24:15 | MEDIUM | 3 |
| 2026-07-20 00:19:49 | MEDIUM | 3 |
| 2026-07-19 00:17:08 | MEDIUM | 3 |
| 2026-07-18 00:14:48 | MEDIUM | 3 |
| 2026-07-17 00:06:16 | MEDIUM | 3 |
| 2026-07-16 00:05:41 | MEDIUM | 3 |
| 2026-07-15 00:09:25 | MEDIUM | 3 |