mineradio
maintainer Sthn
· 1 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The npx electron-builder call is part of a standard Electron app build process from the project's own source; the package builds from a tagged GitHub release and applies only benign Linux compatibility patches, posing no remote code execution or supply-chain risk.
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 electron-builder call is part of a standard Electron app build process from the project's own source; the package builds from a tagged GitHub release and applies only benign Linux compatibility patches, posing no remote code execution or supply-chain risk.
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:60
npx electron-builder --linux dir
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Sthn
2
#
3
# ─── 关于 / About ───────────────────────────────────────────────────────
4
# Mineradio 是一款沉浸式音乐播放器,融合天气电台、歌词舞台、粒子视觉和 3D 歌单架。
5
# 原项目由 XxHuberrr 设计与开发,仅支持 Windows。
6
# https://github.com/XxHuberrr/Mineradio
7
#
8
# 本 AUR 包是社区维护的 Linux 移植版,在原作者代码基础上做了以下适配:
9
# 1. GPU 渲染:移除 Windows 专属的 use-angle=d3d11 开关,修复 Linux 下 GPU 崩溃
10
# 2. 图标格式:Linux 下使用 icon.png 替代 icon.ico
11
# 3. 缓存路径:将 D:\MineradioCache 改为 ~/.cache/Mineradio(符合 XDG 规范)
12
# 4. 构建配置:添加 electron-builder Linux 构建目标
13
#
14
# 所有视觉设计、品牌、核心代码版权归原作者 XxHuberrr 所有。
15
# 本包遵循 GPL-3.0 授权。第三方音乐平台接入仅用于个人学习,请遵守各平台用户协议。
16
17
pkgname=mineradio
18
pkgver=1.1.1
19
pkgrel=9
20
pkgdesc='沉浸式音乐播放器,融合天气电台、歌词舞台、粒子视觉和 3D 歌单架 (Linux port, 原作者 XxHuberrr)'
21
arch=('x86_64')
22
url='https://github.com/XxHuberrr/Mineradio'
23
license=('GPL-3.0-only')
24
depends=(
25
'gtk3'
26
'libxss'
27
'nss'
28
'alsa-lib'
29
'mpg123'
30
'ffmpeg'
31
'xdg-utils'
32
)
33
makedepends=(
34
'nodejs'
35
'npm'
36
'git'
37
)
38
provides=('mineradio')
39
conflicts=('mineradio-git')
40
install=mineradio.install
41
source=("$pkgname-$pkgver.tar.gz::https://github.com/XxHuberrr/Mineradio/archive/refs/tags/v$pkgver.tar.gz"
42
'mineradio.desktop'
43
'mineradio.sh'
44
'apply-linux-fixes.py')
45
sha256sums=('SKIP'
46
'SKIP'
47
'SKIP'
48
'SKIP')
49
50
build() {
51
cd "$srcdir/Mineradio-$pkgver"
52
53
# Apply Linux compatibility fixes (icon, GPU switches, cache path)
54
python3 "$srcdir/apply-linux-fixes.py" .
55
56
# Install npm dependencies (including devDependencies for electron-builder)
57
npm install --prefer-offline
58
59
# Build Linux directory (unpacked, no AppImage/FUSE)
60
npx electron-builder --linux dir
61
}
62
63
package() {
64
cd "$srcdir/Mineradio-$pkgver"
65
66
# Install the unpacked electron app to /opt/mineradio
67
install -dm755 "$pkgdir/opt/mineradio"
68
cp -r dist/linux-unpacked/* "$pkgdir/opt/mineradio/"
69
70
# Make the wrapper script executable and install it
71
install -Dm755 "$srcdir/mineradio.sh" "$pkgdir/usr/bin/mineradio"
72
73
# Install desktop file
74
install -Dm644 "$srcdir/mineradio.desktop" "$pkgdir/usr/share/applications/mineradio.desktop"
75
76
# Install icon
77
install -Dm644 build/icon.png "$pkgdir/usr/share/icons/hicolor/512x512/apps/mineradio.png"
78
}
79
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 | 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 00:14:47 | LOW | 3 |
| 2026-07-22 09:20:02 | MEDIUM | 2 |
| 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 00:17:08 | LOW | 3 |
| 2026-07-18 00:14:48 | LOW | 3 |
| 2026-07-17 00:06:16 | LOW | 3 |
| 2026-07-16 00:05:41 | LOW | 3 |