rokast-git
The package builds from a public git repository and includes a wpa_supplicant source tarball from a known project's official host; the non-whitelisted URL is for a legitimate build dependency, and no untrusted executables are downloaded or executed.
Triggered rules
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
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 package builds from a public git repository and includes a wpa_supplicant source tarball from a known project's official host; the non-whitelisted URL is for a legitimate build dependency, and no untrusted executables are downloaded or executed.
1 higher static finding superseded - not the current verdict (shown for transparency)
source_untrusted_domain
One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).
-
PKGBUILD:23
'https://w1.fi/releases/wpa_supplicant-2.11.tar.gz')
PKGBUILD
1 offending line(s) highlighted# Maintainer: papacasper <chj1axr0 at gmail dot com>
# Source of truth: https://github.com/papacasper/rokast/tree/main/packaging/aur (playbooks/release.md, "AUR").
pkgname=rokast-git
pkgver=0.8.1.r0.ge148716
pkgrel=1
pkgdesc='Mirror your Linux screen to a Roku TV over native Miracast, with nothing installed on the TV (git main)'
arch=(x86_64)
options=(!lto) # makepkg's LTO builds ring's C code as GCC bitcode, which rustc's linker (lld) cannot read
url='https://github.com/papacasper/rokast'
license=(MIT)
# ffmpeg iw dhcpcd wpa_supplicant(wpa_cli) sudo openssh(ssh-keygen) are run as commands, so namcap calls them "may not be needed": they are.
depends=(ffmpeg iw dhcpcd wpa_supplicant sudo openssh libnl openssl gtk4 glib2 libgcc glibc hicolor-icon-theme)
makedepends=(cargo git)
optdepends=('xorg-xrandr: mirror one monitor on X11 instead of the whole X screen'
'libpulse: send audio (pactl finds the audio output to capture)'
'gstreamer: Wayland capture'
'gst-plugins-base: Wayland capture'
'gst-plugin-pipewire: Wayland capture'
'xdg-desktop-portal: Wayland capture')
provides=(rokast)
conflicts=(rokast)
source=('rokast::git+https://github.com/papacasper/rokast.git'
'https://w1.fi/releases/wpa_supplicant-2.11.tar.gz')
sha256sums=('SKIP'
'912ea06f74e30a8e36fbb68064d6cdff218d8d591db0fc5d75dee6c81ac7fc0a')
pkgver() {
cd rokast
git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
cd rokast
export RUSTUP_TOOLCHAIN=stable
cargo fetch --locked --manifest-path ui/Cargo.toml --target "$(rustc -vV | sed -n 's/host: //p')"
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
}
build() {
cd rokast
export RUSTUP_TOOLCHAIN=stable CARGO_TARGET_DIR=ui/target
cargo build --frozen --release --manifest-path ui/Cargo.toml
CARGO_TARGET_DIR=target cargo build --frozen --release -p rokast
ROKAST_HOSTAP_SRC="$srcdir/wpa_supplicant-2.11" ROKAST_SUPPLICANT_DIR="$srcdir/supplicant" scripts/build-supplicant
}
check() {
cd rokast
export RUSTUP_TOOLCHAIN=stable
CARGO_TARGET_DIR=target cargo test --frozen --release --workspace
CARGO_TARGET_DIR=ui/target cargo test --frozen --release --manifest-path ui/Cargo.toml
}
package() {
cd rokast
packaging/stage "$pkgdir" "$srcdir/supplicant"
mv "$pkgdir/usr/share/licenses/rokast" "$pkgdir/usr/share/licenses/$pkgname" # namcap wants it under $pkgname
}
Changes since previous scan
--- PKGBUILD @ 2026-10-15 00:28+++ PKGBUILD @ 2026-10-17 00:21@@ -1,7 +1,7 @@ # Maintainer: papacasper <chj1axr0 at gmail dot com> # Source of truth: https://github.com/papacasper/rokast/tree/main/packaging/aur (playbooks/release.md, "AUR"). pkgname=rokast-git-pkgver=0.7.0.r0.gbaa7232+pkgver=0.8.1.r0.ge148716 pkgrel=1 pkgdesc='Mirror your Linux screen to a Roku TV over native Miracast, with nothing installed on the TV (git main)' arch=(x86_64)Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-17 00:21:55 | Low | 3 |
| 2026-10-16 00:12:47 | Low | 3 |
| 2026-10-15 03:10:23 | Medium | 2 |
| 2026-10-15 00:28:05 | Low | 3 |
| 2026-10-14 03:18:50 | Medium | 2 |
| 2026-10-14 01:22:29 | Low | 3 |
| 2026-10-14 01:18:27 | Medium | 2 |