Index: node_modules/vulcanize/node_modules/update-notifier/node_modules/configstore/node_modules/osenv/osenv.js |
diff --git a/node_modules/vulcanize/node_modules/update-notifier/node_modules/configstore/node_modules/osenv/osenv.js b/node_modules/vulcanize/node_modules/update-notifier/node_modules/configstore/node_modules/osenv/osenv.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7836fafcc1a6611a516fc460dfc2950f0f1608a9 |
--- /dev/null |
+++ b/node_modules/vulcanize/node_modules/update-notifier/node_modules/configstore/node_modules/osenv/osenv.js |
@@ -0,0 +1,73 @@ |
+var isWindows = process.platform === 'win32' |
+var path = require('path') |
+var exec = require('child_process').exec |
+var os = require('os') |
+ |
+// looking up envs is a bit costly. |
+// Also, sometimes we want to have a fallback |
+// Pass in a callback to wait for the fallback on failures |
+// After the first lookup, always returns the same thing. |
+function memo (key, lookup, fallback) { |
+ var fell = false |
+ var falling = false |
+ exports[key] = function (cb) { |
+ var val = lookup() |
+ if (!val && !fell && !falling && fallback) { |
+ fell = true |
+ falling = true |
+ exec(fallback, function (er, output, stderr) { |
+ falling = false |
+ if (er) return // oh well, we tried |
+ val = output.trim() |
+ }) |
+ } |
+ exports[key] = function (cb) { |
+ if (cb) process.nextTick(cb.bind(null, null, val)) |
+ return val |
+ } |
+ if (cb && !falling) process.nextTick(cb.bind(null, null, val)) |
+ return val |
+ } |
+} |
+ |
+memo('user', function () { |
+ return ( isWindows |
+ ? process.env.USERDOMAIN + '\\' + process.env.USERNAME |
+ : process.env.USER |
+ ) |
+}, 'whoami') |
+ |
+memo('prompt', function () { |
+ return isWindows ? process.env.PROMPT : process.env.PS1 |
+}) |
+ |
+memo('hostname', function () { |
+ return isWindows ? process.env.COMPUTERNAME : process.env.HOSTNAME |
+}, 'hostname') |
+ |
+memo('tmpdir', function () { |
+ return os.tmpDir() |
+}) |
+ |
+memo('home', function () { |
+ return ( isWindows ? process.env.USERPROFILE |
+ : process.env.HOME |
+ ) |
+}) |
+ |
+memo('path', function () { |
+ return (process.env.PATH || |
+ process.env.Path || |
+ process.env.path).split(isWindows ? ';' : ':') |
+}) |
+ |
+memo('editor', function () { |
+ return process.env.EDITOR || |
+ process.env.VISUAL || |
+ (isWindows ? 'notepad.exe' : 'vi') |
+}) |
+ |
+memo('shell', function () { |
+ return isWindows ? process.env.ComSpec || 'cmd' |
+ : process.env.SHELL || 'bash' |
+}) |