LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File nodejs-libpath.patch of Package nodejs (Project devel:languages:nodejs)

Index: node-v6.9.0/lib/module.js
===================================================================
--- node-v6.9.0.orig/lib/module.js
+++ node-v6.9.0/lib/module.js
@@ -616,7 +616,7 @@ Module._initPaths = function() {
     homeDir = process.env.HOME;
   }
 
-  var paths = [path.resolve(process.execPath, '..', '..', 'lib', 'node')];
+  var paths = ['/usr/lib/node_modules', '/usr/lib/node'];
 
   if (homeDir) {
     paths.unshift(path.resolve(homeDir, '.node_libraries'));
Index: node-v6.9.0/tools/install.py
===================================================================
--- node-v6.9.0.orig/tools/install.py
+++ node-v6.9.0/tools/install.py
@@ -6,6 +6,7 @@ import os
 import re
 import shutil
 import sys
+from distutils import sysconfig
 from getmoduleversion import get_version
 
 # set at init time
@@ -76,7 +77,7 @@ def install(paths, dst): map(lambda path
 def uninstall(paths, dst): map(lambda path: try_remove(path, dst), paths)
 
 def npm_files(action):
-  target_path = 'lib/node_modules/npm/'
+  target_path = sysconfig.get_config_var("LIB") + '/node_modules/npm/'
 
   # don't install npm if the target path is a symlink, it probably means
   # that a dev version of npm is installed there
@@ -94,7 +95,7 @@ def npm_files(action):
   if action == uninstall:
     action([link_path], 'bin/npm')
   elif action == install:
-    try_symlink('../lib/node_modules/npm/bin/npm-cli.js', link_path)
+    try_symlink("../" + sysconfig.get_config_var("LIB") + '/node_modules/npm/bin/npm-cli.js',link_path)
   else:
     assert(0) # unhandled action type
 
@@ -127,7 +128,7 @@ def files(action):
   action([output_prefix + output_file], 'bin/' + output_file)
 
   if 'true' == variables.get('node_use_dtrace'):
-    action(['out/Release/node.d'], 'lib/dtrace/node.d')
+    action(['out/Release/node.d'], sysconfig.get_config_var("LIB") + '/dtrace/node.d')
 
   # behave similarly for systemtap
   action(['src/node.stp'], 'share/systemtap/tapset/')