cursor-nightly-bin
The package downloads prebuilt .deb binaries from the official project domain (downloads.cursor.com), which is a legitimate source for Cursor; while checksums are skipped, the host is project-owned and the binaries are not executed remotely, limiting supply-chain risk to typical AUR binary packaging concerns.
Triggered rules
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 downloads prebuilt .deb binaries from the official project domain (downloads.cursor.com), which is a legitimate source for Cursor; while checksums are skipped, the host is project-owned and the binaries are not executed remotely, limiting supply-chain risk to typical AUR binary packaging concerns.
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:33
"cursor_${_upstream_pkgver}_amd64.deb::https://downloads.cursor.com/production/${_commit}/linux/x64/deb/amd64/deb/cursor_${_upstream_pkgver}_amd64.deb"
PKGBUILD
1 offending line(s) highlighted# Maintainer: AugusDogus <augie@linux.com>
pkgname=cursor-nightly-bin
pkgver=3.21.1
_upstream_pkgver=3.21.1
pkgrel=1
pkgdesc='AI-first coding environment (nightly channel, bundled Electron)'
arch=('x86_64' 'aarch64')
url="https://www.cursor.com"
license=('LicenseRef-Cursor_EULA')
provides=('cursor')
conflicts=('cursor-bin' 'cursor-early-access-bin' 'cursor-ide-bin')
depends=(
'alsa-lib'
'dbus'
'gcc-libs'
'gtk3'
'libdrm'
'libsecret'
'libxkbfile'
'mesa'
'nss'
'xdg-utils'
)
optdepends=(
'libnotify: desktop notifications'
'org.freedesktop.secrets: credential storage via SecretService'
'libdbusmenu-glib: KDE global menu support'
)
options=(!strip !debug)
_commit=74f717017ddcbf0554cd8c91ec7e2fb56983a07f
source_x86_64=(
"cursor_${_upstream_pkgver}_amd64.deb::https://downloads.cursor.com/production/${_commit}/linux/x64/deb/amd64/deb/cursor_${_upstream_pkgver}_amd64.deb"
)
source_aarch64=(
"cursor_${_upstream_pkgver}_arm64.deb::https://downloads.cursor.com/production/${_commit}/linux/arm64/deb/arm64/deb/cursor_${_upstream_pkgver}_arm64.deb"
)
source=(
cursor.desktop
cursor-launcher.sh
)
sha512sums_x86_64=('SKIP')
sha512sums_aarch64=('SKIP')
sha512sums=(
'037aa5d878eddb06fc1d5be788e7bc64545773decacb34228053be746dfc33237371ad49cc331dac8e3437d7d885a9bc1564d0f114fc22e308827b33d0c55ad8'
'9defecd35fd033a484642732605264cc00faf5791d852234d9705bf9ac005c76173780cd496208e4150685ac9ddbb73c8eb87cd5141526dd4521d455342e8233')
sha512sums_x86_64[0]=7d544156ecc643b9bc63ecbeca6059e938896b84dd9a61e00d11ffa90608143854dce92e0a54c3a1ab9edd6e7adb48dee5ed5d454e47b72b7b022e2546d77614
sha512sums_aarch64[0]=4dcdde4d84c532ab693bdcc121cf1eac98473db0f3993e06de3db573ba65296af3c2bad13abd9c1a1c9d2719280bf00fab47a8ab1a183a4cae802c565e11449a
noextract=(
"cursor_${_upstream_pkgver}_amd64.deb"
"cursor_${_upstream_pkgver}_arm64.deb"
)
package() {
case "$CARCH" in
x86_64) _deb="cursor_${_upstream_pkgver}_amd64.deb" ;;
aarch64) _deb="cursor_${_upstream_pkgver}_arm64.deb" ;;
esac
# Extract full deb — keep bundled Electron intact.
bsdtar -xOf "$_deb" data.tar.xz |
tar -xJf - -C "$pkgdir"
# Fix zsh completion path for Arch
if [[ -d "$pkgdir/usr/share/zsh/vendor-completions" ]]; then
mv "$pkgdir/usr/share/zsh/vendor-completions" \
"$pkgdir/usr/share/zsh/site-functions"
fi
install -Dm644 "$srcdir/cursor.desktop" \
"$pkgdir/usr/share/applications/cursor.desktop"
install -Dm755 "$srcdir/cursor-launcher.sh" "$pkgdir/usr/bin/cursor"
_license="$pkgdir/usr/share/cursor/resources/app/LICENSE.txt"
if [[ ! -f "$_license" ]]; then
_license=$(find "$pkgdir/usr/share/cursor" -maxdepth 8 -type f \( -name 'LICENSE.txt' -o -name 'LICENSE' \) -print -quit 2>/dev/null)
fi
if [[ -f "$_license" ]]; then
install -Dm644 "$_license" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
else
echo "Warning: Cursor license file not found in .deb; skipping /usr/share/licenses install" >&2
fi
if [[ -f "$pkgdir/usr/share/cursor/chrome-sandbox" ]]; then
chmod 4755 "$pkgdir/usr/share/cursor/chrome-sandbox"
fi
}
Changes since previous scan
--- PKGBUILD @ 2026-09-16 00:03+++ PKGBUILD @ 2026-09-17 00:27@@ -1,8 +1,8 @@ # Maintainer: AugusDogus <augie@linux.com> pkgname=cursor-nightly-bin-pkgver=3.20.23-_upstream_pkgver=3.20.23+pkgver=3.21.1+_upstream_pkgver=3.21.1 pkgrel=1 pkgdesc='AI-first coding environment (nightly channel, bundled Electron)' arch=('x86_64' 'aarch64')@@ -28,7 +28,7 @@ 'libdbusmenu-glib: KDE global menu support' ) options=(!strip !debug)-_commit=b23e0e2d3c0fc9bb9311f4390230a120ccc9aa5b+_commit=74f717017ddcbf0554cd8c91ec7e2fb56983a07f source_x86_64=( "cursor_${_upstream_pkgver}_amd64.deb::https://downloads.cursor.com/production/${_commit}/linux/x64/deb/amd64/deb/cursor_${_upstream_pkgver}_amd64.deb" )@@ -44,8 +44,8 @@ sha512sums=( '037aa5d878eddb06fc1d5be788e7bc64545773decacb34228053be746dfc33237371ad49cc331dac8e3437d7d885a9bc1564d0f114fc22e308827b33d0c55ad8' '9defecd35fd033a484642732605264cc00faf5791d852234d9705bf9ac005c76173780cd496208e4150685ac9ddbb73c8eb87cd5141526dd4521d455342e8233')-sha512sums_x86_64[0]=6b86e1e5e56dbf545cd9943b809ded67ce54e4f1e8c3a9d0ada4c62ff8996a5642f18725a3493276026787d6d7b2f878661888671157679e58104be7fd140dc5-sha512sums_aarch64[0]=853c87b1817ecca93d39f442f2bf683e00b52890785d9fd3af1c859aa3dd7c20418cf59f5c9c7d18b1327032493c99498cd4d384a43442adcf979867f78d6c8d+sha512sums_x86_64[0]=7d544156ecc643b9bc63ecbeca6059e938896b84dd9a61e00d11ffa90608143854dce92e0a54c3a1ab9edd6e7adb48dee5ed5d454e47b72b7b022e2546d77614+sha512sums_aarch64[0]=4dcdde4d84c532ab693bdcc121cf1eac98473db0f3993e06de3db573ba65296af3c2bad13abd9c1a1c9d2719280bf00fab47a8ab1a183a4cae802c565e11449a noextract=( "cursor_${_upstream_pkgver}_amd64.deb" "cursor_${_upstream_pkgver}_arm64.deb"@@ -235,3 +235,4 @@ +Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 21:23:45 | Medium | 1 |
| 2026-09-16 05:21:26 | Medium | 1 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 05:18:46 | Medium | 1 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 23:15:25 | Medium | 1 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 07:11:01 | Medium | 1 |
| 2026-09-12 03:10:21 | Medium | 1 |
| 2026-09-12 01:24:32 | Medium | 1 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 05:22:12 | Medium | 1 |
| 2026-09-11 01:21:31 | Medium | 1 |
| 2026-09-11 00:19:22 | Medium | 2 |
| 2026-09-10 07:20:26 | Medium | 2 |
| 2026-09-10 05:20:15 | Medium | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 05:18:57 | Medium | 1 |