| 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'
|
| +})
|
|
|