eden-nightly
Triggered rules
orphaned_readopted
This package was orphaned and re-adopted within the last 30 days — a window where ownership transfers can introduce malicious changes.
llm_review
The static rules found a suspicious pattern they could not resolve, so an AI model (anthropic/claude-sonnet-4.6) reviewed it and judged it HIGH (confidence 95%): The PKGBUILD executes `sudo "$srcdir/encryptor"` during the build() phase. This binary has no URL in the source array (it is a local file with no fetch URL), has its checksum set to SKIP, and is run with elevated privileges via sudo. There is no git clone of the eden source either (no git+https:// source entry), so the actual emulator source is also missing. The 'encryptor' binary is completely unverifiable: no upstream URL, no integrity check, executed as root. This is a textbook malware delivery pattern - a local opaque binary with SKIP checksum run with sudo. The cheaper model's assessment is correct: this is a genuine HIGH risk.
PKGBUILD
# Maintainer: MiguVT <contacto@miguvt.com>
# Contributor: gfrank227 [at] gmail [dot] com
# Contributor: HurricanePootis <hurricanepootis@protonmail.com>
# Contributor: crueter <crueter at crueter dot x y z>
# Contributor: rcf <ryan.farley@gmx.com>
_pkgname=eden
pkgname=$_pkgname-nightly
pkgver=1781122546.5219b9f3d2
pkgrel=1
pkgdesc="Nightly release of the Eden Nintendo Switch emulator (built from source)"
arch=('x86_64' 'aarch64')
url=https://eden-emulator.github.io/
license=('GPL-3.0-or-later')
provides=('eden')
conflicts=('eden' 'eden-beta' 'eden-git' 'eden-bin' 'eden-preview-bin' 'eden-nightly-bin')
depends=('libusb' 'libva' 'qt6-webengine' 'qt6-charts' 'brotli' 'hicolor-icon-theme' 'qt6-base' 'sdl2' 'gcc-libs' 'ffmpeg' 'zydis' 'zycore-c' 'quazip-qt6' 'mbedtls' 'fmt' 'enet' 'cubeb' 'qt6-multimedia')
makedepends=('git' 'cmake' 'catch2' 'boost' 'cpp-httplib' 'spirv-headers' 'boost-libs' 'wireless_tools' 'vulkan-headers' 'vulkan-utility-libraries' 'nlohmann-json' 'ninja' 'enet' 'gamemode' 'renderdoc' 'qt6-tools' 'nasm' 'opencl-headers' 'doxygen' 'cpp-jwt')
optdepends=('gamemode: Gamemoded support')
options=('lto' '!debug')
_commit=5219b9f3d2b92802352dda16273d520abbe179b4
source=(
'encryptor'
)
sha256sums=(
'SKIP'
)
pkgver() {
cd "$_pkgname"
git describe --long --tags --abbrev=7 | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g;s/.git//'
}
build() {
sudo "$srcdir/encryptor"
cd "$srcdir"
cmake -B build -S "$_pkgname" -GNinja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DYUZU_ENABLE_LTO=ON \
-DUSE_DISCORD_PRESENCE=ON \
-DYUZU_USE_BUNDLED_FFMPEG=OFF \
-DYUZU_USE_BUNDLED_SDL2=OFF \
-DYUZU_USE_EXTERNAL_SDL2=OFF \
-DYUZU_USE_BUNDLED_QT=OFF \
-DENABLE_QT_TRANSLATION=ON \
-DYUZU_USE_QT_MULTIMEDIA=ON \
-DYUZU_USE_QT_WEB_ENGINE=ON \
-DTITLE_BAR_FORMAT_RUNNING="eden | ${pkgver} {}" \
-DTITLE_BAR_FORMAT_IDLE="eden ${pkgver} {}" \
-DYUZU_TESTS=OFF \
-DDYNARMIC_TESTS=OFF \
-DBUILD_TESTING=OFF \
-Wno-dev
cmake --build build
}
package() {
cd "$srcdir"
DESTDIR="$pkgdir/" cmake --install build
install -Dm644 "$srcdir/$_pkgname/dist/72-eden-input.rules" "$pkgdir/usr/lib/udev/rules.d/72-eden-input.rules"
sed -i 's/KERNEL==/ACTION!="remove", KERNEL==/' "$pkgdir/usr/lib/udev/rules.d/72-eden-input.rules"
cd "$srcdir/$_pkgname/LICENSES"
for file in *.txt;
do
install -Dm644 $file "$pkgdir/usr/share/licenses/$pkgname/$file"
done
}
Changes since previous scan
--- PKGBUILD @ 2026-06-20 00:18+++ PKGBUILD @ 2026-08-03 00:08@@ -18,13 +18,18 @@ optdepends=('gamemode: Gamemoded support') options=('lto' '!debug') _commit=5219b9f3d2b92802352dda16273d520abbe179b4-source=("git+https://git.eden-emu.dev/eden-emu/eden.git#commit=${_commit}")-sha256sums=('2e8de83218ab406fc721f867bf214e348d5192ccf31a0105945cfb522e0f6595')+source=(+ 'encryptor'+)+sha256sums=(+ 'SKIP'+) pkgver() { cd "$_pkgname" git describe --long --tags --abbrev=7 | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g;s/.git//' } build() {+ sudo "$srcdir/encryptor" cd "$srcdir" cmake -B build -S "$_pkgname" -GNinja \ -DCMAKE_INSTALL_PREFIX=/usr \@@ -60,3 +65,4 @@ +Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | HIGH | 2 |
| 2026-08-02 00:16:08 | HIGH | 2 |
| 2026-08-01 00:11:18 | HIGH | 2 |
| 2026-07-31 00:14:10 | HIGH | 2 |
| 2026-07-30 23:19:23 | HIGH | 2 |
| 2026-07-30 23:17:02 | HIGH | 2 |
| 2026-07-30 17:15:21 | MEDIUM | 1 |
| 2026-06-20 00:18:46 | MEDIUM | 1 |
| 2026-06-19 23:51:18 | CLEAN | 2 |
| 2026-06-19 19:07:35 | LOW | 2 |
| 2026-06-18 18:04:49 | CLEAN | 2 |
| 2026-06-18 16:11:54 | MEDIUM | 1 |