pudu-launcher-git
The npx tauri build command is used to build the project from its own source code, which is checked out from the project's official Git repository; this is a normal part of the build process for Tauri-based applications and does not execute arbitrary remote code.
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 90%): The npx tauri build command is used to build the project from its own source code, which is checked out from the project's official Git repository; this is a normal part of the build process for Tauri-based applications and does not execute arbitrary remote code.
1 higher static finding superseded - not the current verdict (shown for transparency)
remote_code_tool
`npx`/`bunx`/`pnpm dlx`/`deno run <url>` downloads AND runs a remote package at build time — the moral equivalent of piping a download into a shell. Severity downgraded: Node.js consumer context.
-
PKGBUILD:64
npx tauri build -b deb
PKGBUILD
1 offending line(s) highlighted# Maintainer:
pkgname=pudu-launcher-git
pkgver=r12.d57587d
pkgrel=2
pkgdesc="Alternative game launcher for Unitystation"
arch=('x86_64')
url="https://github.com/corp-0/PuduLauncher"
license=('MIT')
depends=(
'cairo'
'desktop-file-utils'
'gdk-pixbuf2'
'glib2'
'gtk3'
'hicolor-icon-theme'
'libsoup3'
'openssl'
'pango'
'webkit2gtk-4.1'
)
makedepends=(
'clang'
'dotnet-sdk-10.0'
'git'
'libappindicator-gtk3'
'librsvg'
'nodejs'
'npm'
'patchelf'
'rust'
'zlib'
)
install=pudu-launcher.install
provides=('pudu-launcher')
conflicts=('pudu-launcher')
options=(!lto) # ring crate's assembly objects break with Arch's system-wide -flto
source=("git+${url}.git")
sha256sums=('SKIP')
pkgver() {
cd PuduLauncher
( set -o pipefail
git describe --long --abbrev=7 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g' ||
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
)
}
prepare() {
cd PuduLauncher
git submodule update --init --recursive
# `generate-ts` runs `dotnet build -c Debug`; keep AOT/trim for release publish only.
sed -i "s|<PublishAot>true</PublishAot>|<PublishAot Condition=\"'\\\$(Configuration)' == 'Release'\">true</PublishAot>|" src-dotnet/PuduLauncher/PuduLauncher.csproj
sed -i "s|<PublishTrimmed>true</PublishTrimmed>|<PublishTrimmed Condition=\"'\\\$(Configuration)' == 'Release'\">true</PublishTrimmed>|" src-dotnet/PuduLauncher/PuduLauncher.csproj
# Disable signed updater artifacts - AUR users don't have the private key
sed -i 's/"createUpdaterArtifacts": true/"createUpdaterArtifacts": false/' src-tauri/tauri.conf.json
npm ci
}
build() {
cd PuduLauncher
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
export AllowMissingPrunePackageData=true
npx tauri build -b deb
}
package() {
cd "${srcdir}/PuduLauncher/src-tauri/target/release/bundle/deb"
cp -a pudu-launcher_*/data/usr "${pkgdir}/"
}
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 |