hsd-git
maintainer thann
· 4 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The npm install is part of building the project from its own source (git repo), which is normal for AUR packages; the installed package is not an undeclared external dependency but the project itself.
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 npm install is part of building the project from its own source (git repo), which is normal for AUR packages; the installed package is not an undeclared external dependency but the project itself.
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:27
npm install -g --prefix "$pkgdir"/usr --user root --unsafe-perm --production
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Jonathan Knapp <jaknapp8+aur@gmail.com>
2
# Contributor: Christopher Jeffrey
3
# URL: https://github.com/handshake-org/hsd
4
# Upstream: https://github.com/handshake-org/hsd
5
6
pkgname=hsd-git
7
pkgver=2.1.5.56.g22be7faa
8
pkgrel=1
9
pkgdesc='Handshake decentralized naming system Daemon & Full Node'
10
arch=('i686' 'x86_64')
11
url='http://handshake.org/'
12
license=('MIT')
13
depends=('nodejs' 'unbound')
14
makedepends=('git' 'npm' 'python2' 'gcc' 'make')
15
provides=('hsd')
16
conflicts=('hsd')
17
source=("$pkgname::git+https://github.com/handshake-org/hsd.git")
18
md5sums=('SKIP')
19
20
pkgver() {
21
cd $pkgname
22
git describe | sed 's/^v//;s/-/./g'
23
}
24
25
package() {
26
cd "$pkgname"
27
npm install -g --prefix "$pkgdir"/usr --user root --unsafe-perm --production
28
install -D -m644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
29
chmod -R 755 "$pkgdir"/usr/bin
30
#HACK: npm is being lame and only installing a symlink =/
31
rm "$pkgdir/usr/lib/node_modules/hsd"
32
find * -exec install -D -m644 "{}" "$pkgdir/usr/lib/node_modules/hsd/{}" \;
33
find "$pkgdir/usr/lib/node_modules/hsd" -exec chmod +x "{}" \;
34
35
#HACK: remove references to $srcdir & $pkgdir (if you care)
36
# npm install -g removeNPMAbsolutePaths --prefix "$pkgdir"/usr
37
# "$pkgdir"/usr/bin/removeNPMAbsolutePaths "$pkgdir"/usr
38
# npm uninstall -g removeNPMAbsolutePaths --prefix "$pkgdir"/usr
39
}
40
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 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 |