X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=org.simantics.maps.server%2Fnode%2Fnode-v4.8.0-win-x64%2Fnode_modules%2Fnpm%2Flib%2Fconfig%2Fset-user.js;fp=org.simantics.maps.server%2Fnode%2Fnode-v4.8.0-win-x64%2Fnode_modules%2Fnpm%2Flib%2Fconfig%2Fset-user.js;h=4c207a6792a6f42be9d1ac78873527de3e6c8ee5;hb=2529be6d456deeb07c128603ce4971f1dc29b695;hp=0000000000000000000000000000000000000000;hpb=2636fc31c16c23711cf2b06a4ae8537bba9c1d35;p=simantics%2Fdistrict.git diff --git a/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/lib/config/set-user.js b/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/lib/config/set-user.js new file mode 100644 index 00000000..4c207a67 --- /dev/null +++ b/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/lib/config/set-user.js @@ -0,0 +1,29 @@ +module.exports = setUser + +var assert = require("assert") +var path = require("path") +var fs = require("fs") +var mkdirp = require("mkdirp") + +function setUser (cb) { + var defaultConf = this.root + assert(defaultConf !== Object.prototype) + + // If global, leave it as-is. + // If not global, then set the user to the owner of the prefix folder. + // Just set the default, so it can be overridden. + if (this.get("global")) return cb() + if (process.env.SUDO_UID) { + defaultConf.user = +(process.env.SUDO_UID) + return cb() + } + + var prefix = path.resolve(this.get("prefix")) + mkdirp(prefix, function (er) { + if (er) return cb(er) + fs.stat(prefix, function (er, st) { + defaultConf.user = st && st.uid + return cb(er) + }) + }) +}