vortex-v2
maintainer Doodcom
· 0 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The npx usage in build() runs electron-builder on the project's own source from GitHub, which is a normal part of building an Electron app; the source is verifiable and the command is not executing arbitrary remote code.
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-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The npx usage in build() runs electron-builder on the project's own source from GitHub, which is a normal part of building an Electron app; the source is verifiable and the command is not executing arbitrary remote code.
1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM
npx/bunx/deno executes a remote package
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:34
npx electron-builder --linux dir
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Doodcom <a.munro87@icloud.com>
2
# Build from a local checkout:
3
# cd packaging && makepkg -si
4
# For AUR publishing the source line points at the GitHub release tag.
5
6
pkgname=vortex-v2
7
pkgver=1.0.3
8
pkgrel=1
9
pkgdesc="System updater and tuner suite for CachyOS (updates, sched-ext, snapshots, cleaner)"
10
arch=('x86_64')
11
url="https://github.com/Doodcom/vortex-v2"
12
license=('MIT')
13
depends=('nss' 'libxtst' 'libxss' 'gtk3' 'mesa' 'alsa-lib')
14
makedepends=('git' 'nodejs' 'npm')
15
optdepends=(
16
'fwupd: device firmware updates in the Updater'
17
'snapper: pre-upgrade Btrfs snapshots'
18
'ufw: firewall view'
19
'paru: AUR update checks and builds'
20
'pacman-contrib: checkupdates + paccache for update checks and cache cleaning'
21
'scx-scheds: sched-ext schedulers for the Scheduler view and Game Mode'
22
'power-profiles-daemon: power profile switching'
23
'docker: container view'
24
'flatpak: flatpak management in Packages'
25
)
26
source=("$pkgname-$pkgver.tar.gz::https://github.com/Doodcom/vortex-v2/archive/refs/tags/v$pkgver.tar.gz")
27
sha256sums=('febd14a543f7611d2910b3da501529a193a5cca34757c42b3812d38b945fd7a2')
28
29
build() {
30
cd "$srcdir/$pkgname-$pkgver"
31
npm ci --legacy-peer-deps
32
npm run build
33
# dir target produces release/linux-unpacked with natives rebuilt for the bundled Electron
34
npx electron-builder --linux dir
35
}
36
37
package() {
38
cd "$srcdir/$pkgname-$pkgver"
39
40
# App payload
41
install -d "$pkgdir/opt/$pkgname"
42
cp -r release/linux-unpacked/. "$pkgdir/opt/$pkgname/"
43
chmod 4755 "$pkgdir/opt/$pkgname/chrome-sandbox"
44
45
# Launcher with the same GPU/Wayland flags electron-builder bakes into its own targets
46
install -d "$pkgdir/usr/bin"
47
cat > "$pkgdir/usr/bin/$pkgname" <<'EOF'
48
#!/usr/bin/env bash
49
exec "/opt/vortex-v2/vortex-v2" \
50
--ozone-platform-hint=auto \
51
--enable-features=VaapiVideoDecodeLinuxGL,UseOzonePlatform,WaylandWindowDecorations \
52
--use-gl=egl \
53
--enable-gpu-rasterization \
54
"$@"
55
EOF
56
chmod 755 "$pkgdir/usr/bin/$pkgname"
57
58
# Desktop entry + icons
59
install -Dm644 packaging/$pkgname.desktop "$pkgdir/usr/share/applications/$pkgname.desktop"
60
for size in 128 256 512; do
61
install -Dm644 "build/icons/${size}x${size}.png" \
62
"$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/$pkgname.png"
63
done
64
65
# Polkit rule: one auth per maintenance run instead of one per pkexec call
66
install -Dm644 resources/polkit/49-vortex.rules "$pkgdir/etc/polkit-1/rules.d/49-vortex.rules"
67
68
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
69
}
70
Changes since previous scan
--- PKGBUILD @ 2026-07-19 19:14+++ PKGBUILD @ 2026-08-03 00:08@@ -4,7 +4,7 @@ # For AUR publishing the source line points at the GitHub release tag. pkgname=vortex-v2-pkgver=1.0.2+pkgver=1.0.3 pkgrel=1 pkgdesc="System updater and tuner suite for CachyOS (updates, sched-ext, snapshots, cleaner)" arch=('x86_64')@@ -24,7 +24,7 @@ 'flatpak: flatpak management in Packages' ) source=("$pkgname-$pkgver.tar.gz::https://github.com/Doodcom/vortex-v2/archive/refs/tags/v$pkgver.tar.gz")-sha256sums=('9d28109857c6a2afa9b8625a3c8dabb32db1e8d95ae164b29972b01bd65029d9')+sha256sums=('febd14a543f7611d2910b3da501529a193a5cca34757c42b3812d38b945fd7a2') build() { cd "$srcdir/$pkgname-$pkgver"Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | LOW | 2 |
| 2026-08-02 00:16:08 | LOW | 3 |
| 2026-08-01 00:11:18 | LOW | 3 |
| 2026-07-31 00:14:10 | LOW | 3 |
| 2026-07-30 00:17:23 | LOW | 3 |
| 2026-07-29 00:25:53 | LOW | 3 |
| 2026-07-28 00:07:28 | LOW | 3 |
| 2026-07-27 00:24:32 | LOW | 3 |
| 2026-07-26 00:07:32 | LOW | 3 |
| 2026-07-25 00:13:44 | LOW | 3 |
| 2026-07-24 00:02:28 | LOW | 3 |
| 2026-07-23 21:26:05 | MEDIUM | 2 |
| 2026-07-23 00:14:47 | LOW | 3 |
| 2026-07-22 00:29:32 | LOW | 3 |
| 2026-07-21 00:24:15 | LOW | 3 |
| 2026-07-20 00:19:49 | LOW | 3 |
| 2026-07-19 21:12:02 | MEDIUM | 2 |
| 2026-07-19 19:14:27 | LOW | 3 |
| 2026-07-19 19:12:02 | MEDIUM | 2 |
| 2026-07-19 17:14:58 | LOW | 3 |