unvanquished-git
maintainer Viech
· 11 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads a prebuilt NaCL SDK binary from the project's own domain (dl.unvanquished.net), which is a legitimate build dependency; while the host is not universally whitelisted, it is project-specific and the binary is used for building, not directly executed by users, making the risk low.
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 a prebuilt NaCL SDK binary from the project's own domain (dl.unvanquished.net), which is a legitimate build dependency; while the host is not universally whitelisted, it is project-specific and the binary is used for building, not directly executed by users, making the risk low.
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:49
"naclsdk_${_naclsdk_ver}.tar.bz2::https://dl.unvanquished.net/deps/${_naclsdk_ver}.tar.bz2")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Viech <viech unvanquished net>
2
# Contributor: Baptiste Jonglez
3
# Contributor: Gereon Schomber
4
# Contributor: Martin F. Schumann
5
6
pkgname=unvanquished-git
7
pkgver=0.53.1.r18.g7810f3453
8
pkgrel=1
9
pkgdesc='A team-based, fast-paced, fps/rts hybrid game which pits aliens against humans. Git version.'
10
arch=('x86_64')
11
url='https://www.unvanquished.net'
12
license=('GPL3')
13
makedepends=('cmake' 'git')
14
depends=('unvanquished-data'
15
'zlib' 'gmp' 'nettle' 'geoip' 'curl' 'sdl2' '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')
19
provides=('unvanquished')
20
conflicts=('unvanquished')
21
options=('emptydirs' '!strip')
22
backup=('etc/conf.d/unvanquished.conf'
23
'etc/unvanquished/server.cfg'
24
'etc/unvanquished/maprotation.cfg')
25
install=unvanquished.install
26
27
# Type of target to check out, 'branch' or 'tag'.
28
_type='branch'
29
30
# Either a branch or tag name, depending on _type.
31
_checkout='master'
32
33
# set this to share more text with the non-git version
34
_unvanquished="Unvanquished"
35
36
# NaCL SDK is a buildtime dependency of Dæmon.
37
# NOTE: Due to enormous compile times, we use a binary distribution.
38
_naclsdk_base_ver=6
39
_naclsdk_ver="linux64-${_naclsdk_base_ver}"
40
_naclsdk="${_naclsdk_ver}"
41
42
source=("unvanquished.install"
43
"unvanquished.sh"
44
"unvanquished-tty.sh"
45
"unvanquished.conf"
46
"unvanquished.desktop"
47
"unvanquished.service"
48
"${_unvanquished}::git+https://github.com/Unvanquished/Unvanquished.git#${_type}=${_checkout}"
49
"naclsdk_${_naclsdk_ver}.tar.bz2::https://dl.unvanquished.net/deps/${_naclsdk_ver}.tar.bz2")
50
51
md5sums=('6d9430b5b06b93a43a1cb79e14637f0b'
52
'8d89d015e13f39f1849dfa40146dbfb6'
53
'705d8ad238356cd8fc97f63060f9b2e9'
54
'fd69458c8aa7fa8e71cea6a5993fdcbc'
55
'6d0c7f32cb46e2a3a3901f0ad745fa39'
56
'acf733d3389af8806edc54c872212e53'
57
'SKIP'
58
'8e3e08ca8797e45e8dc01cdadf938676')
59
60
pkgver() {
61
cd "${srcdir}/${_unvanquished}"
62
git describe --match 'v*' --long | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
63
}
64
65
prepare() {
66
cd "${srcdir}/${_unvanquished}"
67
68
git submodule update --init --recursive
69
70
cd "${srcdir}"
71
72
ln -sfr "${_naclsdk}" "${_unvanquished}/daemon/external_deps/${_naclsdk}"
73
}
74
75
build() {
76
cd "${srcdir}/${_unvanquished}"
77
78
mkdir -p build
79
cd build
80
81
cmake \
82
-D BUILD_CGAME=OFF \
83
-D BUILD_SGAME=OFF \
84
-D USE_BREAKPAD=ON \
85
..
86
make
87
}
88
89
package() {
90
cd "${pkgdir}"
91
92
# Create installation directories.
93
install -d -m 755 \
94
etc/conf.d \
95
etc/unvanquished \
96
usr/bin \
97
usr/lib/systemd/system \
98
usr/lib/unvanquished \
99
usr/share/applications \
100
usr/share/licenses/unvanquished \
101
usr/share/unvanquished/pkg \
102
var/lib/unvanquished-server/config \
103
var/lib/unvanquished-server/game
104
105
# Install content.
106
cd "${srcdir}"
107
108
install -m 755 unvanquished.sh "${pkgdir}/usr/bin/unvanquished"
109
install -m 755 unvanquished-tty.sh "${pkgdir}/usr/bin/unvanquished-tty"
110
install -m 644 unvanquished.conf "${pkgdir}/etc/conf.d/"
111
install -m 644 unvanquished.service "${pkgdir}/usr/lib/systemd/system/"
112
install -m 644 unvanquished.desktop "${pkgdir}/usr/share/applications/"
113
114
cd "${srcdir}/${_unvanquished}"
115
116
install -m 644 COPYING.txt "${pkgdir}/usr/share/licenses/unvanquished/"
117
118
cd "${srcdir}/${_unvanquished}/build"
119
120
install -m 755 daemon "${pkgdir}/usr/lib/unvanquished/"
121
install -m 755 daemonded "${pkgdir}/usr/lib/unvanquished/"
122
install -m 755 daemon-tty "${pkgdir}/usr/lib/unvanquished/"
123
install -m 755 crash_server "${pkgdir}/usr/lib/unvanquished/"
124
install -m 755 irt_core-x86*.nexe "${pkgdir}/usr/lib/unvanquished/"
125
install -m 755 nacl_helper_bootstrap "${pkgdir}/usr/lib/unvanquished/"
126
install -m 755 nacl_loader "${pkgdir}/usr/lib/unvanquished/"
127
128
cd "${srcdir}/${_unvanquished}/dist/configs"
129
130
install -m 644 game/maprotation.cfg "${pkgdir}/etc/unvanquished/"
131
install -m 644 config/server.cfg "${pkgdir}/etc/unvanquished/"
132
133
cd "${srcdir}/${_unvanquished}/dist/icons"
134
135
for resolution in $(ls -c1); do
136
icondir="${pkgdir}/usr/share/icons/hicolor/${resolution}/apps"
137
install -d -m 755 "${icondir}"
138
install -m 644 "${resolution}/unvanquished.png" "${icondir}"
139
done
140
141
# setup server home directory
142
cd "${pkgdir}/var/lib/unvanquished-server/config"
143
144
ln -s ../../../../etc/unvanquished/server.cfg .
145
146
cd "${pkgdir}/var/lib/unvanquished-server/game"
147
148
ln -s ../../../../etc/unvanquished/maprotation.cfg .
149
}
150
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 |