squidservers-bin
maintainer StudiCraft
· 0 votes
· scanned 2026-08-03 00:08:14.047287
MEDIUM
View on AUR ↗
Why flagged
The package downloads a prebuilt AppImage executable from a non-standard, non-whitelisted CDN host (cdn.squidservers.com), which is unverifiable and could be silently swapped; this presents a supply-chain risk despite originating from the project's own domain.
Triggered rules
MEDIUM
source=() URL on a non-standard host
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:16
source=("${_pkgname}.AppImage::https://cdn.squidservers.com/squidservers-latest.AppImage")
MEDIUM
AI review
llm_review
An AI model (qwen/qwen3-235b-a22b-07-25) reviewed this and agrees it is MEDIUM (confidence 95%): The package downloads a prebuilt AppImage executable from a non-standard, non-whitelisted CDN host (cdn.squidservers.com), which is unverifiable and could be silently swapped; this presents a supply-chain risk despite originating from the project's own domain.
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Your Name <your.email@example.com>
2
pkgname=squidservers-bin
3
_pkgname=squidservers
4
pkgver=20260623
5
pkgrel=1
6
pkgdesc="A tool to easily self-host Minecraft servers without port forwarding"
7
arch=('x86_64')
8
url="https://squidservers.com"
9
license=('custom:All Rights Reserved')
10
# fuse2 is required to execute AppImages; others ensure Electron UI support
11
depends=('hicolor-icon-theme' 'fuse2' 'nss' 'libxss' 'gtk3' 'libnotify' 'alsa-lib' 'at-spi2-core' 'libxtst')
12
provides=("${_pkgname}")
13
conflicts=("${_pkgname}")
14
options=('!strip')
15
16
source=("${_pkgname}.AppImage::https://cdn.squidservers.com/squidservers-latest.AppImage")
17
sha256sums=('b8eb7e8cc6926ff04b7bc2372faf508070c2a310c7e4f8a18511de87af94de8f')
18
19
prepare() {
20
chmod +x "${_pkgname}.AppImage"
21
# Extract AppImage contents to harvest the icon and desktop file safely
22
./${_pkgname}.AppImage --appimage-extract
23
}
24
25
package() {
26
msg2 "Installing AppImage binary..."
27
install -Dm755 "${srcdir}/${_pkgname}.AppImage" "${pkgdir}/opt/${_pkgname}/${_pkgname}.AppImage"
28
29
msg2 "Creating executable symlink..."
30
install -d "${pkgdir}/usr/bin"
31
ln -sf "/opt/${_pkgname}/${_pkgname}.AppImage" "${pkgdir}/usr/bin/${_pkgname}"
32
33
msg2 "Installing Desktop Entry..."
34
install -Dm644 "${srcdir}/squashfs-root/${_pkgname}.desktop" \
35
"${pkgdir}/usr/share/applications/${_pkgname}.desktop"
36
37
# Force the desktop entry to use our system symlink path
38
sed -i "s|Exec=.*|Exec=${_pkgname} %U|" "${pkgdir}/usr/share/applications/${_pkgname}.desktop"
39
40
msg2 "Installing icons..."
41
install -Dm644 "${srcdir}/squashfs-root/${_pkgname}.png" \
42
"${pkgdir}/usr/share/icons/hicolor/512x512/apps/${_pkgname}.png"
43
44
msg2 "Installing License..."
45
install -Dm644 /dev/stdin "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" << 'EOF'
46
Proprietary license - see squidservers.com
47
EOF
48
}
49
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 |