eden-preview-bin
The package downloads a prebuilt AppImage from a non-standard host (git.eden-emu.dev), which is not on the standard whitelist; while the host appears project-related, the AppImage is an unverifiable executable that could be tampered with if the release infrastructure were compromised.
Triggered rules
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:16
source_x86_64=("${_appimage}::https://git.eden-emu.dev/eden-emu/eden/releases/download/${_upstreamver}/${_pkgname}-Linux-${_upstreamver}-amd64-gcc-standard.AppImage")
llm_review
An AI model (qwen/qwen3-235b-a22b-07-25) reviewed this and agrees it is MEDIUM (confidence 90%): The package downloads a prebuilt AppImage from a non-standard host (git.eden-emu.dev), which is not on the standard whitelist; while the host appears project-related, the AppImage is an unverifiable executable that could be tampered with if the release infrastructure were compromised.
PKGBUILD
1 offending line(s) highlighted# Based off of: https://daveparrish.net/posts/2019-11-16-Better-AppImage-PKGBUILD-template.html
# Maintainer: ZachAR3 <Zach4R3@gmail.com>
_pkgname=Eden
pkgname="eden-preview-bin"
pkgver=0.2.1
_upstreamver=v0.2.1 # private var used for download URL since "-" isn't valid in pkgver
pkgrel=1
pkgdesc="The Eden Nintendo Switch emulator AppImage for preview builds such as release candiates using the amd64-gcc-standard version."
arch=('x86_64')
url="https://git.eden-emu.dev/eden-emu/eden"
license=('GPL3')
depends=('zlib' 'hicolor-icon-theme')
options=(!strip)
_appimage="${_pkgname}-Linux-${pkgver}-amd64.AppImage"
source_x86_64=("${_appimage}::https://git.eden-emu.dev/eden-emu/eden/releases/download/${_upstreamver}/${_pkgname}-Linux-${_upstreamver}-amd64-gcc-standard.AppImage")
sha256sums_x86_64=("2fae658397daf13c118082a3eb65d61a6519967b5e22e6667756baecf6000c5a")
prepare() {
chmod +x "${_appimage}"
./"${_appimage}" --appimage-extract
}
# Fix .desktop file executable and icon
build() {
sed -i \
-e "s|^Exec=.*|Exec=/usr/bin/eden-preview|" \
-e "s|^Icon=.*|Icon=eden-preview|" \
-e "s|^TryExec=.*|TryExec=eden-preview|" \
-e "s|^Name=.*|Name=Eden Preview|" \
"squashfs-root/dev.eden_emu.eden.desktop"
}
package() {
# Create the MIME type XML file (for file associations)
cat > eden-preview.xml << EOF
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="application/x-nx-nro">
<comment>Nintendo Switch NRO Executable</comment>
<glob pattern="*.nro"/>
</mime-type>
<mime-type type="application/x-nx-nso">
<comment>Nintendo Switch NSO Executable</comment>
<glob pattern="*.nso"/>
</mime-type>
<mime-type type="application/x-nx-nsp">
<comment>Nintendo Switch NSP Package</comment>
<glob pattern="*.nsp"/>
</mime-type>
<mime-type type="application/x-nx-xci">
<comment>Nintendo Switch XCI Cartridge Image</comment>
<glob pattern="*.xci"/>
</mime-type>
</mime-info>
EOF
install -Dm644 eden-preview.xml "${pkgdir}/usr/share/mime/packages/eden-preview.xml"
install -Dm755 "${_appimage}" "${pkgdir}/opt/${pkgname}/${pkgname}.AppImage"
install -Dm644 "squashfs-root/dev.eden_emu.eden.desktop" \
"${pkgdir}/usr/share/applications/eden-preview.desktop"
# copy icon
install -Dm644 "squashfs-root/dev.eden_emu.eden.svg" \
"${pkgdir}/usr/share/icons/hicolor/scalable/apps/eden-preview.svg"
install -dm755 "${pkgdir}/usr/bin"
ln -s "/opt/${pkgname}/${pkgname}.AppImage" "${pkgdir}/usr/bin/eden-preview"
}
# Update mime database for file associations
post_install() {
update-mime-database /usr/share/mime || true
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Medium | 2 |
| 2026-09-16 00:03:17 | Medium | 2 |
| 2026-09-15 00:25:31 | Medium | 2 |
| 2026-09-14 00:27:57 | Medium | 2 |
| 2026-09-13 00:19:54 | Medium | 2 |
| 2026-09-12 00:25:17 | Medium | 2 |
| 2026-09-11 00:19:22 | Medium | 2 |
| 2026-09-10 00:22:44 | Medium | 2 |
| 2026-09-09 00:04:09 | Medium | 2 |
| 2026-09-08 00:18:08 | Medium | 2 |
| 2026-09-07 00:30:15 | Medium | 2 |
| 2026-09-06 00:17:06 | Medium | 2 |
| 2026-09-05 00:16:27 | Medium | 2 |
| 2026-09-04 00:03:13 | Medium | 2 |
| 2026-09-03 00:15:47 | Medium | 2 |
| 2026-09-02 00:02:31 | Medium | 2 |
| 2026-09-01 00:11:19 | Medium | 2 |
| 2026-08-31 00:19:57 | Medium | 2 |
| 2026-08-30 00:04:14 | Medium | 2 |
| 2026-08-29 00:29:17 | Medium | 2 |