[oe-commits] [openembedded-core] 02/05: npm: change install directory to upstream default
git at git.openembedded.org
git at git.openembedded.org
Fri Oct 19 21:36:21 UTC 2018
This is an automated email from the git hooks/post-receive script.
rpurdie pushed a commit to branch master-next
in repository openembedded-core.
commit 7148bf7e4d6b80748e3a9a2734cdb0cdb087cf5b
Author: Olaf Mandel <o.mandel at menlosystems.com>
AuthorDate: Fri Oct 19 15:22:14 2018 +0000
npm: change install directory to upstream default
The node binary searches for packages in a number of locations, the last
of which is $PREFIX/lib/node (here: /usr/lib/node) from the list of
GLOBAL_FOLDERS [1]. Change the installation directory for all packages
depending on npm.bbclass to that location. This removes the need to
define the NODE_PATH variable to the non-standard /usr/lib/node_modules
value.
While the Tips for Package Managers [2] discusses installing packages to
/usr/lib/node_modules/<name>/<version>, this has several drawbacks:
* it does not work for the REPL as mentioned in the documentation
* it also does not work for any code _not_ installed as a global
package under /usr/lib/node_modules (e.g. /usr/share/foo.js will not
find any packages below /usr/lib)
* using the non-default location and then having to set NODE_PATH
barely saves any time: there are only two file-system lookups (to the
legacy $HOME/.node_modules and $HOME/.node_libraries) directories
before the library would be found
And the suggestion was made in the context of deduping the node_modules
tree by installing all packages in a flat hierarchy and using symlinks
to the correct version of each dependency. This is not what OpenEmbedded
does, so none of those benefits (deduping, cleaner packages) are being
had by shifting the installation directory to /usr/lib/node_modules.
[1]: https://nodejs.org/api/modules.html#modules_loading_from_the_global_folders
[2]: https://nodejs.org/api/modules.html#modules_addenda_package_manager_tips
Signed-off-by: Olaf Mandel <o.mandel at menlosystems.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/classes/npm.bbclass | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/classes/npm.bbclass b/meta/classes/npm.bbclass
index c351ff0..d5ff0c6 100644
--- a/meta/classes/npm.bbclass
+++ b/meta/classes/npm.bbclass
@@ -10,7 +10,7 @@ def node_pkgname(d):
NPMPN ?= "${@node_pkgname(d)}"
-NPM_INSTALLDIR = "${D}${libdir}/node_modules/${NPMPN}"
+NPM_INSTALLDIR = "${D}${libdir}/node/${NPMPN}"
# function maps arch names to npm arch names
def npm_oe_arch_map(target_arch, d):
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Openembedded-commits
mailing list