xump
Triggered rules
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:14
source=("https://www.retroguru.com/$pkgname/$pkgname-v.latest-linux.tar.gz"
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The PKGBUILD downloads a prebuilt binary tarball (containing xump_ubuntu32 and xump_ubuntu64 executables) directly from retroguru.com using a 'v.latest' URL that always resolves to the current version — meaning the sha256sum could become stale/mismatched if the upstream silently updates the file. retroguru.com is the official project host for this freeware game (it is the canonical distribution site for Xump/The Final Run by Retroguru), so this is not a random personal host. However, the binary is a prebuilt executable from a third-party host with no source code available for inspection, and the 'v.latest' URL pattern means the checksum may not pin a specific release. The sha256sum does provide some integrity guarantee at packaging time, but silent upstream binary replacement would not be caught until the next pkgrel bump. This is a real but low-severity supply-chain concern: a prebuilt binary from a non-major forge, with a floating 'latest' URL. The cheaper model's MEDIUM rating is defensible but arguably borderline; the official project host and presence of checksums mitigate the risk somewhat.
PKGBUILD
1 offending line(s) highlighted# Maintainer: kleintux <reg-archlinux AT klein DOT tuxli DOT ch>
# Contributor: carstene1ns <arch carsten-teibes de> - http://git.io/ctPKG
pkgname=xump
pkgver=1.00
pkgrel=2
pkgdesc="Simple puzzler (aka 'The Final Run')"
arch=('i686' 'x86_64')
url="https://retroguru.com/xump/"
license=('custom: Freeware')
depends=('sdl_mixer' 'zlib')
optdepends=('libmodplug: better music decoder')
install=$pkgname.install
source=("https://www.retroguru.com/$pkgname/$pkgname-v.latest-linux.tar.gz"
"$pkgname.png"
"$pkgname.sh"
"$pkgname.desktop")
sha256sums=('4a6df3fadcf3639c3e4ae0b832cc070a0f216334127b276111ea7378745625c0'
'2b75fd009edc6e8a84021b1700ad27b205321f91fe0bff570a793bfd10329c19'
'0468a24a04256865381f5dd0c92dfed4ed6f594270760f32678ebe2cb9bc1b5c'
'd9b60fdc9e2a6be48f09d493f646a9fa4267fae5f6f7849ec90443a4c2a8dcea')
options=(!strip)
package() {
# create folders
install -d "$pkgdir"/usr/{lib/$pkgname,share/{{doc,licenses}/$pkgname,$pkgname/data}}
# install architecture dependent executable
case $CARCH in
i686)
install -m755 ${pkgname}_ubuntu32 "$pkgdir"/usr/lib/$pkgname/$pkgname;;
x86_64)
install -m755 ${pkgname}_ubuntu64 "$pkgdir"/usr/lib/$pkgname/$pkgname;;
esac
# install launcher, data, text, icon, desktop and license files
install -Dm755 $pkgname.sh "$pkgdir"/usr/bin/$pkgname
install -m644 data/*.zda "$pkgdir"/usr/share/$pkgname/data
install -m644 *.txt "$pkgdir"/usr/share/doc/$pkgname
install -Dm644 $pkgname.png "$pkgdir"/usr/share/pixmaps/$pkgname.png
install -Dm644 $pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
tail -n +18 $pkgname.txt | head -n 13 > "$pkgdir"/usr/share/licenses/$pkgname/FREEWARE
}
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 |