icloud-for-linux-git

maintainer alki · 5 votes · scanned 2026-08-03 00:08:14.047287
MEDIUM
View on AUR ↗
Why flagged The PKGBUILD pulls electron and electron-packager from npm at build time (npm install electron electron-packager) without pinning versions or providing checksums. These are large, complex packages (electron especially bundles a full Chromium build) fetched from the npm registry at whatever version npm resolves to. The resulting Electron binary is then executed via npx electron-packager to produce the final packaged application. While npm/electron are well-known packages and this is a common Electron app packaging pattern, the lack of any version pinning or integrity verification means a compromised or malicious version of either package could execute arbitrary code during the build. This is a genuine supply-chain concern: undeclared external binary dependencies fetched and executed without checksums. The source repo itself is a personal GitHub project (not an official vendor), and the sha256sums is SKIP. This is a real medium-severity supply-chain risk, not a false positive.

Triggered rules

MEDIUM npm/yarn/pnpm install of an undeclared external package npm_install_external

Runs `npm/yarn/pnpm install <package>` for a package not in source=(), pulling unpinned, unreviewed code at build time. Severity downgraded: the package declares/looks like a Node.js consumer, where build-time installs are expected.

  • PKGBUILD:26 npm install electron electron-packager
MEDIUM npx/bunx/deno executes a remote package remote_code_tool

`npx`/`bunx`/`pnpm dlx`/`deno run <url>` downloads AND runs a remote package at build time — the moral equivalent of piping a download into a shell. Severity downgraded: Node.js consumer context.

  • PKGBUILD:27 npx electron-packager . --overwrite --platform=linux --output=release-build --prune=true
MEDIUM AI review llm_review

An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 75%): The PKGBUILD pulls electron and electron-packager from npm at build time (npm install electron electron-packager) without pinning versions or providing checksums. These are large, complex packages (electron especially bundles a full Chromium build) fetched from the npm registry at whatever version npm resolves to. The resulting Electron binary is then executed via npx electron-packager to produce the final packaged application. While npm/electron are well-known packages and this is a common Electron app packaging pattern, the lack of any version pinning or integrity verification means a compromised or malicious version of either package could execute arbitrary code during the build. This is a genuine supply-chain concern: undeclared external binary dependencies fetched and executed without checksums. The source repo itself is a personal GitHub project (not an official vendor), and the sha256sums is SKIP. This is a real medium-severity supply-chain risk, not a false positive.

PKGBUILD

2 offending line(s) highlighted
1# Maintainer: Wojciech M. Wnuk <laniusone@pm.me>
2
3_pkgbase="icloud-for-linux"
4pkgname="$_pkgbase-git"
5pkgver=r38.66d3cd9
6pkgrel=1
7pkgdesc="iCloud for Linux"
8arch=("x86_64")
9url="https://github.com/wmwnuk/icloud-for-linux"
10license=("GPL")
11depends=('npm' 'nss')
12makedepends=('git')
13provides=("$_pkgbase")
14conflicts=("$_pkgbase")
15backup=()
16source=("git+https://github.com/wmwnuk/icloud-for-linux")
17sha256sums=('SKIP')
18
19pkgver() {
20 cd $_pkgbase
21 printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
22}
23
24build() {
25 cd icloud-for-linux
26 npm install electron electron-packager
27 npx electron-packager . --overwrite --platform=linux --output=release-build --prune=true
28}
29
30package() {
31 mkdir -p "$pkgdir"/usr/bin
32 mkdir -p "$pkgdir"/usr/lib/icloud-for-linux
33 mkdir -p "$pkgdir"/usr/share/applications
34 mkdir -p "$pkgdir"/usr/share/icons/hicolor/256x256/apps
35 cp icloud-for-linux/desktop/* "$pkgdir"/usr/share/applications
36 cp icloud-for-linux/icons/* "$pkgdir"/usr/share/icons/hicolor/256x256/apps
37 cp -r icloud-for-linux/icloud-for-linux-linux-x64/* "$pkgdir"/usr/lib/icloud-for-linux/
38 ln -s /usr/lib/icloud-for-linux/icloud-for-linux "$pkgdir"/usr/bin/
39}
40

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 MEDIUM 3
2026-08-02 00:16:08 MEDIUM 3
2026-08-01 00:11:18 MEDIUM 3
2026-07-31 00:14:10 MEDIUM 3
2026-07-30 00:17:23 MEDIUM 3
2026-07-29 00:25:53 MEDIUM 3
2026-07-28 00:07:28 MEDIUM 3
2026-07-27 00:24:32 MEDIUM 3
2026-07-26 00:07:32 MEDIUM 3
2026-07-25 00:13:44 MEDIUM 3
2026-07-24 00:02:28 MEDIUM 3
2026-07-23 00:14:47 MEDIUM 3
2026-07-22 00:29:32 MEDIUM 3
2026-07-21 00:24:15 MEDIUM 3
2026-07-20 00:19:49 MEDIUM 3
2026-07-19 00:17:08 MEDIUM 3
2026-07-18 00:14:48 MEDIUM 3
2026-07-17 00:06:16 MEDIUM 3
2026-07-16 00:05:41 MEDIUM 3
2026-07-15 00:09:25 MEDIUM 3

Report a package

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

0 / 4000
Your suggestion