curseforge-appimage

maintainer txtsd · 3 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The package downloads a prebuilt AppImage from Overwolf's official domain, which is the legitimate distributor of CurseForge; while the host is not a standard open-source forge, it is the project's official vendor, making the source appropriate despite the non-whitelisted host.

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-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads a prebuilt AppImage from Overwolf's official domain, which is the legitimate distributor of CurseForge; while the host is not a standard open-source forge, it is the project's official vendor, making the source appropriate despite the non-whitelisted host.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM source=() URL on a non-standard host 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:24 "CurseForge-${pkgver/_/-}.AppImage::https://curseforge.overwolf.com/electron/linux/CurseForge-${pkgver/_/-}.AppImage"

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: txtsd <aur.archlinux@ihavea.quest>
2# Contributor: Csubee <csubee@csubee.hu>
3# Contributor: Neptune <neptune650@proton.me>
4# Contributor: Polarian <polarian@polarian.dev>
5# Contributor: Saghm Rossi <aur@saghm.com>
6
7pkgname=curseforge-appimage
8pkgver=1.312.1_36055
9pkgrel=1
10pkgdesc="CurseForge desktop client for Linux (AppImage)"
11arch=('x86_64')
12depends=(
13 fuse2
14 glibc
15 hicolor-icon-theme
16 zlib
17)
18url="https://curseforge.com"
19license=('LicenseRef-overwolf' 'MIT' 'LicenseRef-chromium-licenses')
20provides=(curseforge)
21conflicts=(curseforge)
22options=(!strip !debug)
23source=(
24 "CurseForge-${pkgver/_/-}.AppImage::https://curseforge.overwolf.com/electron/linux/CurseForge-${pkgver/_/-}.AppImage"
25 'LICENSE'
26)
27sha256sums=('d28dcbda1cb67759ee5e4b511256371a702323ce6ddea3adb7dfde5c2a0635c9'
28 '135c7ffeb81f4a7ee95a5879651b679e0d1ef9d13c7aa7c262386ad97b48d62f')
29
30prepare() {
31 # mv CurseForge-*.AppImage CurseForge.AppImage
32 chmod +x "CurseForge-${pkgver/_/-}.AppImage"
33 ./CurseForge-${pkgver/_/-}.AppImage --appimage-extract > /dev/null
34 sed -i 's/Exec=.*/Exec=\/usr\/bin\/curseforge %U/' squashfs-root/curseforge.desktop
35}
36
37package() {
38 install -Dm755 "CurseForge-${pkgver/_/-}.AppImage" "${pkgdir}/opt/${pkgname}/CurseForge-${pkgver/_/-}.AppImage"
39
40 install -dm755 "${pkgdir}/usr/bin"
41 ln -s "/opt/${pkgname}/CurseForge-${pkgver/_/-}.AppImage" "${pkgdir}/usr/bin/curseforge"
42
43 install -dm755 "${pkgdir}/usr/share/icons"
44 cp -r --no-preserve=mode,ownership "squashfs-root/usr/share/icons" "${pkgdir}/usr/share"
45
46 install -Dm644 "squashfs-root/curseforge.desktop" -t "${pkgdir}/usr/share/applications"
47
48 install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/CURSEFORGE-LICENSE"
49 install -Dm644 "squashfs-root/LICENSE.electron.txt" -t "${pkgdir}/usr/share/licenses/${pkgname}"
50 install -Dm644 "squashfs-root/LICENSES.chromium.html" -t "${pkgdir}/usr/share/licenses/${pkgname}"
51
52}
53

Scan history

Scanned at (UTC)SeverityRules
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 00:25:53 LOW 2
2026-07-28 00:07:28 LOW 2
2026-07-27 00:24:32 LOW 2
2026-07-26 00:07:32 LOW 2
2026-07-25 00:13:44 LOW 2
2026-07-24 00:02:28 LOW 2
2026-07-23 00:14:47 LOW 2
2026-07-22 00:29:32 LOW 2
2026-07-21 00:24:15 LOW 2
2026-07-20 00:19:49 LOW 2
2026-07-19 00:17:08 LOW 2
2026-07-18 00:14:48 LOW 2
2026-07-17 00:06:16 LOW 2
2026-07-16 00:05:41 LOW 2
2026-07-15 00:09:25 LOW 2

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion