unvanquished

maintainer Viech · 63 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The package downloads source code from GitHub and a project-owned domain (dl.unvanquished.net), which is normal for AUR packages; the non-whitelisted host is used for a build dependency (NaCL SDK) that is checksummed and part of the project's own infrastructure, posing minimal risk.

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 source code from GitHub and a project-owned domain (dl.unvanquished.net), which is normal for AUR packages; the non-whitelisted host is used for a build dependency (NaCL SDK) that is checksummed and part of the project's own infrastructure, posing minimal risk.

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:50 "naclsdk_${_naclsdkver}.tar.xz::https://dl.unvanquished.net/deps/${_naclsdkname}.tar.xz")

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Viech <viech unvanquished net>
2# Contributor: Gereon Schomber
3# Contributor: Martin F. Schumann
4
5_naclsdkver=11 # If not correct, cmake will make a download.
6pkgname=unvanquished
7pkgver=0.56.2
8pkgrel=3
9pkgdesc='A team-based, fast-paced, fps/rts hybrid game that pits aliens against humans'
10arch=(x86_64 aarch64)
11url='https://www.unvanquished.net'
12license=(GPL-3.0-or-later)
13makedepends=(cmake)
14depends=("unvanquished-data>=${pkgver}"
15 'zlib' 'gmp' 'nettle' 'geoip' 'curl' 'sdl3' 'glew' 'libpng'
16 'libjpeg-turbo' 'libwebp>=0.2.0' 'freetype2' 'openal' 'libogg'
17 'libvorbis' 'speex' 'libtheora' 'opusfile' 'ncurses' 'xdg-utils'
18 'desktop-file-utils' 'shared-mime-info' 'hicolor-icon-theme')
19provides=('unvanquished')
20conflicts=('unvanquished-git')
21options=('emptydirs' '!strip')
22backup=('etc/conf.d/unvanquished.conf'
23 'etc/unvanquished/server.cfg'
24 'etc/unvanquished/maprotation.cfg')
25install=unvanquished.install
26
27_archive="archive/refs/tags/unvanquished/${pkgver}.tar.gz"
28_suffix="unvanquished-${pkgver}"
29_unvanquished="Unvanquished-${_suffix}"
30#_daemon="Daemon-${_suffix}" # TODO: Restore.
31_daemon_ver="379d88a0687995b6cb6074368fcc68c163e5242d"
32_daemon="Daemon-${_daemon_ver}"
33_breakpad="breakpad-${_suffix}"
34_crunch="crunch-${_suffix}"
35_recast="recastnavigation-${_suffix}"
36_naclsdkname="linux-amd64-default_${_naclsdkver}"
37
38source=("unvanquished.install"
39 "unvanquished.sh"
40 "unvanquished-tty.sh"
41 "unvanquished.conf"
42 "unvanquished.desktop"
43 "unvanquished.service"
44 "unvanquished_${pkgver}.tar.gz::https://github.com/Unvanquished/Unvanquished/${_archive}"
45 #"daemon_${pkgver}.tar.gz::https://github.com/DaemonEngine/Daemon/${_archive}" # TODO: Restore.
46 "daemon_${pkgver}-nettlefix.tar.gz::https://github.com/DaemonEngine/Daemon/archive/${_daemon_ver}.tar.gz"
47 "breakpad_${pkgver}.tar.gz::https://github.com/DaemonEngine/breakpad/${_archive}"
48 "crunch_${pkgver}.tar.gz::https://github.com/DaemonEngine/crunch/${_archive}"
49 "recastnavigation_${pkgver}.tar.gz::https://github.com/DaemonEngine/recastnavigation/${_archive}"
50 "naclsdk_${_naclsdkver}.tar.xz::https://dl.unvanquished.net/deps/${_naclsdkname}.tar.xz")
51
52sha256sums=('b6eb6d2f0a45512cb4b67245fc1454c6d8a2d4ea83ce203c06dcacc51ec411fd'
53 '010e1c64a97a33612f88a11c7621cf69d02119732e151e230bc1fa985757eed7'
54 '0eafaf9e5ed488bc91dcff7eb5f9917765f61583d23daba37bfc1035b1e1af24'
55 '562a0c185dfed2b2dee6135a399b18eff0d5bc5380f19a89ba15fc63b6e2827f'
56 '0b0bc478ad6e61dd17fdeb3265a6321d0ca2719eca7bbb432a4b4a497c58a7b0'
57 '44df664e8737fd543818cebc1e506a33e724fc3fb73eee46813ec3648eff64a0'
58 'd727baa67b19c69c65c155050bd9222c1fec7912c8c90f636036942ae4e6273e'
59 'e68b64330c02180e1e363985705248bd3b93e6d05b11b5d632c399dca8bf8f3a'
60 'b6e25aed236ec681856d875aa5057a15ce2b86737bd08e89d6af3864745ca2a9'
61 '1863f38c82c172ed2902e6b8201d7df86b298bcc9c415589bbf9b1e306b4851c'
62 '3bb68dcb6537081da4d972d5289fb217a023796c27e4a20807c16f152337c0b7'
63 '970e997ccf50a2155fe68a35f9abf2c5c5967cb5686a4855baf0cca89235d28c')
64
65# The prepare function mimics the git submodule dance.
66prepare() {
67 cd "${srcdir}"
68
69 # From Unvanquished: Remove empty submodule directories.
70 rmdir --ignore-fail-on-non-empty "${_unvanquished}/daemon"
71 rmdir --ignore-fail-on-non-empty "${_unvanquished}/libs/recastnavigation"
72
73 # From Dæmon: Remove empty submodule directories.
74 rmdir --ignore-fail-on-non-empty "${_daemon}/libs/breakpad"
75 rmdir --ignore-fail-on-non-empty "${_daemon}/libs/crunch"
76
77 # Link Unvanquished's submodules.
78 ln -sfr "${_daemon}" "${_unvanquished}/daemon"
79 ln -sfr "${_recast}" "${_unvanquished}/libs/recastnavigation"
80
81 # Link Dæmon's submodules.
82 ln -sfr "${_breakpad}" "${_daemon}/libs/breakpad"
83 ln -sfr "${_crunch}" "${_daemon}/libs/crunch"
84
85 # Link the NaCL SDK in the Dæmon source tree.
86 ln -sfr "${_naclsdkname}" "${_daemon}/external_deps/${_naclsdkname}"
87
88 # HACK: Fix unintended cmake-enforced hardening.
89 # This clashes with the setting in makepkg.conf (producing warnings).
90 # See https://github.com/DaemonEngine/Daemon/issues/1380.
91 sed -i 's/(USE_HARDENING OR NOT MINGW)/(USE_HARDENING AND NOT MINGW)/' \
92 "${_daemon}/cmake/DaemonFlags.cmake"
93}
94
95build() {
96 cd "${srcdir}/${_unvanquished}"
97
98 mkdir -p build
99 cd build
100
101 cmake \
102 -D BUILD_CGAME=OFF \
103 -D BUILD_SGAME=OFF \
104 -D USE_BREAKPAD=ON \
105 -D USE_EXTERNAL_DEPS_LIBS=OFF \
106 ..
107 make
108}
109
110package() {
111 cd "${pkgdir}"
112
113 # Create installation directories.
114 install -d -m 755 \
115 etc/conf.d \
116 etc/unvanquished \
117 usr/bin \
118 usr/lib/systemd/system \
119 usr/lib/unvanquished \
120 usr/share/applications \
121 usr/share/licenses/unvanquished \
122 usr/share/unvanquished/pkg \
123 var/lib/unvanquished-server/config \
124 var/lib/unvanquished-server/game
125
126 # Install content.
127 cd "${srcdir}"
128
129 install -m 755 unvanquished.sh "${pkgdir}/usr/bin/unvanquished"
130 install -m 755 unvanquished-tty.sh "${pkgdir}/usr/bin/unvanquished-tty"
131 install -m 644 unvanquished.conf "${pkgdir}/etc/conf.d/"
132 install -m 644 unvanquished.service "${pkgdir}/usr/lib/systemd/system/"
133 install -m 644 unvanquished.desktop "${pkgdir}/usr/share/applications/"
134
135 cd "${srcdir}/${_unvanquished}"
136
137 install -m 644 COPYING.txt "${pkgdir}/usr/share/licenses/unvanquished/"
138
139 cd "${srcdir}/${_unvanquished}/build"
140
141 install -m 755 daemon "${pkgdir}/usr/lib/unvanquished/"
142 install -m 755 daemonded "${pkgdir}/usr/lib/unvanquished/"
143 install -m 755 daemon-tty "${pkgdir}/usr/lib/unvanquished/"
144 install -m 755 crash_server "${pkgdir}/usr/lib/unvanquished/"
145 install -m 755 irt_core-*.nexe "${pkgdir}/usr/lib/unvanquished/"
146 install -m 755 nacl_helper_bootstrap "${pkgdir}/usr/lib/unvanquished/"
147 install -m 755 nacl_loader "${pkgdir}/usr/lib/unvanquished/"
148
149 if [ "${CARCH}" == "aarch64" ]; then
150 armlibdir="${pkgdir}/usr/lib/unvanquished/lib-armhf"
151 install -d -m 755 "${armlibdir}"
152 install -m 755 nacl_helper_bootstrap-armhf "${pkgdir}/usr/lib/unvanquished/"
153 install -m 755 lib-armhf/ld-linux-armhf "${armlibdir}"
154 install -m 755 lib-armhf/lib*.so.* "${armlibdir}"
155 fi
156
157 cd "${srcdir}/${_unvanquished}/dist/configs"
158
159 install -m 644 game/maprotation.cfg "${pkgdir}/etc/unvanquished/"
160 install -m 644 config/server.cfg "${pkgdir}/etc/unvanquished/"
161
162 cd "${srcdir}/${_unvanquished}/dist/icons"
163
164 for resolution in $(ls -c1); do
165 icondir="${pkgdir}/usr/share/icons/hicolor/${resolution}/apps"
166 install -d -m 755 "${icondir}"
167 install -m 644 "${resolution}/unvanquished.png" "${icondir}"
168 done
169
170 # setup server home directory
171 cd "${pkgdir}/var/lib/unvanquished-server/config"
172
173 ln -s ../../../../etc/unvanquished/server.cfg .
174
175 cd "${pkgdir}/var/lib/unvanquished-server/game"
176
177 ln -s ../../../../etc/unvanquished/maprotation.cfg .
178}
179

Scan history

Scanned at (UTC)SeverityRules
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

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion