2018-06-11 20:52:01 +00:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
var common = module.exports;
|
|
|
|
|
|
|
|
var path = require('path');
|
|
|
|
var mkdirp = require('mkdirp');
|
|
|
|
var os = require('os');
|
|
|
|
var homedir = os.homedir();
|
|
|
|
|
2018-06-12 10:36:37 +00:00
|
|
|
var localshare = '.local/share/telebit';
|
2018-06-11 20:52:01 +00:00
|
|
|
var localconf = '.config/telebit';
|
|
|
|
|
2018-06-14 07:26:32 +00:00
|
|
|
common.pipename = function (config, newApi) {
|
|
|
|
var _ipc = {
|
|
|
|
path: (config.sock || common.DEFAULT_SOCK_NAME)
|
|
|
|
, comment: (/^win/i.test(os.platform()) ? 'windows pipe' : 'unix socket')
|
|
|
|
, type: (/^win/i.test(os.platform()) ? 'pipe' : 'socket')
|
|
|
|
};
|
|
|
|
if ('pipe' === _ipc.type) {
|
2018-06-14 08:39:34 +00:00
|
|
|
_ipc.path = '\\\\?\\pipe' + _ipc.path.replace(/\//, '\\');
|
2018-06-11 20:52:01 +00:00
|
|
|
}
|
2018-06-14 07:26:32 +00:00
|
|
|
if (newApi) {
|
|
|
|
return _ipc;
|
|
|
|
}
|
|
|
|
return _ipc.path;
|
2018-06-11 20:52:01 +00:00
|
|
|
};
|
2018-06-14 07:26:32 +00:00
|
|
|
common.DEFAULT_SOCK_NAME = path.join(homedir, localshare, 'var', 'run', 'telebit.sock');
|
2018-06-11 20:52:01 +00:00
|
|
|
|
|
|
|
try {
|
2018-06-12 10:36:37 +00:00
|
|
|
mkdirp.sync(path.join(__dirname, '..', 'var', 'log'));
|
|
|
|
mkdirp.sync(path.join(__dirname, '..', 'var', 'run'));
|
|
|
|
mkdirp.sync(path.join(__dirname, '..', 'etc'));
|
|
|
|
} catch(e) {
|
|
|
|
console.error(e);
|
|
|
|
}
|
|
|
|
|
|
|
|
try {
|
|
|
|
mkdirp.sync(path.join(homedir, localshare, 'var', 'log'));
|
|
|
|
mkdirp.sync(path.join(homedir, localshare, 'var', 'run'));
|
|
|
|
//mkdirp.sync(path.join(homedir, localshare, 'etc'));
|
2018-06-11 20:52:01 +00:00
|
|
|
mkdirp.sync(path.join(homedir, localconf));
|
|
|
|
} catch(e) {
|
|
|
|
console.error(e);
|
|
|
|
}
|