From c7aedf5a7782050a2c8124f03292683488085105 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 22 Nov 2023 15:16:35 +0000 Subject: [PATCH 1/2] fix(rust): add default-terminal setting for Oxide (#4383) * fix(rust): add default-terminal setting for Oxide This commit fixes issue #4268 by adding the line "set -g default-terminal "screen-256color"" to the ~/.tmux.conf file. This ensures compatibility with tmux version 3.3 or higher when running RustDedicated servers with Oxide.Rust.dll. * add gamelog to start parameters --- .../config-lgsm/rustserver/_default.cfg | 3 ++- lgsm/modules/fix_rust.sh | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/rustserver/_default.cfg b/lgsm/config-default/config-lgsm/rustserver/_default.cfg index e045777921..2652bc5970 100644 --- a/lgsm/config-default/config-lgsm/rustserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/rustserver/_default.cfg @@ -28,7 +28,7 @@ saveinterval="300" # Auto-save in seconds. tickrate="30" # default: 30, range: 15-100. ## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters -startparameters="-batchmode +app.listenip ${ip} +app.port ${appport} +server.ip ${ip} +server.port ${port} +server.queryport ${queryport} +server.tickrate ${tickrate} +server.hostname \"${servername}\" +server.identity \"${selfname}\" +server.gamemode ${gamemode} +server.level \"${serverlevel}\" +server.seed ${seed} +server.salt ${salt} +server.maxplayers ${maxplayers} +server.worldsize ${worldsize} +server.saveinterval ${saveinterval} +rcon.web ${rconweb} +rcon.ip ${ip} +rcon.port ${rconport} +rcon.password \"${rconpassword}\" -logfile" +startparameters="-batchmode +app.listenip ${ip} +app.port ${appport} +server.ip ${ip} +server.port ${port} +server.queryport ${queryport} +server.tickrate ${tickrate} +server.hostname \"${servername}\" +server.identity \"${selfname}\" +server.gamemode ${gamemode} +server.level \"${serverlevel}\" +server.seed ${seed} +server.salt ${salt} +server.maxplayers ${maxplayers} +server.worldsize ${worldsize} +server.saveinterval ${saveinterval} +rcon.web ${rconweb} +rcon.ip ${ip} +rcon.port ${rconport} +rcon.password \"${rconpassword}\" -logfile ${gamelog}" #### LinuxGSM Settings #### @@ -184,6 +184,7 @@ backupdir="${lgsmdir}/backup" gamelogdir="${logdir}/server" lgsmlogdir="${logdir}/script" consolelogdir="${logdir}/console" +gamelog="${gamelogdir}/${selfname}-game.log" lgsmlog="${lgsmlogdir}/${selfname}-script.log" consolelog="${consolelogdir}/${selfname}-console.log" alertlog="${lgsmlogdir}/${selfname}-alert.log" diff --git a/lgsm/modules/fix_rust.sh b/lgsm/modules/fix_rust.sh index 6d4cebc01c..809b5b1df0 100644 --- a/lgsm/modules/fix_rust.sh +++ b/lgsm/modules/fix_rust.sh @@ -30,3 +30,21 @@ if [ -f "${serverfiles}/carbon/tools/environment.sh" ]; then # shellcheck source=/dev/null source "${serverfiles}/carbon/tools/environment.sh" fi + +# fix for #4268 +# insert set -g default-terminal "screen-256color" into ~/.tmux.conf +if [ -f "${serverfiles}/RustDedicated_Data/Managed/Oxide.Rust.dll" ]; then + # tmux version is 3.3 or higher + tmuxvdigit="$(tmux -V | sed "s/tmux //" | sed -n '1 p' | tr -cd '[:digit:]')" + if [ "${tmuxvdigit}" -ge "33" ]; then + if [ ! -f "${HOME}/.tmux.conf" ]; then + touch "${HOME}/.tmux.conf" + fi + if ! grep -q "set -g default-terminal \"screen-256color\"" "${HOME}/.tmux.conf"; then + fixname="tmux screen-256color" + fn_fix_msg_start + echo "set -g default-terminal \"screen-256color\"" >> "${HOME}/.tmux.conf" + fn_fix_msg_end + fi + fi +fi From 2122a6b390b44c7cbacb3fa1fbcf3548b644eefd Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 22 Nov 2023 15:16:59 +0000 Subject: [PATCH 2/2] feat(backup): add tmpdir to backup exclusion (#4386) --- lgsm/modules/command_backup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/modules/command_backup.sh b/lgsm/modules/command_backup.sh index 55981e19e5..e0ef3f0a14 100644 --- a/lgsm/modules/command_backup.sh +++ b/lgsm/modules/command_backup.sh @@ -126,7 +126,7 @@ fn_backup_compression() { core_exit.sh fi - tar -czf "${backupdir}/${backupname}.tar.gz" -C "${rootdir}" --exclude "${excludedir}" --exclude "${lockdir}" ./. + tar -czf "${backupdir}/${backupname}.tar.gz" -C "${rootdir}" --exclude "${excludedir}" --exclude "${lockdir}" --exclude "${tmpdir}" ./. local exitcode=$? if [ "${exitcode}" != 0 ]; then fn_print_fail_eol