Closed soren121 closed 9 years ago
First of all, every addon on npm that I know of that uses nan
uses this exact same format (node -e "require('nan')"
), so it's not as if this is something unique to mmmagic
.
Secondly, what do you propose that would not break for other distros?
Lastly, you can always sudo apt-get install nodejs-legacy
to get the node
symlink on Debian-based distros. However, typically you are better off getting your copy of node from some other source (repo, compiling manually, using pre-built tarballs, or otherwise) because the versions of node in official distro repositories more often than not get quickly outdated. This will especially be the case when releases from the converged node.js/io.js github repo start happening (although there will be LTS releases).
I'm not very familiar with Node.js, so I figured I'd ask if it's something that can be fixed. I was installing NodeBB and this was the only package that failed installation; I thought maybe there was an alternative solution that other packages had switched to.
I'm not sure what the Debian Technical Committee thinks Node developers should do about this, apart from recommending nodejs-legacy
, like you said. It seems like an inconsiderate decision on their part. I went ahead and symlinked nodejs to node on my system as there didn't seem to be any conflict.
Debian chose to rename the node.js binary to "nodejs" instead of "node" to avoid conflicts with other upstream packages that use the same binary name. As a result of PR #34, which calls node to check for NAN, npm fails to compile because it can't find the binary.
Is it possible to change the install script to avoid calling node? It seems a bit odd that mmmagic fails to compile on the most popular server distro.
NPM log attached.