You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
608 B
JavaScript
25 lines
608 B
JavaScript
6 years ago
|
'use strict';
|
||
|
var os = require('os');
|
||
|
|
||
|
function homedir() {
|
||
|
var env = process.env;
|
||
|
var home = env.HOME;
|
||
|
var user = env.LOGNAME || env.USER || env.LNAME || env.USERNAME;
|
||
|
|
||
|
if (process.platform === 'win32') {
|
||
|
return env.USERPROFILE || env.HOMEDRIVE + env.HOMEPATH || home || null;
|
||
|
}
|
||
|
|
||
|
if (process.platform === 'darwin') {
|
||
|
return home || (user ? '/Users/' + user : null);
|
||
|
}
|
||
|
|
||
|
if (process.platform === 'linux') {
|
||
|
return home || (process.getuid() === 0 ? '/root' : (user ? '/home/' + user : null));
|
||
|
}
|
||
|
|
||
|
return home || null;
|
||
|
}
|
||
|
|
||
|
module.exports = typeof os.homedir === 'function' ? os.homedir : homedir;
|