ircgrampp
Version:
IRCGram++ is a complexly simple Telegram <-> IRC Gateway
44 lines (34 loc) • 1.15 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
var _session = _interopRequireDefault(require("../session"));
var _plugins = require("../plugins");
var _config = _interopRequireDefault(require("../config"));
var _debug = _interopRequireDefault(require("debug"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const debug = (0, _debug.default)('cli-start');
function _default(args) {
if (process.getuid() === 0) {
debug("Running as uid 0");
if (process.getuid && process.setgid) {
try {
debug("Setting uid and gid");
process.setgid(_config.default.get('group'));
process.setuid(_config.default.get('user'));
} catch (e) {
debug("Error setting uid or gid:", e);
throw new Error(`Failed to asssign uid or gid: ${e}`);
}
} else {
debug("WARNING: setuid or setgid does not exists, running as 0");
}
}
(0, _plugins.loadPlugins)();
let session = new _session.default({
only: args.only || null
});
debug("Start session");
session.start();
}