xonotic-autobuild
The rsync sources are scripts and configuration files from the official xonotic.org infrastructure, used to update the build; they are not untrusted executables, and the package primarily builds from source and installs data/assets, resulting in low risk despite the non-whitelisted host.
Triggered rules
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 rsync sources are scripts and configuration files from the official xonotic.org infrastructure, used to update the build; they are not untrusted executables, and the package primarily builds from source and installs data/assets, resulting in low risk despite the non-whitelisted host.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:19
source=("rsync://beta.xonotic.org/autobuild-Xonotic/misc/tools/rsync-updater/update-to-autobuild.sh" -
PKGBUILD:20
"rsync://rsync.xonotic.org/autobuild/Xonotic/misc/tools/rsync-updater/mirrors.txt")
PKGBUILD
2 offending line(s) highlighted# Maintainer: johnnybash <georg at grgw dot de>
# Contributor: Alex Talker <alextalker at openmailbox dot org>
# Contributor: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Alexander Suhoverhov <cy at ngs dot ru>
# Contributor: Jookia <166291@gmail.com>
pkgname=xonotic-autobuild
pkgver=20250630
pkgrel=1
pkgdesc="A free, fast-paced cross-platform first person shooter"
arch=('x86_64' 'aarch64')
url="http://xonotic.org"
license=('GPL-3.0-only')
depends=('alsa-lib' 'curl' 'libmodplug' 'libvorbis' 'libxpm'
'sdl2' 'gtk-update-icon-cache' 'desktop-file-utils')
makedepends=('mesa' 'rsync')
options=('!debug' '!strip')
conflicts=('xonotic' 'xonotic-data' 'xonotic-git')
source=("rsync://beta.xonotic.org/autobuild-Xonotic/misc/tools/rsync-updater/update-to-autobuild.sh"
"rsync://rsync.xonotic.org/autobuild/Xonotic/misc/tools/rsync-updater/mirrors.txt")
sha512sums=('e8f684425f96cf3803946d22fd075e010fee48233f971b79a4ecb453890c81eea3d192bc4b5f47e87e936b26c6446837b17eafa1fa3c4e42aa93a16e378fee35'
'57e3eb4aa983e0d51b3012a651b772e04a1238e9fdeee37f11016809270cd05a1189f3c4c64621671011897a6c9e31dfc1b391452dddf30f1073cbfe56a85ef9')
b2sums=('963e6c975515fa31d2ae1be20757fddca0b0607dc3b1f2c04331dadac7c9202937e2f2feb26eaa5739f68ea236d7cd8fa1f12587897d5180c7a206d7a92caf12'
'04f02f4b399a36cad1be1ca6b33ac212d8ad0db72e0756f52f6424473bd1968ebaeb805541633c7ea722deead9f1220272f5809065af1d24f58f46621701e183')
pkgver() {
printf $(date +%Y%m%d -r Xonotic/xonotic-linux64-sdl)
}
prepare() {
mkdir -p Xonotic/misc/tools/rsync-updater/
cp update-to-autobuild.sh Xonotic/misc/tools/rsync-updater/
cp mirrors.txt Xonotic/misc/tools/rsync-updater/
cd Xonotic/misc/tools/rsync-updater/
touch Xonotic
sh ./update-to-autobuild.sh --yes
}
build() {
# compile engine
make -C Xonotic/source/darkplaces \
CPUOPTIMIZATIONS="${CFLAGS}" \
DP_FS_BASEDIR=/usr/share/xonotic/ \
DP_LINK_TO_LIBJPEG=1 \
sdl-release
make -C Xonotic/source/darkplaces \
CPUOPTIMIZATIONS="${CFLAGS}" \
DP_FS_BASEDIR=/usr/share/xonotic/ \
DP_LINK_TO_LIBJPEG=1 \
sv-release
cd Xonotic/source/d0_blind_id
./autogen.sh
./configure --prefix=/usr
make
}
package() {
cd Xonotic
# data
install -d "$pkgdir"/usr/share/xonotic/
mv data "$pkgdir"/usr/share/xonotic/
# server stuff
cp -r server "$pkgdir"/usr/share/xonotic/
# binaries
install -Dm755 source/darkplaces/darkplaces-dedicated "$pkgdir"/usr/bin/xonotic-dedicated
install -Dm755 source/darkplaces/darkplaces-sdl "$pkgdir"/usr/bin/xonotic-sdl
# convenience files
install -d "$pkgdir"/usr/share/applications
install -Dm644 misc/logos/xonotic.desktop -t $pkgdir/usr/share/applications
for size in 16 22 24 32 48 64 128 256 512; do
install -Dm644 misc/logos/icons_png/xonotic_${size}.png \
"$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/xonotic.png"
done
# key
install -Dm644 key_0.d0pk "$pkgdir"/usr/share/xonotic/key_0.d0pk
# crypto stuff
cd source/d0_blind_id
make DESTDIR="$pkgdir" install
}
# vim: ts=2:sw=2 et:
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |
| 2026-08-29 00:29:17 | Low | 2 |