build: modify SVR.JS configuration in installation script

This commit is contained in:
Dorian Niemiec 2025-01-26 18:10:15 +01:00
parent dba6066fec
commit 5183ba2588
3 changed files with 35 additions and 0 deletions

13
package-lock.json generated
View file

@ -22,6 +22,7 @@
"prettier": "^3.3.3",
"rimraf": "^5.0.10",
"wait-on": "^8.0.1",
"yaml": "^2.7.0",
"zip": "^1.2.0"
}
},
@ -5757,6 +5758,18 @@
"integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
"dev": true
},
"node_modules/yaml": {
"version": "2.7.0",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz",
"integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==",
"dev": true,
"bin": {
"yaml": "bin.mjs"
},
"engines": {
"node": ">= 14"
}
},
"node_modules/yargs": {
"version": "17.7.2",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",

View file

@ -25,6 +25,7 @@
"prettier": "^3.3.3",
"rimraf": "^5.0.10",
"wait-on": "^8.0.1",
"yaml": "^2.7.0",
"zip": "^1.2.0"
}
}

View file

@ -4,6 +4,7 @@ const fs = require("fs");
const https = require("https");
const zip = require("zip");
const zlib = require("zlib");
const YAML = require("yaml");
function downloadSVRJS(version) {
const normalizedVersion = version.toLowerCase().replace(/[^0-9a-z]+/g, ".");
@ -68,6 +69,26 @@ function downloadSVRJS(version) {
fs.unlinkSync(__dirname + "/svrjs/svr.compressed");
fs.writeFileSync(__dirname + "/svrjs/svr.js", script);
}
if (fs.existsSync(__dirname + "/svrjs/svrjs.yaml")) {
console.log("Modifying SVR.JS configuration...");
let svrjsConfig = YAML.parse(fs.readFileSync(__dirname + "/svrjs/svrjs.yaml"));
if (!svrjsConfig) svrjsConfig = {};
if (!svrjsConfig.global) svrjsConfig.global = {};
svrjsConfig.global.enableDirectoryListing = true;
svrjsConfig.global.stackHidden = false;
svrjsConfig.global.exposeServerVersion = true;
svrjsConfig.global.exposeModsInErrorPages = true;
fs.writeFileSync(__dirname + "/svrjs/svrjs.yaml", YAML.stringify(svrjsConfig));
} else if (fs.existsSync(__dirname + "/svrjs/config.json")) {
console.log("Modifying SVR.JS configuration...");
let svrjsConfig = JSON.parse(fs.readFileSync(__dirname + "/svrjs/config.json"));
if (!svrjsConfig) svrjsConfig = {};
svrjsConfig.enableDirectoryListing = true;
svrjsConfig.stackHidden = false;
svrjsConfig.exposeServerVersion = true;
svrjsConfig.exposeModsInErrorPages = true;
fs.writeFileSync(__dirname + "/svrjs/svrjs.yaml", JSON.stringify(svrjsConfig, null, 2));
}
console.log("SVR.JS is installed successfully.");
});
}