voltius-git
maintainer ezhkov
· 1 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The npm install in prepare() is for pnpm, a build tool required to build the project's own source, not an undeclared external dependency; the package builds from the project's official git repository and the installed tool is used locally for the build process.
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 npm install in prepare() is for pnpm, a build tool required to build the project's own source, not an undeclared external dependency; the package builds from the project's official git repository and the installed tool is used locally for the build process.
1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM
npm/yarn/pnpm install of an undeclared external package
npm_install_external
Runs `npm/yarn/pnpm install <package>` for a package not in source=(), pulling unpinned, unreviewed code at build time. Severity downgraded: the package declares/looks like a Node.js consumer, where build-time installs are expected.
-
PKGBUILD:30
npm install -g pnpm@10.34.5 --prefix "$srcdir/npm-global"
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: ezhkov <alexcez94@gmail.com>
2
pkgname=voltius-git
3
_pkgname=voltius
4
pkgver=0.12.0.r0.gbbb4d7d9
5
pkgrel=1
6
pkgdesc="Local-first SSH/SFTP/Serial client with E2EE sync, plugins, and no account required (main branch)"
7
arch=('x86_64' 'aarch64')
8
url="https://github.com/VoltiusApp/voltius"
9
license=('AGPL3')
10
provides=('voltius')
11
conflicts=('voltius')
12
depends=('webkit2gtk-4.1' 'gtk3' 'libappindicator-gtk3' 'librsvg' 'libsecret' 'hicolor-icon-theme')
13
makedepends=('rust' 'nodejs' 'npm' 'git' 'appmenu-gtk-module' 'desktop-file-utils')
14
options=('!lto')
15
source=("$_pkgname::git+https://github.com/VoltiusApp/voltius.git"
16
"$_pkgname.desktop")
17
sha256sums=('SKIP'
18
'SKIP')
19
20
pkgver() {
21
cd "$_pkgname"
22
git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
23
}
24
25
prepare() {
26
cd "$_pkgname"
27
# pnpm isn't in the official repos; install it into a local, writable
28
# prefix rather than relying on `corepack enable` (which tries to write
29
# shims next to the system-wide nodejs install under /usr).
30
npm install -g pnpm@10.34.5 --prefix "$srcdir/npm-global"
31
}
32
33
build() {
34
cd "$_pkgname"
35
export PATH="$srcdir/npm-global/bin:$PATH"
36
export TAURI_SIGNING_PRIVATE_KEY="aur-build-dummy-key"
37
export TAURI_SIGNING_PRIVATE_KEY_PASSWORD="aur-build-dummy-pass"
38
export NODE_ENV=production
39
pnpm install --frozen-lockfile
40
pnpm tauri build --no-bundle
41
}
42
43
package() {
44
cd "$_pkgname"
45
46
install -Dm755 target/release/voltius "$pkgdir/usr/bin/voltius"
47
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
48
49
install -Dm644 "$srcdir/$_pkgname.desktop" "$pkgdir/usr/share/applications/$_pkgname.desktop"
50
51
install -Dm644 src-tauri/icons/32x32.png \
52
"$pkgdir/usr/share/icons/hicolor/32x32/apps/$_pkgname.png"
53
install -Dm644 src-tauri/icons/128x128.png \
54
"$pkgdir/usr/share/icons/hicolor/128x128/apps/$_pkgname.png"
55
install -Dm644 src-tauri/icons/128x128@2x.png \
56
"$pkgdir/usr/share/icons/hicolor/256x256/apps/$_pkgname.png"
57
}
58
Changes since previous scan
--- PKGBUILD @ 2026-07-29 00:25+++ PKGBUILD @ 2026-08-03 00:08@@ -1,7 +1,7 @@ # Maintainer: ezhkov <alexcez94@gmail.com> pkgname=voltius-git _pkgname=voltius-pkgver=0.10.0.r0.gf62b52aa+pkgver=0.12.0.r0.gbbb4d7d9 pkgrel=1 pkgdesc="Local-first SSH/SFTP/Serial client with E2EE sync, plugins, and no account required (main branch)" arch=('x86_64' 'aarch64')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 19:12:33 | MEDIUM | 1 |
| 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 21:22:00 | 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 23:12:22 | MEDIUM | 2 |
| 2026-07-19 00:17:08 | LOW | 3 |
| 2026-07-18 00:14:48 | LOW | 3 |