Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) Safe-mode: OFF (not secure) /usr/local/lib/node_modules/homebridge-config-ui-x/dist/core/config/ drwxr-xr-x | |
| Viewing file: Select action/file-type: "use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getStartupConfig = void 0;
const os = require("os");
const path = require("path");
const fs = require("fs-extra");
const logger_service_1 = require("../logger/logger.service");
async function getStartupConfig() {
const logger = new logger_service_1.Logger();
const configPath = process.env.UIX_CONFIG_PATH || path.resolve(os.homedir(), '.homebridge/config.json');
const homebridgeConfig = await fs.readJSON(configPath);
const ui = Array.isArray(homebridgeConfig.platforms) ? homebridgeConfig.platforms.find(x => x.platform === 'config') : undefined;
const config = {};
const ipv6 = Object.entries(os.networkInterfaces()).filter(([net, addresses]) => {
return addresses.find(x => x.family === 'IPv6');
}).length;
config.host = ipv6 ? '::' : '0.0.0.0';
if (!ui) {
return config;
}
if (ui.host) {
config.host = ui.host;
}
if (ui.ssl && ((ui.ssl.key && ui.ssl.cert) || ui.ssl.pfx)) {
for (const attribute of ['key', 'cert', 'pfx']) {
if (ui.ssl[attribute]) {
if (!(await (fs.stat(ui.ssl[attribute]))).isFile()) {
logger.error(`SSL Config Error: ui.ssl.${attribute}: ${ui.ssl[attribute]} is not a valid file`);
}
}
}
try {
config.httpsOptions = {
key: ui.ssl.key ? await fs.readFile(ui.ssl.key) : undefined,
cert: ui.ssl.cert ? await fs.readFile(ui.ssl.cert) : undefined,
pfx: ui.ssl.pfx ? await fs.readFile(ui.ssl.pfx) : undefined,
passphrase: ui.ssl.passphrase,
};
}
catch (e) {
logger.error('WARNING: COULD NOT START SERVER WITH SSL ENABLED');
logger.error(e);
}
}
if (ui.proxyHost) {
config.cspWsOveride = `wss://${ui.proxyHost} ws://${ui.proxyHost}`;
}
if (ui.debug) {
config.debug = true;
process.env.UIX_DEBUG_LOGGING = '1';
}
else {
config.debug = false;
process.env.UIX_DEBUG_LOGGING = '0';
}
return config;
}
exports.getStartupConfig = getStartupConfig;
//# sourceMappingURL=config.startup.js.map |
:: Command execute :: | |
--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0048 ]-- |