unreal-tournament-data-archiveorg
maintainer jmsq
· 1 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads an ISO from archive.org, a plausible source for archival data, and extracts game assets; the content is non-executable data, and the build process only organizes and cleans files without executing remote code.
Triggered rules
LOW
AI review downgraded a static finding
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 an ISO from archive.org, a plausible source for archival data, and extracts game assets; the content is non-executable data, and the build process only organizes and cleans files without executing remote code.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:14
source=("https://archive.org/download/ut-goty/UT_GOTY_CD1.iso")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: John-Michael Mulesa <jmulesa [at] gmail.com>
2
3
pkgname=unreal-tournament-data-archiveorg
4
pkgver=436
5
pkgrel=3
6
pkgdesc="Unreal Tournament 99 (GOTY) data from Archive.org ISO"
7
arch=('any')
8
url="https://archive.org/details/ut-goty"
9
license=('custom')
10
depends=()
11
makedepends=('p7zip')
12
provides=('unreal-tournament-data')
13
conflicts=('unreal-tournament-data')
14
source=("https://archive.org/download/ut-goty/UT_GOTY_CD1.iso")
15
sha256sums=('e184984ca88f001c5ddd52035d76cd64e266e26c74975161b5ed72366c74704f')
16
17
prepare() {
18
mkdir -p "$srcdir/ut99-iso"
19
cd "$srcdir/ut99-iso"
20
21
msg2 "Extracting CD1..."
22
7z x "$srcdir/UT_GOTY_CD1.iso" -y
23
}
24
25
package() {
26
install -d "$pkgdir/opt/unreal-tournament"
27
28
cd "$srcdir/ut99-iso"
29
30
msg2 "Organizing and copying data..."
31
cp -r * "$pkgdir/opt/unreal-tournament/"
32
33
rm -f "$pkgdir/opt/unreal-tournament/Autorun.inf"
34
rm -f "$pkgdir/opt/unreal-tournament/Setup.exe"
35
rm -f "$pkgdir/opt/unreal-tournament/"*.txt
36
rm -f "$pkgdir/opt/unreal-tournament/"*.TXT
37
38
msg2 "Cleaning System directory..."
39
find "$pkgdir/opt/unreal-tournament/System" -type f \( -name "*.exe" -o -name "*.dll" -o -name "*.so" -o -name "*.bin" \) -delete
40
41
msg2 "Removing files conflicting with binary package..."
42
p="$pkgdir/opt/unreal-tournament"
43
44
rm -f "$p/Help/ReleaseNotes.htm"
45
rm -f "$p/System/Core.u" "$p/System/Editor.u" "$p/System/Engine.u" "$p/System/Fire.u"
46
rm -f "$p/System/IpDrv.u" "$p/System/IpServer.u" "$p/System/UBrowser.u" "$p/System/UMenu.u"
47
rm -f "$p/System/UTBrowser.u" "$p/System/UTMenu.u" "$p/System/UTServerAdmin.u"
48
rm -f "$p/System/UWeb.u" "$p/System/UWindow.u" "$p/System/UnrealI.u" "$p/System/UnrealShare.u"
49
rm -f "$p/System/de.u" "$p/System/epiccustommodels.u" "$p/System/multimesh.u"
50
rm -f "$p/System/relics.u" "$p/System/relicsbindings.u"
51
rm -f "$p/Textures/LadderFonts.utx" "$p/Textures/UWindowFonts.utx"
52
rm -rf "$p/Web" "$p/DirectX7" "$p/GameSpy" "$p/Heat"
53
54
msg2 "Moving default config files to User folder..."
55
install -d "$pkgdir/opt/unreal-tournament/User"
56
for f in DefUser.ini Default.ini User.ini UnrealTournament.ini; do
57
if [ -f "$pkgdir/opt/unreal-tournament/System/$f" ]; then
58
mv "$pkgdir/opt/unreal-tournament/System/$f" "$pkgdir/opt/unreal-tournament/User/"
59
fi
60
done
61
62
msg2 "Fixing permissions..."
63
find "$pkgdir/opt/unreal-tournament" -type d -exec chmod 755 {} +
64
find "$pkgdir/opt/unreal-tournament" -type f -exec chmod 644 {} +
65
}
66
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | LOW | 2 |
| 2026-08-02 00:16:08 | LOW | 2 |
| 2026-08-01 00:11:18 | LOW | 2 |
| 2026-07-31 00:14:10 | LOW | 2 |
| 2026-07-30 00:17:23 | LOW | 2 |
| 2026-07-29 00:25:53 | LOW | 2 |
| 2026-07-28 00:07:28 | LOW | 2 |
| 2026-07-27 00:24:32 | LOW | 2 |
| 2026-07-26 00:07:32 | LOW | 2 |
| 2026-07-25 00:13:44 | LOW | 2 |
| 2026-07-24 00:02:28 | LOW | 2 |
| 2026-07-23 00:14:47 | LOW | 2 |
| 2026-07-22 00:29:32 | LOW | 2 |
| 2026-07-21 00:24:15 | LOW | 2 |
| 2026-07-20 00:19:49 | LOW | 2 |
| 2026-07-19 00:17:08 | LOW | 2 |
| 2026-07-18 00:14:48 | LOW | 2 |
| 2026-07-17 00:06:16 | LOW | 2 |
| 2026-07-16 00:05:41 | LOW | 2 |
| 2026-07-15 00:09:25 | LOW | 2 |