lix
The non-standard host (lixgame.com) hosts only game music data, which is non-executable and low-risk; the main source code comes from GitHub, and no remote code execution or malicious behavior is present.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The non-standard host (lixgame.com) hosts only game music data, which is non-executable and low-risk; the main source code comes from GitHub, and no remote code execution or malicious behavior is present.
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:17
"$pkgname-music-1.1.zip::https://www.lixgame.com/dow/lix-music.zip")
PKGBUILD
1 offending line(s) highlighted# Maintainer: Lucki <https://aur.archlinux.org/account/Lucki>
# Contributor: Carl Reinke <mindless2112 gmail com>
# shellcheck shell=bash
# shellcheck disable=SC2034,SC2154
pkgname=lix
pkgver=0.10.35
pkgrel=1
pkgdesc="An action-puzzle game inspired by Lemmings"
url="https://www.lixgame.com/"
changelog=.CHANGELOG
license=('custom:CC0')
_gitname=LixD
_pkgver=a06c2d1ae1be294409708af0d51b77d4ff36077d
source=("$pkgname-$pkgver.src.tar.gz::https://github.com/SimonN/LixD/archive/$_pkgver.tar.gz"
"$pkgname-music-1.1.zip::https://www.lixgame.com/dow/lix-music.zip")
sha512sums=('cda4d62cb7f82423ff69c7d4c92844928b99a6a0a020be42a259d749afc241ce14773ae7d5f09b3b6856343c1b35afffe3e508b11ab689aac4604fc833c112d2'
'280fd25a479ac8dd24475b014234270a12ab34edca7fb2f7ce4b768259111b1e7626d3ba37ac13d810f0653d23d7c9f212776e94d2c0b31a0de580864771ce9f')
arch=('i686' 'x86_64')
depends=(
allegro
d-runtime
enet
hicolor-icon-theme
)
makedepends=(
d-compiler
dub
git
jq
pkgconf # https://github.com/SimonN/LixD/issues/469#issuecomment-2174416422
)
prepare() {
cd "$_gitname-$_pkgver" || exit 1
# Iterate through the required packages and versions to fetch them in advance
# Read from dub.selections.json and print them as "package@version"
for line in $(jq -r '.versions | keys[] as $k | "\($k)@\(.[$k])"' <dub.selections.json); do
# Fetch each package at the required version
# Expected format is: package@version
dub fetch --cache=local "$line"
done
}
_build() {
# 2022.02.26
# 15:22 <@SimonN> It's possible that it's already enough to raise the stack size in the current shell: ulimit -s 16384
# 15:22 <@SimonN> See also: https://github.com/ldc-developers/ldc/issues/3913
# 15:26 <@SimonN> Yes, very high chance that the following will fix/workaround: Execute "ulimit -s 16384" in the same shell that will then run dub. I.e., we double the stack size, assuming "ulimit -s" printed 8192 before; it does that for me in new shells.
ulimit -s 16384
dub "$@" \
`# Do not resolve missing dependencies before building` \
--nodeps \
`# Ensure dub stays outside the users home directory` \
--cache=local \
`# Runs multiple compiler instances in parallel, if possible` \
--parallel \
`# Forces a recompilation even if the target is up to date` \
--force \
`# Force FHS compatibility` \
--build=releaseXDG
}
build() {
cd "$_gitname-$_pkgver" || exit 1
_build build
}
check() {
cd "$_gitname-$_pkgver" || exit 1
_build test
}
package() {
cd "$_gitname-$_pkgver" || exit 1
# install application entry
install -Dm644 \
`# SRCFILE:` \
"data/desktop/com.lixgame.Lix.desktop" \
`# DSTFILE:` \
"$pkgdir/usr/share/applications/$pkgname.desktop"
# install application entry icon
install -Dm644 \
`# SRCFILE:` \
"data/images/${pkgname}_logo.svg" \
`# DSTFILE:` \
"$pkgdir/usr/share/icons/hicolor/scalable/apps/$pkgname.svg"
# install license text
install -Dm644 \
`# SRCFILE:` \
"doc/copying.txt" \
`# DSTFILE:` \
"$pkgdir/usr/share/licenses/$pkgname/COPYING"
# install man page
install -Dm644 \
`# SRCFILE:` \
"doc/lix.6" \
`# DSTFILE:` \
"$pkgdir/usr/share/man/man6/lix.6"
# install binary
install -Dm755 \
`# SRCFILE:` \
"bin/$pkgname" \
`# DSTFILE:` \
"$pkgdir/usr/bin/$pkgname"
# remove unimportant files
# https://raw.githubusercontent.com/SimonN/LixD/master/doc/build/package.txt
rm -r "doc/build"
# https://lists.archlinux.org/pipermail/aur-general/2011-November/016777.html
# make directories
mkdir -p \
"$pkgdir/usr/share/$pkgname" \
"$pkgdir/usr/share/doc/$pkgname"
# copy documentary
cp -dpr --no-preserve=ownership \
`# SRCFILES:` \
"doc/." \
`# DSTDIR:` \
"$pkgdir/usr/share/doc/$pkgname/"
# copy game files
cp -dpr --no-preserve=ownership \
`# SRCDIRS:` \
"data" \
"images" \
"levels" \
"$srcdir/music" \
`# DSTDIR:` \
"$pkgdir/usr/share/$pkgname"
}
Changes since previous scan
--- PKGBUILD @ 2026-09-11 00:19+++ PKGBUILD @ 2026-09-17 00:27@@ -4,7 +4,7 @@ # shellcheck disable=SC2034,SC2154 pkgname=lix-pkgver=0.10.33+pkgver=0.10.35 pkgrel=1 pkgdesc="An action-puzzle game inspired by Lemmings" url="https://www.lixgame.com/"@@ -12,9 +12,10 @@ license=('custom:CC0') _gitname=LixD-source=("$pkgname-$pkgver.src.tar.gz::https://github.com/SimonN/LixD/archive/v$pkgver.tar.gz"+_pkgver=a06c2d1ae1be294409708af0d51b77d4ff36077d+source=("$pkgname-$pkgver.src.tar.gz::https://github.com/SimonN/LixD/archive/$_pkgver.tar.gz" "$pkgname-music-1.1.zip::https://www.lixgame.com/dow/lix-music.zip")-sha512sums=('690077a83ee76a9aa3233185250d921cb0028135d92fa3545e3edd474673cab10b88d68c07956b8335678326f4c026799b5407bf466f0eede078758544fd6718'+sha512sums=('cda4d62cb7f82423ff69c7d4c92844928b99a6a0a020be42a259d749afc241ce14773ae7d5f09b3b6856343c1b35afffe3e508b11ab689aac4604fc833c112d2' '280fd25a479ac8dd24475b014234270a12ab34edca7fb2f7ce4b768259111b1e7626d3ba37ac13d810f0653d23d7c9f212776e94d2c0b31a0de580864771ce9f') arch=('i686' 'x86_64')@@ -33,7 +34,7 @@ ) prepare() {- cd "$_gitname-$pkgver" || exit 1+ cd "$_gitname-$_pkgver" || exit 1 # Iterate through the required packages and versions to fetch them in advance # Read from dub.selections.json and print them as "package@version"@@ -65,17 +66,17 @@ } build() {- cd "$_gitname-$pkgver" || exit 1+ cd "$_gitname-$_pkgver" || exit 1 _build build } check() {- cd "$_gitname-$pkgver" || exit 1+ cd "$_gitname-$_pkgver" || exit 1 _build test } package() {- cd "$_gitname-$pkgver" || exit 1+ cd "$_gitname-$_pkgver" || exit 1 # install application entry install -Dm644 \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 23:24:29 | Medium | 1 |
| 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 |