reassign 969986 nodejs merge 969986 932659 thanks On Wed, 2020-09-09 at 21:11 +0200, Jonas Smedegaard wrote: > Quoting Kevin Locke (2020-09-09 20:32:01) >> Did you try installing to a chroot: >> >> debootstrap testing npm-chroot && chroot npm-chroot sh -c 'apt install -y >> npm && npm --version' > > I tried above command just now (inside another chroot), and it failed: > > [...] > Error: Cannot find module 'semver' > [...] > > Installing npm into a clean pbuilder chroot (either sid or bullseye) and > running "npm --version" does not fail, however.
Good catch. I am seeing the same behavior. It looks to me like a difference in the node module search path, not specific to npm. If I run `node -e 'console.log(require.resolve.paths("semver"))'` in the chroot, I get (note the missing /usr prefix): [ '/node_modules', '/root/.node_modules', '/root/.node_libraries', '/lib/x86_64-linux-gnu/nodejs', '/share/nodejs', '/lib/nodejs' ] In pbuilder I get: [ '/node_modules', '/root/.node_modules', '/root/.node_libraries', '/usr/lib/x86_64-linux-gnu/nodejs', '/usr/share/nodejs', '/usr/lib/nodejs' ] I think the problem is that process.execPath is "node" in the chroot and "/usr/bin/node" in pbuilder and that this is used to build the module search path. The problem occurs when /proc is not mounted. It appears this was already reported in #932659. Sorry for not noticing that earlier. Thanks, Kevin
signature.asc
Description: PGP signature