kaze
The package grants elevated privileges or installs an update path outside pacman: a /etc/sudoers.d rule (often passwordless), a setuid/setgid binary, or a self-update script/service that can fetch and run future code with no checksum verification. The initial install may be verified, but the ongoing privilege + update surface is a real supply-chain / privilege-escalation risk.
Triggered rules
privileged_install
The package grants elevated privileges or installs an update path outside pacman: a /etc/sudoers.d rule (often passwordless), a setuid/setgid binary, or a self-update script/service that can fetch and run future code with no checksum verification. The initial install may be verified, but the ongoing privilege + update surface is a real supply-chain / privilege-escalation risk.
-
PKGBUILD:57
if ! rustup toolchain install stable --profile minimal --no-self-update; then
PKGBUILD
1 offending line(s) highlighted# shellcheck shell=bash
# makepkg reads the annotated metadata variables after sourcing this recipe.
# Maintainer: Music Player Contributors <https://github.com/selfAnnihilator/kaze>
pkgname=kaze
pkgver=2.0.4
# shellcheck disable=SC2034
pkgrel=1
# shellcheck disable=SC2034
pkgdesc="A calm, intelligent local music player"
# shellcheck disable=SC2034
arch=('x86_64')
url="https://github.com/selfAnnihilator/kaze"
# shellcheck disable=SC2034
license=('MIT' 'Apache-2.0')
# shellcheck disable=SC2034
depends=(
'webkit2gtk-4.1'
'gtk3'
'libsoup3'
'alsa-lib'
'openssl'
'sqlite'
'hicolor-icon-theme'
)
# shellcheck disable=SC2034
makedepends=(
# Select the concrete compiler/Cargo package on fresh systems. Existing
# Arch rustup installations also provide rust; see INSTALL.md for setup.
'rust'
'nodejs'
'npm'
)
# shellcheck disable=SC2034
options=(!lto)
# shellcheck disable=SC2034
source=(
"$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz"
"kaze.desktop"
)
# shellcheck disable=SC2034
sha256sums=(
'a35c0c8681ec937128ca5e4ec948822e176f6dfb2093f3311d2bd65f32bc9ca1'
'eaf39dc7d4a05cefeb1543018e5a2ae84148343e3b5a8de50ba365087d43dd0c'
)
_ensure_rust_toolchain() {
if cargo --version >/dev/null 2>&1 && rustc --version >/dev/null 2>&1; then
return 0
fi
# Arch's rustup provides rust even when no toolchain is configured.
# Select stable for this build without changing the user's default/overrides.
if command -v rustup >/dev/null 2>&1; then
export RUSTUP_TOOLCHAIN=stable
if ! cargo --version >/dev/null 2>&1 || ! rustc --version >/dev/null 2>&1; then
msg "Installing the stable Rust toolchain needed to build Kaze..."
if ! rustup toolchain install stable --profile minimal --no-self-update; then
error "Could not install stable Rust. Check the download error above and retry."
return 1
fi
fi
fi
if ! cargo --version >/dev/null 2>&1 || ! rustc --version >/dev/null 2>&1; then
error "Kaze needs a working Rust toolchain (Cargo and rustc)."
error "Fresh Arch installation: install rust with 'sudo pacman -Syu --needed rust'."
error "Already using rustup: run 'rustup default stable', then retry."
error "See INSTALL.md for Cargo provider selection and troubleshooting."
return 1
fi
}
prepare() {
_ensure_rust_toolchain || return 1
}
build() {
# makepkg may run build in a different shell from prepare (also with --noextract).
_ensure_rust_toolchain || return 1
cd "$pkgname-$pkgver" || return 1
npm ci
npm run build
cargo build --release --locked --features tauri/custom-protocol
}
package() {
cd "$pkgname-$pkgver" || return 1
local bin_dir="target/release"
if [ ! -f "$bin_dir/kaze" ]; then
bin_dir="src-tauri/target/release"
fi
# makepkg supplies pkgdir and srcdir to package().
# shellcheck disable=SC2154
install -Dm755 "$bin_dir/kaze" "$pkgdir/usr/bin/kaze"
install -Dm755 "$bin_dir/music-player-cli" "$pkgdir/usr/bin/music-player-cli"
# shellcheck disable=SC2154
install -Dm644 "$srcdir/kaze.desktop" "$pkgdir/usr/share/applications/kaze.desktop"
install -Dm644 src-tauri/icons/32x32.png "$pkgdir/usr/share/icons/hicolor/32x32/apps/kaze.png"
install -Dm644 src-tauri/icons/128x128.png "$pkgdir/usr/share/icons/hicolor/128x128/apps/kaze.png"
install -Dm644 src-tauri/icons/256x256.png "$pkgdir/usr/share/icons/hicolor/256x256/apps/kaze.png"
install -Dm644 src-tauri/icons/512x512.png "$pkgdir/usr/share/icons/hicolor/512x512/apps/kaze.png"
}
Changes since previous scan
--- PKGBUILD @ 2026-11-02 00:26+++ PKGBUILD @ 2026-11-02 08:02@@ -1,11 +1,18 @@+# shellcheck shell=bash+# makepkg reads the annotated metadata variables after sourcing this recipe. # Maintainer: Music Player Contributors <https://github.com/selfAnnihilator/kaze> pkgname=kaze-pkgver=2.0.2-pkgrel=2+pkgver=2.0.4+# shellcheck disable=SC2034+pkgrel=1+# shellcheck disable=SC2034 pkgdesc="A calm, intelligent local music player"+# shellcheck disable=SC2034 arch=('x86_64') url="https://github.com/selfAnnihilator/kaze"+# shellcheck disable=SC2034 license=('MIT' 'Apache-2.0')+# shellcheck disable=SC2034 depends=( 'webkit2gtk-4.1' 'gtk3'@@ -15,6 +22,7 @@ 'sqlite' 'hicolor-icon-theme' )+# shellcheck disable=SC2034 makedepends=( # Select the concrete compiler/Cargo package on fresh systems. Existing # Arch rustup installations also provide rust; see INSTALL.md for setup.@@ -22,13 +30,16 @@ 'nodejs' 'npm' )+# shellcheck disable=SC2034 options=(!lto)+# shellcheck disable=SC2034 source=( "$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz" "kaze.desktop" )+# shellcheck disable=SC2034 sha256sums=(- '3bd67cded1216ebd18a7da712e39cb347beaa2787134050089d618391a694ae1'+ 'a35c0c8681ec937128ca5e4ec948822e176f6dfb2093f3311d2bd65f32bc9ca1' 'eaf39dc7d4a05cefeb1543018e5a2ae84148343e3b5a8de50ba365087d43dd0c' ) @@ -66,22 +77,25 @@ build() { # makepkg may run build in a different shell from prepare (also with --noextract). _ensure_rust_toolchain || return 1- cd "$pkgname-$pkgver"+ cd "$pkgname-$pkgver" || return 1 npm ci npm run build cargo build --release --locked --features tauri/custom-protocol } package() {- cd "$pkgname-$pkgver"+ cd "$pkgname-$pkgver" || return 1 local bin_dir="target/release" if [ ! -f "$bin_dir/kaze" ]; then bin_dir="src-tauri/target/release" fi + # makepkg supplies pkgdir and srcdir to package().+ # shellcheck disable=SC2154 install -Dm755 "$bin_dir/kaze" "$pkgdir/usr/bin/kaze" install -Dm755 "$bin_dir/music-player-cli" "$pkgdir/usr/bin/music-player-cli" + # shellcheck disable=SC2154 install -Dm644 "$srcdir/kaze.desktop" "$pkgdir/usr/share/applications/kaze.desktop" install -Dm644 src-tauri/icons/32x32.png "$pkgdir/usr/share/icons/hicolor/32x32/apps/kaze.png"Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-02 08:02:24 | Medium | 1 |
| 2026-11-02 00:26:00 | Low | 2 |
| 2026-11-01 00:21:48 | Low | 2 |
| 2026-10-31 00:07:41 | Low | 2 |
| 2026-10-30 07:55:24 | Medium | 1 |
| 2026-10-29 15:52:51 | Clean | 0 |
| 2026-10-28 19:50:31 | Clean | 0 |
| 2026-10-28 17:50:30 | Clean | 0 |
| 2026-10-28 15:50:30 | Clean | 0 |
| 2026-10-21 09:31:11 | Clean | 0 |
| 2026-10-20 11:27:57 | Clean | 0 |
| 2026-10-18 17:22:42 | Clean | 0 |
| 2026-10-18 09:21:55 | Clean | 0 |
| 2026-10-13 11:16:23 | Clean | 0 |
| 2026-10-12 09:12:50 | Clean | 0 |
| 2026-10-12 07:12:50 | Clean | 0 |
| 2026-10-05 23:40:58 | Clean | 0 |
| 2026-09-19 00:25:36 | Clean | 2 |
| 2026-09-18 09:28:06 | Low | 1 |