gemcraft-lost-chapter-labyrinth-zh
The package downloads a SWF file from a non-whitelisted but plausibly maintainer-controlled host; however, it is used as data for a game and not executed directly, with no evidence of malicious payloads or remote code execution.
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 SWF file from a non-whitelisted but plausibly maintainer-controlled host; however, it is used as data for a game and not executed directly, with no evidence of malicious payloads or remote code execution.
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:15
source=("https://resource.deepchirp.com/${swf_name}" http://gameinabottle.com/favicon.ico ${_pkgname} ${_pkgname}.desktop) -
PKGBUILD:15
source=("https://resource.deepchirp.com/${swf_name}" http://gameinabottle.com/favicon.ico ${_pkgname} ${_pkgname}.desktop)
PKGBUILD
1 offending line(s) highlighted# Maintainer: DeepChirp <deepchirp@archlinuxcn.org>
# The Chinese version of the game files were obtained from <https://tieba.baidu.com/p/6642167515>
pkgname=gemcraft-lost-chapter-labyrinth-zh
_pkgname=gemcraft-lost-chapter-labyrinth
pkgver=1.23
pkgrel=1
pkgdesc="Unleash your magic power and fight. The Gem of Eternity awaits you... (Chinese version)"
arch=('i686' 'x86_64')
url="https://www.gemcraftgame.com/"
license=('custom')
depends=("ruffle")
makedepends=('imagemagick')
swf_name="gemcraft-lost-chapter-labyrinth.swf"
source=("https://resource.deepchirp.com/${swf_name}" http://gameinabottle.com/favicon.ico ${_pkgname} ${_pkgname}.desktop)
conflicts=("${_pkgname}")
md5sums=('ea58972f9e80965afec4e512e230a776'
'14f045b8d2a7d75de7cdb27dd4e9d6cd'
'a5424fcf68548661c6722afb1bca5570'
'db16b37d33d93cbf22a818c00bd939e8')
sha256sums=('c8aabd72c13f75ecf44236568fa4cde5c450c8bfc10e41e7542d1fda6bc3d591'
'7d6f3457786f44758f1e2e9fcd1aa0837d0392cf2358fc966d93a666f81b7d03'
'03dfb5ec49238d300d8c2234ab8e436941ea153607237e0343fb71caa2e7204b'
'7b92ff876f1f73e92029e06876aa7a559ff1112388805f73e96695124616c562')
options=(!strip)
build () {
magick favicon.ico ${_pkgname}.png
}
package() {
install -d "${pkgdir}"/usr/{bin,share/${_pkgname}}
install -d "${pkgdir}"/usr/share/applications
install -m644 ${_pkgname}.png "${pkgdir}"/usr/share/${_pkgname}
install -m644 "${swf_name}" "${pkgdir}"/usr/share/${_pkgname}
install -m644 ${_pkgname}.desktop "${pkgdir}"/usr/share/applications
install -m755 ${_pkgname} "${pkgdir}"/usr/bin
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Low | 2 |
| 2026-10-31 00:07:41 | Low | 2 |
| 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 |
| 2026-10-15 00:28:05 | Low | 2 |
| 2026-10-14 00:06:47 | Low | 2 |
| 2026-10-13 00:23:45 | Low | 2 |