diff options
author | tjquillan | 2021-06-19 08:30:43 -0700 |
---|---|---|
committer | tjquillan | 2021-06-19 08:30:43 -0700 |
commit | 0f5595998103e1a05c587757633e981cf8d69f1a (patch) | |
tree | 5b549c963bbccf7c5fe31c94f284aa409031c4b6 /PKGBUILD | |
parent | 924eb71b6e8a68c557bd2e93a87635e2e1a44980 (diff) | |
download | aur-nodejs-vmd.tar.gz |
updpkg: 1.34.0-2
Update package to follow latest Node.js guidelines
https://wiki.archlinux.org/title/Node.js_package_guidelines
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 30 |
1 files changed, 25 insertions, 5 deletions
@@ -3,21 +3,41 @@ pkgname=nodejs-vmd _npmname=vmd pkgver=1.34.0 -pkgrel=1 +pkgrel=2 pkgdesc="Preview markdown files in a separate window. Markdown is formatted exactly the same as on GitHub." arch=("any") url="https://github.com/yoshuawuyts/vmd" license=('MIT') depends=("nodejs") -makedepends=("npm") +makedepends=("npm" "jq") source=("https://registry.npmjs.org/$_npmname/-/$_npmname-$pkgver.tgz") sha256sums=('d53f1cc73038aa11b0fc8cba1b734272c3cfab7af92c82a1e9d71075e3aa27d3') package() { - npm install -g --user root --cache "${srcdir}/npm-cache" --prefix "$pkgdir/usr" "$srcdir/$_npmname-$pkgver.tgz" + npm install -g --cache "${srcdir}/npm-cache" --prefix "$pkgdir/usr" "$srcdir/$_npmname-$pkgver.tgz" # Non-deterministic race in npm gives 777 permissions to random directories. - # See https://github.com/npm/npm/issues/9359 for details. - find "${pkgdir}"/usr -type d -exec chmod 755 {} + + # See https://github.com/npm/cli/issues/1103 for details. + find "${pkgdir}/usr" -type d -exec chmod 755 {} + + + # npm gives ownership of ALL FILES to build user + # https://bugs.archlinux.org/task/63396 + chown -R root:root "${pkgdir}" + + # Remove $pkgdir references + find "$pkgdir" -name package.json -print0 | xargs -r -0 sed -i '/_where/d' + + local tmppackage="$(mktemp)" + local pkgjson="$pkgdir/usr/lib/node_modules/$_npmname/package.json" + jq '.|=with_entries(select(.key|test("_.+")|not))' "$pkgjson" > "$tmppackage" + mv "$tmppackage" "$pkgjson" + chmod 644 "$pkgjson" + + find "$pkgdir" -type f -name package.json | while read pkgjson; do + local tmppackage="$(mktemp)" + jq 'del(.man)' "$pkgjson" > "$tmppackage" + mv "$tmppackage" "$pkgjson" + chmod 644 "$pkgjson" + done } |