openbazaar-git

maintainer robertfoster · 10 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The PKGBUILD pulls from the official GitHub repository of OpenBazaar (a known open-source project) and runs npm install from the standard npm registry. The 'npm install --save node-sass@5.0.0' installs a well-known, widely-used npm package (node-sass) at a pinned version from the official npm registry — this is a standard pattern for fixing build-time dependency compatibility issues. While npm installs do carry inherent supply-chain risk (no checksums on transitive deps), this is a common and accepted AUR pattern for Node.js/Electron applications. The node-sass package itself is a legitimate, popular package. There is no unofficial or personal host involved, no binary blobs from untrusted sources, and no obfuscation. The main concern is the general lack of lockfile/checksum verification for npm dependencies, which is a low-severity sloppy packaging issue rather than a genuine supply-chain attack vector.

Triggered rules

LOW AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (anthropic/claude-4.6-sonnet-20260217) reviewed the full PKGBUILD and judged it LOW (confidence 75%): The PKGBUILD pulls from the official GitHub repository of OpenBazaar (a known open-source project) and runs npm install from the standard npm registry. The 'npm install --save node-sass@5.0.0' installs a well-known, widely-used npm package (node-sass) at a pinned version from the official npm registry — this is a standard pattern for fixing build-time dependency compatibility issues. While npm installs do carry inherent supply-chain risk (no checksums on transitive deps), this is a common and accepted AUR pattern for Node.js/Electron applications. The node-sass package itself is a legitimate, popular package. There is no unofficial or personal host involved, no binary blobs from untrusted sources, and no obfuscation. The main concern is the general lack of lockfile/checksum verification for npm dependencies, which is a low-severity sloppy packaging issue rather than a genuine supply-chain attack vector.

1 higher static finding superseded - not the current verdict (shown for transparency)
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:24 npm install --save node-sass@5.0.0

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: robertfoster
2
3pkgname=openbazaar-git
4pkgver=v2.4.10.r0.gf724cf15
5pkgrel=1
6pkgdesc="Front-end Electron application for talking with the OpenBazaar daemon (Latest devel version)"
7arch=(i686 x86_64)
8url="https://github.com/OpenBazaar/openbazaar-desktop"
9license=('MIT')
10depends=('electron6')
11optdepends=('openbazaard-git: server daemon occasionally needed by front-end')
12makedepends=('git' 'npm')
13conflicts=('openbazaar')
14source=("${pkgname%%-git}::git+https://github.com/OpenBazaar/openbazaar-desktop.git"
15 "${pkgname%%-git}.js"
16 "${pkgname%%-git}.desktop"
17)
18install=${pkgname%%-git}.install
19options=('!strip')
20
21prepare() {
22 cd $srcdir/${pkgname%%-git}
23 sed -i '/electron/d' package.json
24 npm install --save node-sass@5.0.0
25 npm install --silent
26}
27
28build() {
29 cd $srcdir/${pkgname%%-git}
30 npm run build
31}
32
33package() {
34 cd $srcdir
35 appdir="usr/lib/${pkgname%%-git}"
36
37 install -d $pkgdir/${appdir%%/${pkgname%%-git}}
38 cp -rf ${pkgname%%-git} $pkgdir/$appdir
39 install -Dm755 ${pkgname%%-git}.js $pkgdir/usr/bin/${pkgname%%-git}
40 install -Dm644 ${pkgname%%-git}/imgs/icon.png $pkgdir/usr/share/pixmaps/${pkgname%%-git}2.png
41 install -Dm644 ${pkgname%%-git}.desktop $pkgdir/usr/share/applications/${pkgname%%-git}.desktop
42
43 cd $pkgdir/$appdir
44 rm -rf .git*
45 rm -rf .travis
46 cp -rf prod/* js/
47 find "${pkgdir}"/${appdir} \
48 -name "bin" -prune -exec rm -r '{}' \; \
49 -or -name "example" -prune -exec rm -r '{}' \; \
50 -or -name "examples" -prune -exec rm -r '{}' \; \
51 -or -name "test" -prune -exec rm -r '{}' \;
52 pathtoreplace=$(echo ${srcdir}/ | sed 's:/:\\\/:g')
53 find "$pkgdir/$appdir/node_modules/" -name "*.json" -exec \
54 sed -i "s/$pathtoreplace//g" {} +
55}
56
57pkgver() {
58 cd $srcdir/${pkgname%%-git}
59 git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
60}
61
62md5sums=('SKIP'
63 '8359716a04cff2fd8499406408b6c590'
64 'a278f17aa965510cadb534df49b245dd')
65

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