replit-desktop-app

MEDIUM
maintainer orphaned 2 votes scanned 2026-09-17 00:27:14.276658
View on AUR
Why flagged

The PKGBUILD downloads a prebuilt .deb binary from desktop.replit.com (the official Replit desktop download endpoint) and extracts it directly into the package tree. While the domain is Replit's own, the source URL is a redirect/alias ('download/deb') rather than a versioned artifact URL, meaning the sha256sum check is the only integrity guard — if the upstream host serves a different binary for the same URL in the future, the checksum would catch it only if the maintainer updates the PKGBUILD. More importantly, the package installs a prebuilt Electron application binary blob from an external host rather than building from source, which is a genuine supply-chain concern: the binary is executed at runtime and its contents are not auditable from the PKGBUILD alone. The electron dependency is used as a system runtime but the app's own asar and native modules come from the deb. This is a real medium-severity supply-chain risk (prebuilt executed binary from an external host), not a false positive, though it is not clearly malicious.

Triggered rules

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:16 replit.deb::https://desktop.replit.com/download/deb
Medium AI review llm_review

An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The PKGBUILD downloads a prebuilt .deb binary from desktop.replit.com (the official Replit desktop download endpoint) and extracts it directly into the package tree. While the domain is Replit's own, the source URL is a redirect/alias ('download/deb') rather than a versioned artifact URL, meaning the sha256sum check is the only integrity guard — if the upstream host serves a different binary for the same URL in the future, the checksum would catch it only if the maintainer updates the PKGBUILD. More importantly, the package installs a prebuilt Electron application binary blob from an external host rather than building from source, which is a genuine supply-chain concern: the binary is executed at runtime and its contents are not auditable from the PKGBUILD alone. The electron dependency is used as a system runtime but the app's own asar and native modules come from the deb. This is a real medium-severity supply-chain risk (prebuilt executed binary from an external host), not a false positive, though it is not clearly malicious.

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Kid <hi at xuann dot wang>
2
3pkgname=replit-desktop-app
4pkgver=1.0.14
5pkgrel=1
6pkgdesc='The collaborative browser based IDE'
7arch=(x86_64)
8url=https://replit.com/desktop
9license=(custom)
10depends=(
11 electron
12)
13install=.install
14
15source=(
16 replit.deb::https://desktop.replit.com/download/deb
17 replit
18)
19sha256sums=('04e2233d75a3f494bc0a3e15ec21119186c15c9f4df5bd5e5942a13d99165170'
20 '9392ee9aced0cda3a50e00bc1fe40f75830388143254cbcb42929802b835d277')
21
22package() {
23 local usr="$pkgdir/usr"
24 local lib="$usr/lib/replit"
25
26 tar xf data.tar.zst -C "$pkgdir"
27
28 find "$lib" -type f ! -name '*.asar' -exec rm {} \;
29 rm -d "$lib/locales"
30 rm -r "$usr/share/lintian"
31
32 install -D replit -t "$usr/bin"
33}
34

Scan history

Scanned at (UTC)SeverityRules
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

Report a package

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

0 / 4000
Your suggestion