Daniel M. Capella pushed to branch main at Arch Linux / Packaging / Packages / 
node-gyp


Commits:
f391e7f4 by Daniel M. Capella at 2025-02-10T19:25:00-05:00
upgpkg: 11.1.0-2: Build from source

- - - - -


2 changed files:

- .SRCINFO
- PKGBUILD


Changes:

=====================================
.SRCINFO
=====================================
@@ -1,10 +1,13 @@
 pkgbase = node-gyp
        pkgdesc = Node.js native addon build tool
        pkgver = 11.1.0
-       pkgrel = 1
+       pkgrel = 2
        url = https://github.com/nodejs/node-gyp
        arch = any
        license = MIT
+       checkdepends = python
+       makedepends = git
+       makedepends = jq
        makedepends = npm
        depends = nodejs
        depends = nodejs-nopt
@@ -12,8 +15,8 @@ pkgbase = node-gyp
        optdepends = gcc: to build C++ modules
        optdepends = make: to build C++ modules
        optdepends = python: to build C++ modules
-       noextract = node-gyp-11.1.0.tgz
-       source = https://registry.npmjs.org/node-gyp/-/node-gyp-11.1.0.tgz
-       sha512sums = 
ffeed3b872a70699ccbd4427b1811bd093a8cc366a6ab41b7cdb9218b5c88e14ad313d1f6f0ec8752a96828a4e3f9c6145913e96c6c8bc01dc7a475daee3d981
+       options = !emptydirs
+       source = git+https://github.com/nodejs/node-gyp.git#tag=v11.1.0
+       b2sums = 
05b8b2de4c7bd190662371d28efc2ceab1ab44f24d55cb886ff84ec504afafc418fef5d0c8a187223c2bd14bd0534cb49883375ef08f9542d19a7b7cf630447e
 
 pkgname = node-gyp


=====================================
PKGBUILD
=====================================
@@ -4,27 +4,44 @@
 
 pkgname=node-gyp
 pkgver=11.1.0
-pkgrel=1
+pkgrel=2
 pkgdesc='Node.js native addon build tool'
 arch=('any')
 url='https://github.com/nodejs/node-gyp'
 license=('MIT')
 depends=('nodejs' 'nodejs-nopt' 'semver')
-makedepends=('npm')
+makedepends=('git' 'jq' 'npm')
+checkdepends=('python')
 optdepends=('gcc: to build C++ modules'
             'make: to build C++ modules'
             'python: to build C++ modules')
-source=("https://registry.npmjs.org/$pkgname/-/$pkgname-$pkgver.tgz";)
-noextract=("$pkgname-$pkgver.tgz")
-sha512sums=('ffeed3b872a70699ccbd4427b1811bd093a8cc366a6ab41b7cdb9218b5c88e14ad313d1f6f0ec8752a96828a4e3f9c6145913e96c6c8bc01dc7a475daee3d981')
+options=('!emptydirs')
+source=("git+$url.git#tag=v$pkgver")
+b2sums=('05b8b2de4c7bd190662371d28efc2ceab1ab44f24d55cb886ff84ec504afafc418fef5d0c8a187223c2bd14bd0534cb49883375ef08f9542d19a7b7cf630447e')
+
+prepare() {
+  cd $pkgname
+  npm install
+}
+
+check() {
+  cd $pkgname
+  npm test
+}
 
 package() {
-  npm install -g --prefix "$pkgdir"/usr $pkgname-$pkgver.tgz
+  local mod_dir=/usr/lib/node_modules/$pkgname
 
-  # Experimental dedup
-  rm -r "$pkgdir"/usr/lib/node_modules/$pkgname/node_modules/{,.bin/}nopt
-  rm -r "$pkgdir"/usr/lib/node_modules/$pkgname/node_modules/{,.bin/}semver
+  install -d "$pkgdir"/{usr/{bin,share/licenses/$pkgname},$mod_dir}
+  ln -s $mod_dir/$pkgname.js "$pkgdir"/usr/bin/$pkgname
+  ln -s $mod_dir/LICENSE "$pkgdir"/usr/share/licenses/$pkgname
+
+  cd $pkgname
+  npm prune --omit=dev
 
-  install -d "$pkgdir"/usr/share/licenses/$pkgname
-  ln -s ../../../lib/node_modules/$pkgname/LICENSE 
"$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+  mapfile -t mod_files < <(npm pack --dry-run --json | jq -r .[].files.[].path)
+  cp --parents -a "${mod_files[@]}" node_modules "$pkgdir"/$mod_dir
+
+  # Experimental dedup
+  rm -r "$pkgdir"/$mod_dir/node_modules/{,.bin/}{nopt,semver}
 }



View it on GitLab: 
https://gitlab.archlinux.org/archlinux/packaging/packages/node-gyp/-/commit/f391e7f490376c8b05810124d33d0b797791c7fd

-- 
View it on GitLab: 
https://gitlab.archlinux.org/archlinux/packaging/packages/node-gyp/-/commit/f391e7f490376c8b05810124d33d0b797791c7fd
You're receiving this email because of your account on gitlab.archlinux.org.


Reply via email to