quake2
MEDIUM
maintainer Slash
34 votes
scanned 2026-09-11 03:21:42.536508
Why flagged
One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).
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:13
source=("http://www.icculus.org/quake2/files/quake2-${pkgver}.tar.gz" -
PKGBUILD:14
'http://www.gamers.org/pub/idgames/idstuff/quake2/source/xatrixsrc320.shar.Z'
PKGBUILD
2 offending line(s) highlighted
1
# Maintainer: Slash <demodevil5 [at] yahoo [dot] com>
2
# Contributor: Andrew Simmons <andrew.simmons@gmail.com>
3
4
pkgname=quake2
5
pkgver=r0.16.2
6
pkgrel=6
7
pkgdesc="Quake 2 engine. You need the retail .pak files to play."
8
url="http://www.icculus.org/quake2/"
9
arch=('i686' 'x86_64')
10
license=('GPL')
11
depends=('bash' 'libjpeg' 'sdl' 'libxxf86vm' 'libxxf86dga')
12
install="quake2.install"
13
source=("http://www.icculus.org/quake2/files/quake2-${pkgver}.tar.gz"
14
'http://www.gamers.org/pub/idgames/idstuff/quake2/source/xatrixsrc320.shar.Z'
15
'http://www.gamers.org/pub/idgames/idstuff/quake2/source/roguesrc320.shar.Z'
16
'http://www.gamers.org/pub/idgames/idstuff/quake2/q2-3.20-x86-full-ctf.exe'
17
'http://www.icculus.org/quake2/files/maxpak.pak'
18
'http://www.icculus.org/quake2/files/pak10.pak'
19
'http://www.icculus.org/quake2/files/pak11.pak'
20
'http://www.icculus.org/quake2/files/pak12.pak'
21
'http://www.icculus.org/quake2/files/pak13.pak'
22
'http://www.icculus.org/quake2/files/pak14.pak'
23
'http://www.icculus.org/quake2/files/pak16.pak'
24
'http://www.icculus.org/quake2/files/pak17.pak'
25
'http://www.icculus.org/quake2/files/pak19.pak'
26
'quake2.sh' 'q2ded.sh' 'xatrix.sh' 'rogue.sh' 'ctf.sh' 'snd_alsa.c'
27
'gnusource.patch' 'map_command_fix.patch' 'updates_for_gcc.patch')
28
sha256sums=('98cea3cbd70bd1f195e5190d0ae047c636e00e21dbc6cc5bdee4acd52876d3e9'
29
'94bf596cd85d38ea294b99ccb0ebb5e4b9776cca335001b3803e2d8407395589'
30
'ceefb2fd748961cb0bc3244220f3eb09d8f7b8ca2eb32cdf9b284727a2fdc919'
31
'f82197c8c8089202a4b3a85d8833b0c2e827a709d205c760369407c212488baa'
32
'653569fe880f1ed5f7529483ac961b22078482e6ff0e83f4d9d1bc503c866770'
33
'196dc096c1f4fd620c19a09593e5b770ddbeed7d864ca3a95383f7bf9538fbc3'
34
'dcddd989b568cb28aa6c2a877d81df50a71fd9a649ce6dd44f454efe13e26a73'
35
'170af42c090940c89f1bf16e8518733bc39dac070e0d42e4eacad727b37de256'
36
'085b22e5a9f23299e6f0519e402711725cdac51fc399ce577d0d701df0a72681'
37
'78d3b02d20f856b3a0680035b0d67a80a16bede372eef3330b58c755387ff1ff'
38
'eb21fbc6d0bcd69fb1d3768bcb7f0bbff03e28c18c67f239497d15749913ded3'
39
'e9585c18ec1f53b95dad833f76ac2df54586d3171e0f3a93ba7c2acce8d915be'
40
'ee7d5aaee977a8dd198c61a2bcca446b2ab421ee6eaa3a18159671dd742a9540'
41
'df049ce47922b5d13784f24f7e0457ec48ee1ff19254c3d6c473da684474e490'
42
'238f2efc57f1dc04f604932afda4da5332c3798b689bb9edff951b8e405e8fc5'
43
'ca832709e8b9dd92ff95959a884127be1804d85381f494b14713c860ae6db471'
44
'8655b4216ea95d2408dcc28de53e53df587aa6959a95c62cc6d7f3eb63492202'
45
'ea50ae5cca9d633fe2ad30c59beb2ad350130bdd2a78f773639794f2c12d1ed1'
46
'fd434189a6242ad288e5827c8285e0dca3f26fe447be50204d4b6817cb1ae624'
47
'9ac34f2bebbb6d4a19c590e00db8e5b0034b3ffe2a245a595e28ab43d65d7617'
48
'7ce69543faf226e871dbe78c058a3499f5c283860ae2d9e39e397178123264ec'
49
'637c94188ee5fb147fae56fd368b7b184f3a111adc1099ec0da0a95046c93d6a')
50
PKGEXT='.pkg.tar'
51
52
# Computer Architecture Variable used by Quake2
53
[ "${CARCH}" = "i686" ] && _dirarch=i386
54
[ "${CARCH}" = "x86_64" ] && _dirarch=x86_64
55
56
prepare() {
57
cd "${srcdir}"
58
59
# Create Temporary Directories
60
install -d "${pkgname}-${pkgver}/src/xatrix" "${pkgname}-${pkgver}/src/rogue"
61
62
# Extract and patch The Reckoning (xatrix) and Ground Zero (rouge) Expansions
63
for _addon in xatrix rogue; do
64
_shar="${_addon}src320.shar"
65
66
cp "${srcdir}/${_shar}.Z" "${srcdir}/${pkgname}-${pkgver}/src/${_addon}"
67
cd "${srcdir}/${pkgname}-${pkgver}/src/${_addon}"
68
69
# Extract
70
msg "Unpacking ${_shar}.Z"
71
uncompress "${_shar}.Z"
72
73
# Remove Prompts
74
/bin/sed -i -e 's:^read ans:ans=yes :' "${_shar}"
75
/bin/sed -i -e 's:^more <<EOF:cat <<EOF:' "${_shar}"
76
77
# Run Installer
78
msg "Running ${_shar}"
79
sh "${_shar}"
80
81
msg "Patching ${_addon}"
82
83
# Patch (rogue-only)
84
if [ "${_addon}" = "rogue" ]; then
85
/bin/sed -e "s/#include <nan.h>/#include <bits\/nan.h>/" -i g_local.h
86
fi
87
88
# Patches (Both Expansions)
89
/bin/sed -e "s/extern\tint\tjacket_armor_index/static\tint\tjacket_armor_index/" -i g_local.h
90
/bin/sed -e "s/extern\tint\tcombat_armor_index/static\tint\tcombat_armor_index/" -i g_local.h
91
/bin/sed -e "s/extern\tint\tbody_armor_index/static\tint\tbody_armor_index/" -i g_local.h
92
done
93
94
msg "The Reckoning and Ground Zero Expansion patching complete"
95
96
cd "${srcdir}/${pkgname}-${pkgver}/"
97
98
# Patch from SVN
99
cp "${srcdir}/snd_alsa.c" ./src/linux/snd_alsa.c
100
101
# x86_64 patch from Gentoo
102
patch -p1 < "${srcdir}/gnusource.patch"
103
104
# libjpeg Fix
105
/bin/sed -i -e 's:jpeg_mem_src:_&:' \
106
"${srcdir}/${pkgname}-${pkgver}/src/ref_candygl/gl_image.c"
107
108
# Map command fix by h3xx
109
/usr/bin/patch -p1 < "${srcdir}/map_command_fix.patch"
110
111
# Updates to compile using newer gcc releases
112
/usr/bin/patch -p1 < "${srcdir}/updates_for_gcc.patch"
113
114
msg "Quake 2 patching complete"
115
}
116
117
build() {
118
cd "${srcdir}/${pkgname}-${pkgver}/"
119
120
msg "Compiling Quake 2"
121
122
# Compile Quake 2
123
make -s BUILD_XATRIX=YES \
124
BUILD_ROGUE=YES \
125
BUILD_DEDICATED=YES \
126
BUILD_CTF=YES \
127
BUILD_QMAX=YES \
128
build_release
129
}
130
131
package() {
132
cd "${srcdir}/${pkgname}-${pkgver}/release${_dirarch}"
133
134
# Create Destination Directories
135
install -d "${pkgdir}/opt/quake2/"{baseq2,ctf,xatrix,rogue}
136
137
# Install Binary
138
install -m 755 quake2 "${pkgdir}/opt/quake2/quake2"
139
140
# Install Binary (SDL)
141
install -m 755 sdlquake2 "${pkgdir}/opt/quake2/sdlquake2"
142
143
# Install Base Game Library
144
install -m 755 "game${_dirarch}.so" "${pkgdir}/opt/quake2/baseq2/"
145
146
# Install CTF Library
147
install -m 755 "ctf/game${_dirarch}.so" "${pkgdir}/opt/quake2/ctf/"
148
149
# Install Xatrix Library
150
install -m 755 "xatrix/game${_dirarch}.so" "${pkgdir}/opt/quake2/xatrix/"
151
152
# Install Rogue Library
153
install -m 755 "rogue/game${_dirarch}.so" "${pkgdir}/opt/quake2/rogue/"
154
155
# Install Additional Libraries
156
cp ref_*.so "${pkgdir}/opt/quake2/"
157
158
cd "${srcdir}"
159
160
# Extract CTF Patch Data
161
mkdir "${srcdir}/q2"
162
cp "${srcdir}/q2-3.20-x86-full-ctf.exe" "${srcdir}/q2"
163
cd "${srcdir}/q2"
164
unzip -L q2-3.20-x86-full-ctf.exe
165
166
# Install CTF Patch Data
167
cp baseq2/pak1.pak baseq2/pak2.pak "${pkgdir}/opt/quake2/baseq2/"
168
cp -r baseq2/players "${pkgdir}/opt/quake2/baseq2/"
169
cp ctf/* "${pkgdir}/opt/quake2/ctf/"
170
171
# Install Q2Max Pak File
172
install "${srcdir}/maxpak.pak" "${pkgdir}/opt/quake2/baseq2/"
173
174
# Install Additional pak Files
175
for i in {10,11,12,13,14,16,17,19}; do
176
install -m 644 "${srcdir}/pak${i}.pak" \
177
"${pkgdir}/opt/quake2/baseq2/pak${i}.pak"
178
done;
179
180
# Install Game Launchers
181
install -D -m 755 "${srcdir}/quake2.sh" "${pkgdir}/usr/bin/quake2"
182
install -D -m 755 "${srcdir}/q2ded.sh" "${pkgdir}/usr/bin/q2ded"
183
install -D -m 755 "${srcdir}/xatrix.sh" "${pkgdir}/usr/bin/quake2-the-reckoning"
184
install -D -m 755 "${srcdir}/rogue.sh" "${pkgdir}/usr/bin/quake2-ground-zero"
185
install -D -m 755 "${srcdir}/ctf.sh" "${pkgdir}/usr/bin/quake2-ctf"
186
}
187
188
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-11 03:21:42 | Medium | 1 |
| 2026-06-19 19:07:35 | Clean | 2 |
| 2026-06-18 16:11:54 | Medium | 1 |