From e4db2a6c5a407e25ddf2673a27b932728f3a10e3 Mon Sep 17 00:00:00 2001 From: H3o66 Date: Sat, 19 Sep 2020 21:55:30 +0200 Subject: [PATCH 01/70] fix(mods): fix csgo get5 fetching for the latest version --- lgsm/functions/mods_list.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh index 2244a104c..9f1fdddb6 100644 --- a/lgsm/functions/mods_list.sh +++ b/lgsm/functions/mods_list.sh @@ -30,10 +30,10 @@ steamworkslatestfile=$(curl -sL ${steamworksscrapeurl} | grep -m 1 linux | cut - steamworksdownloadurl="${steamworksscrapeurl}/${steamworkslatestfile}" steamworksurl="${steamworksdownloadurl}" # CS:GO Mods -get5scrapepath=$(curl -sL https://ci.splewis.net/job/get5/lastSuccessfulBuild/api/xml | grep -oP "\K(.+)(?=)") -get5latestfile=$(echo -e "${get5scrapepath}" | xargs -n 1 -I @ sh -c "echo -e "basename "@""") -get5downloadurl="https://ci.splewis.net/job/get5/lastSuccessfulBuild/artifact/${get5scrapepath}" -get5url="${get5downloadurl}" +get5lastbuild=$(curl -sL https://ci.splewis.net/job/get5/lastSuccessfulBuild/api/json | jq -r '.artifacts[]') +get5latestfile=$(echo -e "${get5lastbuild}" | jq -r '.fileName') +get5latestfilepath=$(echo -e "${get5lastbuild}" | jq -r '.relativePath') +get5url="https://ci.splewis.net/job/get5/lastSuccessfulBuild/artifact/${get5latestfilepath}" # Oxide oxiderustlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Rust/releases/latest | jq -r '.assets[]|select(.browser_download_url | contains("linux")) | .browser_download_url') oxidehurtworldlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Hurtworld/releases/latest | jq -r '.assets[].browser_download_url') From 647beb58352bf0a03fe17dd233cbd3475bb7e3d5 Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 20 Sep 2020 10:59:27 +0200 Subject: [PATCH 02/70] feature(mods): add csgo pug to the modlist (#3044) --- lgsm/functions/mods_list.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh index 2244a104c..d719f0b33 100644 --- a/lgsm/functions/mods_list.sh +++ b/lgsm/functions/mods_list.sh @@ -34,6 +34,9 @@ get5scrapepath=$(curl -sL https://ci.splewis.net/job/get5/lastSuccessfulBuild/ap get5latestfile=$(echo -e "${get5scrapepath}" | xargs -n 1 -I @ sh -c "echo -e "basename "@""") get5downloadurl="https://ci.splewis.net/job/get5/lastSuccessfulBuild/artifact/${get5scrapepath}" get5url="${get5downloadurl}" +csgopuglatest=$(curl -sL https://api.github.com/repos/splewis/csgo-pug-setup/releases/latest | jq '.assets[]') +csgopuglatestfile=$(echo -e "${}" | jq -r '.name') +csgopuglatestlink=$(echo -e "${}" | jq -r '.browser_download_url') # Oxide oxiderustlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Rust/releases/latest | jq -r '.assets[]|select(.browser_download_url | contains("linux")) | .browser_download_url') oxidehurtworldlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Hurtworld/releases/latest | jq -r '.assets[].browser_download_url') @@ -73,6 +76,7 @@ mod_info_steamworks=( MOD "steamworks" "SteamWorks" "${steamworksurl}" "${steamw mod_info_gokz=( MOD "gokz" "GOKZ" "https://bitbucket.org/kztimerglobalteam/gokz/downloads/GOKZ-latest.zip" "gokz-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://bitbucket.org/kztimerglobalteam/gokz/src/master/" "Implements the KZ game mode (requires SourceMod and MetaMod)" ) mod_info_ttt=( MOD "ttt" "Trouble in Terrorist Town" "https://csgottt.com/downloads/ttt-latest-dev-${sourcemodmversion}.zip" "ttt-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/Bara/TroubleinTerroristTown" "Implements the TTT game mode (requires SourceMod and MetaMod)" ) mod_info_get5=( MOD "get5" "Get 5" "${get5url}" "${get5latestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/splewis/get5" "Plugin for competitive matches/scrims (requires SourceMod and MetaMod)" ) +mod_info_pug=( MOD "pug" "PUG" "${csgopuglatestlink}" "${csgopuglatestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/splewis/csgo-pug-setup" "plugin for setting up private pug/10man games" ) # Garry's Mod Addons mod_info_ulib=( MOD "ulib" "ULib" "https://codeload.github.com/TeamUlysses/ulib/zip/master" "ulib-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "http://ulyssesmod.net" "Complete Framework" ) @@ -95,4 +99,4 @@ mod_info_hwoxide=( MOD "hwoxide" "Oxide for Hurtworld" "${oxidehurtworldlatestli mod_info_sdtdoxide=( MOD "sdtdoxide" "Oxide for 7 Days To Die" "${oxidesdtdlatestlink}" "Oxide.SevenDaysToDie.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "7 Days To Die;" "NOTGAMES" "https://umod.org/games/7-days-to-die" "Allows for the use of plugins" ) # REQUIRED: Set all mods info into the global array -mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" ) +mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_pug[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" ) From 4f42e7026c75cce1ebed56d1b03047f7ec05727d Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 20 Sep 2020 11:00:11 +0200 Subject: [PATCH 03/70] fix(fctrserver): add bind parameter for Factorio server (#3045) --- lgsm/config-default/config-lgsm/fctrserver/_default.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/fctrserver/_default.cfg b/lgsm/config-default/config-lgsm/fctrserver/_default.cfg index c3eb1c962..c2ce4cc7f 100644 --- a/lgsm/config-default/config-lgsm/fctrserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/fctrserver/_default.cfg @@ -18,7 +18,7 @@ branch="stable" ## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters fn_parms(){ -parms="--start-server ${serverfiles}/save1.zip --server-settings ${servercfgfullpath} --port ${port} --rcon-port ${rconport} --rcon-password ${rconpassword}" +parms="--bind ${ip} --start-server ${serverfiles}/save1.zip --server-settings ${servercfgfullpath} --port ${port} --rcon-port ${rconport} --rcon-password ${rconpassword}" } #### LinuxGSM Settings #### From 7fe992920c0591810cd162bfda6da363806f6889 Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 20 Sep 2020 11:07:21 +0200 Subject: [PATCH 04/70] fix(wurm): fix server startup for wurm and dependency (#3046) --- lgsm/functions/check_deps.sh | 4 ++-- lgsm/functions/fix_bo.sh | 4 ++-- lgsm/functions/fix_wurm.sh | 13 +++++++------ 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 3e3990a44..18548e156 100644 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -405,7 +405,7 @@ fn_deps_build_debian(){ elif [ "${shortname}" == "hw" ]||[ "${shortname}" == "rust" ]; then array_deps_required+=( lib32z1 ) # Minecraft, Rising World, Wurm - elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "rw" ]||[ "${shortname}" == "wurm" ]; then + elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "rw" ]; then javaversion=$(java -version 2>&1 | grep "version") if [ "${javaversion}" ]; then # Added for users using Oracle JRE to bypass the check. @@ -514,7 +514,7 @@ fn_deps_build_redhat(){ elif [ "${shortname}" == "hw" ]||[ "${shortname}" == "rust" ]; then array_deps_required+=( zlib-devel ) # Minecraft, Rising World, Wurm - elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "rw" ]||[ "${shortname}" == "wurm" ]; then + elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "rw" ]; then javaversion=$(java -version 2>&1 | grep "version") if [ "${javaversion}" ]; then # Added for users using Oracle JRE to bypass the check. diff --git a/lgsm/functions/fix_bo.sh b/lgsm/functions/fix_bo.sh index 23c9179a2..13071036e 100644 --- a/lgsm/functions/fix_bo.sh +++ b/lgsm/functions/fix_bo.sh @@ -8,7 +8,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${serverfiles}:${serverfiles}/BODS_Data/Plugins/x86_64" -# steamclient.so x86 fix for unity3d game server +# steamclient.so x86 fix. if [ ! -f "${serverfiles}/BODS_Data/Plugins/x86/steamclient.so" ]; then fixname="steamclient.so x86" fn_fix_msg_start @@ -21,7 +21,7 @@ if [ ! -f "${serverfiles}/BODS_Data/Plugins/x86/steamclient.so" ]; then fn_fix_msg_end fi -# steamclient.so x86_64 fix for unity3d game server +# steamclient.so x86_64 fix. if [ ! -f "${serverfiles}/BODS_Data/Plugins/x86_64/steamclient.so" ]; then fixname="steamclient.so x86_64" fn_fix_msg_start diff --git a/lgsm/functions/fix_wurm.sh b/lgsm/functions/fix_wurm.sh index d43373cfe..713b32853 100644 --- a/lgsm/functions/fix_wurm.sh +++ b/lgsm/functions/fix_wurm.sh @@ -6,14 +6,15 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -if [ ! -f "${serverfiles}/nativelibs" ]; then - fixname="steamclient.so x86" +# steamclient.so x86_64 fix. +if [ ! -f "${serverfiles}/nativelibs/steamclient.so" ]; then + fixname="steamclient.so x86_64" fn_fix_msg_start mkdir -p "${serverfiles}/nativelibs" - if [ -f "${HOME}/.steam/steamcmd/linux32/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${serverfiles}/nativelibs/steamclient.so" - elif [ -f "${steamcmddir}/linux32/steamclient.so" ]; then - cp "${steamcmddir}/linux32/steamclient.so" "${serverfiles}/nativelibs/steamclient.so" + if [ -f "${HOME}/.steam/steamcmd/linux64/steamclient.so" ]; then + cp "${HOME}/.steam/steamcmd/linux64/steamclient.so" "${serverfiles}/nativelibs/steamclient.so" + elif [ -f "${steamcmddir}/linux64/steamclient.so" ]; then + cp "${steamcmddir}/linux64/steamclient.so" "${serverfiles}/nativelibs/steamclient.so" fi fn_fix_msg_end fi From 8e4d7ae97979c28b11c141afa7c02f2036386f1c Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 20 Sep 2020 11:10:23 +0200 Subject: [PATCH 05/70] fix(mcb): update fails, as the site does a redirect and does not follow (#3047) --- lgsm/functions/update_minecraft_bedrock.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lgsm/functions/update_minecraft_bedrock.sh b/lgsm/functions/update_minecraft_bedrock.sh index 925e85635..d980ff289 100644 --- a/lgsm/functions/update_minecraft_bedrock.sh +++ b/lgsm/functions/update_minecraft_bedrock.sh @@ -7,7 +7,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" fn_update_minecraft_dl(){ - latestmcbuildurl=$(curl -s "https://www.minecraft.net/en-us/download/server/bedrock/" | grep -o 'https://minecraft.azureedge.net/bin-linux/[^"]*zip') + latestmcbuildurl=$(curl -Ls "https://www.minecraft.net/en-us/download/server/bedrock/" | grep -o 'https://minecraft.azureedge.net/bin-linux/[^"]*zip') fn_fetch_file "${latestmcbuildurl}" "" "" "" "${tmpdir}" "bedrock_server.${remotebuild}.zip" echo -e "Extracting to ${serverfiles}...\c" if [ "${firstcommandname}" == "INSTALL" ]; then @@ -77,7 +77,7 @@ fn_update_minecraft_localbuild(){ fn_update_minecraft_remotebuild(){ # Gets remote build info. - remotebuild=$(curl -s "https://www.minecraft.net/en-us/download/server/bedrock/" | grep -o 'https://minecraft.azureedge.net/bin-linux/[^"]*' | sed 's/.*\///' | grep -Eo "[.0-9]+[0-9]") + remotebuild=$(curl -Ls "https://www.minecraft.net/en-us/download/server/bedrock/" | grep -o 'https://minecraft.azureedge.net/bin-linux/[^"]*' | sed 's/.*\///' | grep -Eo "[.0-9]+[0-9]") if [ "${firstcommandname}" != "INSTALL" ]; then fn_print_dots "Checking remote build: ${remotelocation}" # Checks if remotebuild variable has been set. From a6d564ccbe9f192624b1b5d10f5dbbe8a54ccd8c Mon Sep 17 00:00:00 2001 From: H3o66 Date: Sun, 20 Sep 2020 13:32:30 +0200 Subject: [PATCH 06/70] refactor(fix): move steamclient.so fix to a seperate function --- lgsm/functions/core_functions.sh | 15 -------- lgsm/functions/fix.sh | 6 ---- lgsm/functions/fix_bo.sh | 26 -------------- lgsm/functions/fix_cmw.sh | 16 +-------- lgsm/functions/fix_cs.sh | 20 ----------- lgsm/functions/fix_pz.sh | 33 ------------------ lgsm/functions/fix_ss3.sh | 10 +++--- lgsm/functions/fix_steamcmd.sh | 60 ++++++++++++++++++++++++++++++++ lgsm/functions/fix_tu.sh | 20 ----------- lgsm/functions/fix_unt.sh | 13 ------- lgsm/functions/fix_wurm.sh | 13 ------- 11 files changed, 65 insertions(+), 167 deletions(-) delete mode 100644 lgsm/functions/fix_cs.sh delete mode 100644 lgsm/functions/fix_pz.sh delete mode 100644 lgsm/functions/fix_tu.sh diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index a1ee7fe26..14789a90f 100644 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -330,11 +330,6 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } -fix_cs.sh(){ -functionfile="${FUNCNAME[0]}" -fn_fetch_function -} - fix_csgo.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function @@ -390,11 +385,6 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } -fix_pz.sh(){ -functionfile="${FUNCNAME[0]}" -fn_fetch_function -} - fix_ro.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function @@ -435,11 +425,6 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } -fix_tu.sh(){ -functionfile="${FUNCNAME[0]}" -fn_fetch_function -} - fix_ut3.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function diff --git a/lgsm/functions/fix.sh b/lgsm/functions/fix.sh index eac243075..ad5209747 100644 --- a/lgsm/functions/fix.sh +++ b/lgsm/functions/fix.sh @@ -42,8 +42,6 @@ if [ "${commandname}" != "INSTALL" ]&&[ -z "${fixbypass}" ]; then fix_ark.sh elif [ "${shortname}" == "bo" ]; then fix_bo.sh - elif [ "${shortname}" == "cs" ]; then - fix_cs.sh elif [ "${shortname}" == "csgo" ]; then fix_csgo.sh elif [ "${shortname}" == "cmw" ]; then @@ -60,8 +58,6 @@ if [ "${commandname}" != "INSTALL" ]&&[ -z "${fixbypass}" ]; then fix_nmrih.sh elif [ "${shortname}" == "onset" ]; then fix_onset.sh - elif [ "${shortname}" == "pz" ]; then - fix_pz.sh elif [ "${shortname}" == "rust" ]; then fix_rust.sh elif [ "${shortname}" == "rw" ]; then @@ -84,8 +80,6 @@ if [ "${commandname}" != "INSTALL" ]&&[ -z "${fixbypass}" ]; then fix_terraria.sh elif [ "${shortname}" == "ts3" ]; then fix_ts3.sh - elif [ "${shortname}" == "tu" ]; then - fix_tu.sh elif [ "${shortname}" == "mcb" ]; then fix_mcb.sh elif [ "${shortname}" == "mta" ]; then diff --git a/lgsm/functions/fix_bo.sh b/lgsm/functions/fix_bo.sh index 13071036e..545504f63 100644 --- a/lgsm/functions/fix_bo.sh +++ b/lgsm/functions/fix_bo.sh @@ -7,29 +7,3 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${serverfiles}:${serverfiles}/BODS_Data/Plugins/x86_64" - -# steamclient.so x86 fix. -if [ ! -f "${serverfiles}/BODS_Data/Plugins/x86/steamclient.so" ]; then - fixname="steamclient.so x86" - fn_fix_msg_start - mkdir -p "${serverfiles}/BODS_Data/Plugins/x86" - if [ -f "${HOME}/.steam/steamcmd/linux32/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${serverfiles}/BODS_Data/Plugins/x86/steamclient.so" - elif [ -f "${steamcmddir}/linux32/steamclient.so" ]; then - cp "${steamcmddir}/linux32/steamclient.so" "${serverfiles}/BODS_Data/Plugins/x86/steamclient.so" - fi - fn_fix_msg_end -fi - -# steamclient.so x86_64 fix. -if [ ! -f "${serverfiles}/BODS_Data/Plugins/x86_64/steamclient.so" ]; then - fixname="steamclient.so x86_64" - fn_fix_msg_start - mkdir -p "${serverfiles}/BODS_Data/Plugins/x86_64" - if [ -f "${HOME}/.steam/steamcmd/linux64/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux64/steamclient.so" "${serverfiles}/BODS_Data/Plugins/x86_64/steamclient.so" - elif [ -f "${steamcmddir}/linux64/steamclient.so" ]; then - cp "${steamcmddir}/linux64/steamclient.so" "${serverfiles}/BODS_Data/Plugins/x86_64/steamclient.so" - fi - fn_fix_msg_end -fi diff --git a/lgsm/functions/fix_cmw.sh b/lgsm/functions/fix_cmw.sh index df80e1ee9..2f517b1b7 100644 --- a/lgsm/functions/fix_cmw.sh +++ b/lgsm/functions/fix_cmw.sh @@ -4,27 +4,13 @@ # Website: https://linuxgsm.com # Description: Resolves the issue of the not starting server on linux -fixname="steam_appid.txt" - if [ ! -f "${executabledir}/steam_appid.txt" ]; then + fixname="steam_appid.txt" fn_fix_msg_start echo 219640 > "${executabledir}/steam_appid.txt" fn_fix_msg_end fi -# steamclient.so x86 fix. -if [ ! -f "${executabledir}/lib/steamclient.so" ]; then - fixname="steamclient.so x86" - fn_fix_msg_start - mkdir -p "${executabledir}/lib" - if [ -f "${HOME}/.steam/steamcmd/linux32/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${executabledir}/lib/steamclient.so" - elif [ -f "${steamcmddir}/linux32/steamclient.so" ]; then - cp "${steamcmddir}/linux32/steamclient.so" "${executabledir}/lib/steamclient.so" - fi - fn_fix_msg_end -fi - if [ ! -f "${servercfgfullpath}" ]; then fn_fix_msg_start fixname="copy config" diff --git a/lgsm/functions/fix_cs.sh b/lgsm/functions/fix_cs.sh deleted file mode 100644 index ea18702b3..000000000 --- a/lgsm/functions/fix_cs.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -# LinuxGSM fix_cs.sh function -# Author: Christian Birk -# Website: https://linuxgsm.com -# Description: Resolves various issues with Counter Strike. - -functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" - -# steamclient.so x86 fix. -if [ ! -f "${serverfiles}/steamclient.so" ]; then - fixname="steamclient.so x86" - fn_fix_msg_start - mkdir -p "${serverfiles}" - if [ -f "${HOME}/.steam/steamcmd/linux32/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${serverfiles}/steamclient.so" - elif [ -f "${steamcmddir}/linux32/steamclient.so" ]; then - cp "${steamcmddir}/linux32/steamclient.so" "${serverfiles}/steamclient.so" - fi - fn_fix_msg_end -fi diff --git a/lgsm/functions/fix_pz.sh b/lgsm/functions/fix_pz.sh deleted file mode 100644 index 0215a390f..000000000 --- a/lgsm/functions/fix_pz.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -# LinuxGSM fix_pz.sh function -# Author: Christian Birk -# Website: https://linuxgsm.com -# Description: Resolves various issues with Project Zomboid. - -functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" - -# steamclient.so x86 fix. -if [ ! -f "${serverfiles}/linux32/steamclient.so" ]; then - fixname="steamclient.so x86" - fn_fix_msg_start - mkdir -p "${serverfiles}/linux32" - if [ -f "${HOME}/.steam/steamcmd/linux32/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${serverfiles}/linux32/steamclient.so" - elif [ -f "${steamcmddir}/linux32/steamclient.so" ]; then - cp "${steamcmddir}/linux32/steamclient.so" "${serverfiles}/linux32/steamclient.so" - fi - fn_fix_msg_end -fi - -# steamclient.so x86_64 fix. -if [ ! -f "${serverfiles}/linux64/steamclient.so" ]; then - fixname="steamclient.so x86_64" - fn_fix_msg_start - mkdir -p "${serverfiles}/linux64" - if [ -f "${HOME}/.steam/steamcmd/linux64/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux64/steamclient.so" "${serverfiles}/linux64/steamclient.so" - elif [ -f "${steamcmddir}/linux64/steamclient.so" ]; then - cp "${steamcmddir}/linux64/steamclient.so" "${serverfiles}/linux64/steamclient.so" - fi - fn_fix_msg_end -fi diff --git a/lgsm/functions/fix_ss3.sh b/lgsm/functions/fix_ss3.sh index 76de64471..b19ba6f17 100644 --- a/lgsm/functions/fix_ss3.sh +++ b/lgsm/functions/fix_ss3.sh @@ -7,12 +7,10 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" # Fixes: https://steamcommunity.com/app/41070/discussions/0/353916981477716386/ -if [ ! -f "${serverfiles}/Bin/steamclient.so" ]||[ "$(diff "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${serverfiles}/Bin/steamclient.so" 2>/dev/null)" ]; then - fixname="steamclient.so" - fn_fix_msg_start - mkdir -p "${serverfiles}/Bin" - cp -f "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${serverfiles}/Bin/steamclient.so" - fn_fix_msg_end +if [ -f "${serverfiles}/Bin/steamclient.so" ] && [ "$(diff "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${serverfiles}/Bin/steamclient.so" 2>/dev/null)" ]; then + # delete old steamclient.so file + rm -f "${serverfiles}/Bin/steamclient.so" + fn_fix_steamclient_so "32" "${serverfiles}/Bin" fi # Fixes: .steam/bin32/libsteam.so: cannot open shared object file: No such file or directory diff --git a/lgsm/functions/fix_steamcmd.sh b/lgsm/functions/fix_steamcmd.sh index 6080c2065..62245127b 100644 --- a/lgsm/functions/fix_steamcmd.sh +++ b/lgsm/functions/fix_steamcmd.sh @@ -6,6 +6,45 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" +# function to simplify the steamclient.so fix +# example +# fn_fix_steamclient_so 32|64 (bit) "${serverfiles}/linux32/" +fn_fix_steamclient_so(){ + # $1 type of fix 32 or 64 as possible values + # $2 as destination where the lib will be copied to + if [ "$1" == "32" ]; then + # steamclient.so x86 fix. + if [ ! -f "${2}/steamclient.so" ]; then + fixname="steamclient.so x86" + fn_fix_msg_start + if [ ! -d "${2}" ]; then + mkdir -p "${2}" + fi + if [ -f "${HOME}/.steam/steamcmd/linux32/steamclient.so" ]; then + cp "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${2}/steamclient.so" + elif [ -f "${steamcmddir}/linux32/steamclient.so" ]; then + cp "${steamcmddir}/linux32/steamclient.so" "${2}/steamclient.so" + fi + fn_fix_msg_end + fi + elif [ "$1" == "64" ]; then + # steamclient.so x86_64 fix. + if [ ! -f "${2}/steamclient.so" ]; then + fixname="steamclient.so x86_64" + fn_fix_msg_start + if [ ! -d "${2}" ]; then + mkdir -p "${2}" + fi + if [ -f "${HOME}/.steam/steamcmd/linux64/steamclient.so" ]; then + cp "${HOME}/.steam/steamcmd/linux64/steamclient.so" "${2}/steamclient.so" + elif [ -f "${steamcmddir}/linux64/steamclient.so" ]; then + cp "${steamcmddir}/linux64/steamclient.so" "${2}/steamclient.so" + fi + fn_fix_msg_end + fi + fi +} + # Helps fix: [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam,or a local steamclient.so. if [ ! -f "${HOME}/.steam/sdk64/steamclient.so" ]; then fixname="steamclient.so sdk64" @@ -31,3 +70,24 @@ if [ ! -f "${HOME}/.steam/sdk32/steamclient.so" ]; then fi fn_fix_msg_end fi + +# steamclient.so fixes +if [ "${shortname}" == "bo" ]; then + fn_fix_steamclient_so "32" "${serverfiles}/BODS_Data/Plugins/x86" + fn_fix_steamclient_so "64" "${serverfiles}/BODS_Data/Plugins/x86_64" +elif [ "${shortname}" == "cmw" ]; then + fn_fix_steamclient_so "32" "${executabledir}/lib" +elif [ "${shortname}" == "cs" ]; then + fn_fix_steamclient_so "32" "${serverfiles}" +elif [ "${shortname}" == "pz" ]; then + fn_fix_steamclient_so "32" "${serverfiles}/linux32" + fn_fix_steamclient_so "64" "${serverfiles}/linux64" +elif [ "${shortname}" == "ss3" ]; then + fn_fix_steamclient_so "32" "${serverfiles}/Bin" +elif [ "${shortname}" == "tu" ];then + fn_fix_steamclient_so "64" "${executabledir}" +elif [ "${shortname}" == "unt" ]; then + fn_fix_steamclient_so "64" "${serverfiles}" +elif [ "${shortname}" == "wurm" ]; then + fn_fix_steamclient_so "64" "${serverfiles}/nativelibs" +fi diff --git a/lgsm/functions/fix_tu.sh b/lgsm/functions/fix_tu.sh deleted file mode 100644 index 96fec4b52..000000000 --- a/lgsm/functions/fix_tu.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -# LinuxGSM fix_tu.sh function -# Author: Daniel Gibbs -# Website: https://linuxgsm.com -# Description: Resolves various issues with Tower Unite. - -functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" - -# steamclient.so x86_64 fix. -if [ ! -f "${executabledir}/steamclient.so" ]; then - fixname="steamclient.so x86_64" - fn_fix_msg_start - mkdir -p "${executabledir}" - if [ -f "${HOME}/.steam/steamcmd/linux64/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux64/steamclient.so" "${executabledir}/steamclient.so" - elif [ -f "${steamcmddir}/linux64/steamclient.so" ]; then - cp "${steamcmddir}/linux64/steamclient.so" "${executabledir}/steamclient.so" - fi - fn_fix_msg_end -fi diff --git a/lgsm/functions/fix_unt.sh b/lgsm/functions/fix_unt.sh index a46cbf847..d030ef318 100644 --- a/lgsm/functions/fix_unt.sh +++ b/lgsm/functions/fix_unt.sh @@ -7,16 +7,3 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${serverfiles}:${serverfiles}/Unturned_Headless_Data/Plugins/x86_64" - -# steamclient.so x86_64 fix. -if [ ! -f "${serverfiles}/steamclient.so" ]; then - fixname="steamclient.so x86_64" - fn_fix_msg_start - mkdir -p "${serverfiles}" - if [ -f "${HOME}/.steam/steamcmd/linux64/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux64/steamclient.so" "${serverfiles}/steamclient.so" - elif [ -f "${steamcmddir}/linux64/steamclient.so" ]; then - cp "${steamcmddir}/linux64/steamclient.so" "${serverfiles}/steamclient.so" - fi - fn_fix_msg_end -fi diff --git a/lgsm/functions/fix_wurm.sh b/lgsm/functions/fix_wurm.sh index 713b32853..bf53e35b0 100644 --- a/lgsm/functions/fix_wurm.sh +++ b/lgsm/functions/fix_wurm.sh @@ -6,19 +6,6 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -# steamclient.so x86_64 fix. -if [ ! -f "${serverfiles}/nativelibs/steamclient.so" ]; then - fixname="steamclient.so x86_64" - fn_fix_msg_start - mkdir -p "${serverfiles}/nativelibs" - if [ -f "${HOME}/.steam/steamcmd/linux64/steamclient.so" ]; then - cp "${HOME}/.steam/steamcmd/linux64/steamclient.so" "${serverfiles}/nativelibs/steamclient.so" - elif [ -f "${steamcmddir}/linux64/steamclient.so" ]; then - cp "${steamcmddir}/linux64/steamclient.so" "${serverfiles}/nativelibs/steamclient.so" - fi - fn_fix_msg_end -fi - # First run requires start with no parms. # After first run new dirs are created. if [ ! -d "${serverfiles}/Creative" ]; then From ee515b7786642ad20ba09a0a22a5bbe6c18a6b4c Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 20 Sep 2020 14:58:28 +0100 Subject: [PATCH 07/70] feat(alerts): add rocket.chat and alerts refactor (#3051) * update linuxgsm alert logo * add Rocket.chat alert option * Refactor of post details by removing pastebin and hastebin * Improved alert standardisation Co-authored-by: Alasdair Haig Co-authored-by: Alasdair Haig Co-authored-by: AlasdairHaig --- .../config-lgsm/acserver/_default.cfg | 12 +- .../config-lgsm/ahl2server/_default.cfg | 12 +- .../config-lgsm/ahlserver/_default.cfg | 12 +- .../config-lgsm/arkserver/_default.cfg | 12 +- .../config-lgsm/arma3server/_default.cfg | 12 +- .../config-lgsm/avserver/_default.cfg | 12 +- .../config-lgsm/bb2server/_default.cfg | 12 +- .../config-lgsm/bbserver/_default.cfg | 12 +- .../config-lgsm/bdserver/_default.cfg | 12 +- .../config-lgsm/bf1942server/_default.cfg | 12 +- .../config-lgsm/bfvserver/_default.cfg | 12 +- .../config-lgsm/bmdmserver/_default.cfg | 12 +- .../config-lgsm/boserver/_default.cfg | 12 +- .../config-lgsm/bsserver/_default.cfg | 12 +- .../config-lgsm/bt1944server/_default.cfg | 12 +- .../config-lgsm/btserver/_default.cfg | 12 +- .../config-lgsm/ccserver/_default.cfg | 12 +- .../config-lgsm/cmwserver/_default.cfg | 12 +- .../config-lgsm/cod2server/_default.cfg | 12 +- .../config-lgsm/cod4server/_default.cfg | 12 +- .../config-lgsm/codserver/_default.cfg | 12 +- .../config-lgsm/coduoserver/_default.cfg | 12 +- .../config-lgsm/codwawserver/_default.cfg | 12 +- .../config-lgsm/csczserver/_default.cfg | 12 +- .../config-lgsm/csgoserver/_default.cfg | 12 +- .../config-lgsm/csserver/_default.cfg | 12 +- .../config-lgsm/cssserver/_default.cfg | 12 +- .../config-lgsm/dabserver/_default.cfg | 12 +- .../config-lgsm/dmcserver/_default.cfg | 12 +- .../config-lgsm/dodserver/_default.cfg | 12 +- .../config-lgsm/dodsserver/_default.cfg | 12 +- .../config-lgsm/doiserver/_default.cfg | 12 +- .../config-lgsm/dstserver/_default.cfg | 12 +- .../config-lgsm/dysserver/_default.cfg | 12 +- .../config-lgsm/ecoserver/_default.cfg | 12 +- .../config-lgsm/emserver/_default.cfg | 12 +- .../config-lgsm/etlserver/_default.cfg | 12 +- .../config-lgsm/fctrserver/_default.cfg | 12 +- .../config-lgsm/fofserver/_default.cfg | 12 +- .../config-lgsm/gesserver/_default.cfg | 12 +- .../config-lgsm/gmodserver/_default.cfg | 12 +- .../config-lgsm/hl2dmserver/_default.cfg | 12 +- .../config-lgsm/hldmserver/_default.cfg | 12 +- .../config-lgsm/hldmsserver/_default.cfg | 12 +- .../config-lgsm/hwserver/_default.cfg | 12 +- .../config-lgsm/insserver/_default.cfg | 12 +- .../config-lgsm/inssserver/_default.cfg | 12 +- .../config-lgsm/iosserver/_default.cfg | 12 +- .../config-lgsm/jc2server/_default.cfg | 12 +- .../config-lgsm/jc3server/_default.cfg | 12 +- .../config-lgsm/jk2server/_default.cfg | 12 +- .../config-lgsm/kf2server/_default.cfg | 12 +- .../config-lgsm/kfserver/_default.cfg | 12 +- .../config-lgsm/l4d2server/_default.cfg | 12 +- .../config-lgsm/l4dserver/_default.cfg | 12 +- .../config-lgsm/mcbserver/_default.cfg | 12 +- .../config-lgsm/mcserver/_default.cfg | 12 +- .../config-lgsm/mhserver/_default.cfg | 12 +- .../config-lgsm/mohaaserver/_default.cfg | 12 +- .../config-lgsm/momserver/_default.cfg | 12 +- .../config-lgsm/mtaserver/_default.cfg | 12 +- .../config-lgsm/mumbleserver/_default.cfg | 12 +- .../config-lgsm/ndserver/_default.cfg | 12 +- .../config-lgsm/nmrihserver/_default.cfg | 12 +- .../config-lgsm/ns2cserver/_default.cfg | 12 +- .../config-lgsm/ns2server/_default.cfg | 12 +- .../config-lgsm/nsserver/_default.cfg | 12 +- .../config-lgsm/onsetserver/_default.cfg | 12 +- .../config-lgsm/opforserver/_default.cfg | 12 +- .../config-lgsm/pcserver/_default.cfg | 12 +- .../config-lgsm/pstbsserver/_default.cfg | 12 +- .../config-lgsm/pvkiiserver/_default.cfg | 12 +- .../config-lgsm/pzserver/_default.cfg | 12 +- .../config-lgsm/q2server/_default.cfg | 12 +- .../config-lgsm/q3server/_default.cfg | 12 +- .../config-lgsm/qlserver/_default.cfg | 12 +- .../config-lgsm/qwserver/_default.cfg | 12 +- .../config-lgsm/ricochetserver/_default.cfg | 12 +- .../config-lgsm/roserver/_default.cfg | 12 +- .../config-lgsm/rtcwserver/_default.cfg | 12 +- .../config-lgsm/rustserver/_default.cfg | 12 +- .../config-lgsm/rwserver/_default.cfg | 12 +- .../config-lgsm/sampserver/_default.cfg | 12 +- .../config-lgsm/sbotsserver/_default.cfg | 12 +- .../config-lgsm/sbserver/_default.cfg | 12 +- .../config-lgsm/sdtdserver/_default.cfg | 12 +- .../config-lgsm/sfcserver/_default.cfg | 12 +- .../config-lgsm/sof2server/_default.cfg | 12 +- .../config-lgsm/solserver/_default.cfg | 12 +- .../config-lgsm/squadserver/_default.cfg | 12 +- .../config-lgsm/ss3server/_default.cfg | 12 +- .../config-lgsm/stserver/_default.cfg | 12 +- .../config-lgsm/svenserver/_default.cfg | 12 +- .../config-lgsm/terrariaserver/_default.cfg | 12 +- .../config-lgsm/tf2server/_default.cfg | 12 +- .../config-lgsm/tfcserver/_default.cfg | 12 +- .../config-lgsm/ts3server/_default.cfg | 12 +- .../config-lgsm/tsserver/_default.cfg | 12 +- .../config-lgsm/tuserver/_default.cfg | 12 +- .../config-lgsm/twserver/_default.cfg | 12 +- .../config-lgsm/untserver/_default.cfg | 12 +- .../config-lgsm/ut2k4server/_default.cfg | 12 +- .../config-lgsm/ut3server/_default.cfg | 12 +- .../config-lgsm/ut99server/_default.cfg | 12 +- .../config-lgsm/utserver/_default.cfg | 12 +- .../config-lgsm/vsserver/_default.cfg | 12 +- .../config-lgsm/wetserver/_default.cfg | 12 +- .../config-lgsm/wfserver/_default.cfg | 12 +- .../config-lgsm/wurmserver/_default.cfg | 12 +- .../config-lgsm/zmrserver/_default.cfg | 12 +- .../config-lgsm/zpsserver/_default.cfg | 12 +- lgsm/data/alert_discord_logo.jpg | Bin 0 -> 34529 bytes lgsm/data/alert_discord_logo.png | Bin 22166 -> 0 bytes lgsm/functions/README.md | 0 lgsm/functions/alert.sh | 12 ++ lgsm/functions/alert_discord.sh | 18 ++- lgsm/functions/alert_email.sh | 2 +- lgsm/functions/alert_ifttt.sh | 6 +- lgsm/functions/alert_mailgun.sh | 0 lgsm/functions/alert_pushbullet.sh | 4 +- lgsm/functions/alert_pushover.sh | 4 +- lgsm/functions/alert_rocketchat.sh | 53 +++++++++ lgsm/functions/alert_slack.sh | 103 +++++++++--------- lgsm/functions/alert_telegram.sh | 4 +- lgsm/functions/check.sh | 4 +- lgsm/functions/check_config.sh | 0 lgsm/functions/check_deps.sh | 0 lgsm/functions/check_executable.sh | 0 lgsm/functions/check_glibc.sh | 0 lgsm/functions/check_ip.sh | 0 lgsm/functions/check_last_update.sh | 0 lgsm/functions/check_logs.sh | 0 lgsm/functions/check_permissions.sh | 0 lgsm/functions/check_root.sh | 0 lgsm/functions/check_status.sh | 0 lgsm/functions/check_steamcmd.sh | 0 lgsm/functions/check_system_dir.sh | 0 lgsm/functions/check_system_requirements.sh | 0 lgsm/functions/check_tmuxception.sh | 0 lgsm/functions/check_version.sh | 0 lgsm/functions/command_backup.sh | 0 lgsm/functions/command_console.sh | 0 lgsm/functions/command_debug.sh | 0 lgsm/functions/command_details.sh | 0 lgsm/functions/command_dev_clear_functions.sh | 0 lgsm/functions/command_dev_debug.sh | 0 lgsm/functions/command_dev_detect_deps.sh | 0 lgsm/functions/command_dev_detect_glibc.sh | 0 lgsm/functions/command_dev_detect_ldd.sh | 0 lgsm/functions/command_dev_query_raw.sh | 0 lgsm/functions/command_donate.sh | 0 lgsm/functions/command_fastdl.sh | 0 lgsm/functions/command_install.sh | 0 .../command_install_resources_mta.sh | 0 lgsm/functions/command_mods_install.sh | 0 lgsm/functions/command_mods_remove.sh | 0 lgsm/functions/command_mods_update.sh | 0 lgsm/functions/command_monitor.sh | 0 lgsm/functions/command_postdetails.sh | 76 ++----------- lgsm/functions/command_restart.sh | 0 lgsm/functions/command_start.sh | 0 lgsm/functions/command_test_alert.sh | 0 lgsm/functions/command_ts3_server_pass.sh | 0 lgsm/functions/command_update.sh | 0 lgsm/functions/command_update_functions.sh | 0 lgsm/functions/command_update_linuxgsm.sh | 0 lgsm/functions/command_validate.sh | 0 lgsm/functions/command_wipe.sh | 0 lgsm/functions/compress_unreal2_maps.sh | 0 lgsm/functions/compress_ut99_maps.sh | 0 lgsm/functions/core_dl.sh | 0 lgsm/functions/core_exit.sh | 0 lgsm/functions/core_functions.sh | 5 + lgsm/functions/core_getopt.sh | 0 lgsm/functions/core_legacy.sh | 0 lgsm/functions/core_logs.sh | 0 lgsm/functions/core_messages.sh | 0 lgsm/functions/core_trap.sh | 0 lgsm/functions/fix.sh | 0 lgsm/functions/fix_ark.sh | 0 lgsm/functions/fix_arma3.sh | 0 lgsm/functions/fix_av.sh | 0 lgsm/functions/fix_cmw.sh | 0 lgsm/functions/fix_csgo.sh | 0 lgsm/functions/fix_dst.sh | 0 lgsm/functions/fix_ges.sh | 0 lgsm/functions/fix_hw.sh | 0 lgsm/functions/fix_ins.sh | 0 lgsm/functions/fix_kf.sh | 0 lgsm/functions/fix_kf2.sh | 0 lgsm/functions/fix_mcb.sh | 0 lgsm/functions/fix_mta.sh | 0 lgsm/functions/fix_nmrih.sh | 0 lgsm/functions/fix_onset.sh | 0 lgsm/functions/fix_ro.sh | 0 lgsm/functions/fix_rust.sh | 0 lgsm/functions/fix_rw.sh | 0 lgsm/functions/fix_sdtd.sh | 0 lgsm/functions/fix_sfc.sh | 0 lgsm/functions/fix_sof2.sh | 0 lgsm/functions/fix_ss3.sh | 0 lgsm/functions/fix_steamcmd.sh | 0 lgsm/functions/fix_terraria.sh | 0 lgsm/functions/fix_tf2.sh | 0 lgsm/functions/fix_ts3.sh | 0 lgsm/functions/fix_tu.sh | 0 lgsm/functions/fix_unt.sh | 0 lgsm/functions/fix_ut.sh | 0 lgsm/functions/fix_ut2k4.sh | 0 lgsm/functions/fix_ut3.sh | 0 lgsm/functions/fix_wurm.sh | 0 lgsm/functions/fix_zmr.sh | 0 lgsm/functions/info_config.sh | 0 lgsm/functions/info_distro.sh | 2 +- lgsm/functions/info_messages.sh | 17 +-- lgsm/functions/info_parms.sh | 0 lgsm/functions/info_stats.sh | 0 lgsm/functions/install_complete.sh | 0 lgsm/functions/install_config.sh | 0 lgsm/functions/install_dst_token.sh | 0 lgsm/functions/install_eula.sh | 0 lgsm/functions/install_factorio_save.sh | 0 lgsm/functions/install_gslt.sh | 0 lgsm/functions/install_header.sh | 0 lgsm/functions/install_logs.sh | 0 lgsm/functions/install_modules.sh | 0 lgsm/functions/install_mta_resources.sh | 0 lgsm/functions/install_retry.sh | 0 lgsm/functions/install_server_dir.sh | 0 lgsm/functions/install_server_files.sh | 0 lgsm/functions/install_squad_license.sh | 0 lgsm/functions/install_stats.sh | 0 lgsm/functions/install_steamcmd.sh | 0 lgsm/functions/install_ts3db.sh | 0 lgsm/functions/install_ut2k4_key.sh | 0 lgsm/functions/mods_core.sh | 0 lgsm/functions/mods_list.sh | 0 lgsm/functions/query_gamedig.sh | 0 lgsm/functions/query_gsquery.py | 0 lgsm/functions/update_factorio.sh | 0 lgsm/functions/update_minecraft.sh | 0 lgsm/functions/update_minecraft_bedrock.sh | 0 lgsm/functions/update_mta.sh | 0 lgsm/functions/update_mumble.sh | 0 lgsm/functions/update_ts3.sh | 0 tests/tests_defaultcfg/defaultcfg_1.txt | 5 +- 246 files changed, 946 insertions(+), 701 deletions(-) create mode 100644 lgsm/data/alert_discord_logo.jpg delete mode 100644 lgsm/data/alert_discord_logo.png mode change 100644 => 100755 lgsm/functions/README.md mode change 100644 => 100755 lgsm/functions/alert.sh mode change 100644 => 100755 lgsm/functions/alert_discord.sh mode change 100644 => 100755 lgsm/functions/alert_email.sh mode change 100644 => 100755 lgsm/functions/alert_ifttt.sh mode change 100644 => 100755 lgsm/functions/alert_mailgun.sh mode change 100644 => 100755 lgsm/functions/alert_pushbullet.sh mode change 100644 => 100755 lgsm/functions/alert_pushover.sh create mode 100755 lgsm/functions/alert_rocketchat.sh mode change 100644 => 100755 lgsm/functions/alert_slack.sh mode change 100644 => 100755 lgsm/functions/alert_telegram.sh mode change 100644 => 100755 lgsm/functions/check.sh mode change 100644 => 100755 lgsm/functions/check_config.sh mode change 100644 => 100755 lgsm/functions/check_deps.sh mode change 100644 => 100755 lgsm/functions/check_executable.sh mode change 100644 => 100755 lgsm/functions/check_glibc.sh mode change 100644 => 100755 lgsm/functions/check_ip.sh mode change 100644 => 100755 lgsm/functions/check_last_update.sh mode change 100644 => 100755 lgsm/functions/check_logs.sh mode change 100644 => 100755 lgsm/functions/check_permissions.sh mode change 100644 => 100755 lgsm/functions/check_root.sh mode change 100644 => 100755 lgsm/functions/check_status.sh mode change 100644 => 100755 lgsm/functions/check_steamcmd.sh mode change 100644 => 100755 lgsm/functions/check_system_dir.sh mode change 100644 => 100755 lgsm/functions/check_system_requirements.sh mode change 100644 => 100755 lgsm/functions/check_tmuxception.sh mode change 100644 => 100755 lgsm/functions/check_version.sh mode change 100644 => 100755 lgsm/functions/command_backup.sh mode change 100644 => 100755 lgsm/functions/command_console.sh mode change 100644 => 100755 lgsm/functions/command_debug.sh mode change 100644 => 100755 lgsm/functions/command_details.sh mode change 100644 => 100755 lgsm/functions/command_dev_clear_functions.sh mode change 100644 => 100755 lgsm/functions/command_dev_debug.sh mode change 100644 => 100755 lgsm/functions/command_dev_detect_deps.sh mode change 100644 => 100755 lgsm/functions/command_dev_detect_glibc.sh mode change 100644 => 100755 lgsm/functions/command_dev_detect_ldd.sh mode change 100644 => 100755 lgsm/functions/command_dev_query_raw.sh mode change 100644 => 100755 lgsm/functions/command_donate.sh mode change 100644 => 100755 lgsm/functions/command_fastdl.sh mode change 100644 => 100755 lgsm/functions/command_install.sh mode change 100644 => 100755 lgsm/functions/command_install_resources_mta.sh mode change 100644 => 100755 lgsm/functions/command_mods_install.sh mode change 100644 => 100755 lgsm/functions/command_mods_remove.sh mode change 100644 => 100755 lgsm/functions/command_mods_update.sh mode change 100644 => 100755 lgsm/functions/command_monitor.sh mode change 100644 => 100755 lgsm/functions/command_postdetails.sh mode change 100644 => 100755 lgsm/functions/command_restart.sh mode change 100644 => 100755 lgsm/functions/command_start.sh mode change 100644 => 100755 lgsm/functions/command_test_alert.sh mode change 100644 => 100755 lgsm/functions/command_ts3_server_pass.sh mode change 100644 => 100755 lgsm/functions/command_update.sh mode change 100644 => 100755 lgsm/functions/command_update_functions.sh mode change 100644 => 100755 lgsm/functions/command_update_linuxgsm.sh mode change 100644 => 100755 lgsm/functions/command_validate.sh mode change 100644 => 100755 lgsm/functions/command_wipe.sh mode change 100644 => 100755 lgsm/functions/compress_unreal2_maps.sh mode change 100644 => 100755 lgsm/functions/compress_ut99_maps.sh mode change 100644 => 100755 lgsm/functions/core_dl.sh mode change 100644 => 100755 lgsm/functions/core_exit.sh mode change 100644 => 100755 lgsm/functions/core_functions.sh mode change 100644 => 100755 lgsm/functions/core_getopt.sh mode change 100644 => 100755 lgsm/functions/core_legacy.sh mode change 100644 => 100755 lgsm/functions/core_logs.sh mode change 100644 => 100755 lgsm/functions/core_messages.sh mode change 100644 => 100755 lgsm/functions/core_trap.sh mode change 100644 => 100755 lgsm/functions/fix.sh mode change 100644 => 100755 lgsm/functions/fix_ark.sh mode change 100644 => 100755 lgsm/functions/fix_arma3.sh mode change 100644 => 100755 lgsm/functions/fix_av.sh mode change 100644 => 100755 lgsm/functions/fix_cmw.sh mode change 100644 => 100755 lgsm/functions/fix_csgo.sh mode change 100644 => 100755 lgsm/functions/fix_dst.sh mode change 100644 => 100755 lgsm/functions/fix_ges.sh mode change 100644 => 100755 lgsm/functions/fix_hw.sh mode change 100644 => 100755 lgsm/functions/fix_ins.sh mode change 100644 => 100755 lgsm/functions/fix_kf.sh mode change 100644 => 100755 lgsm/functions/fix_kf2.sh mode change 100644 => 100755 lgsm/functions/fix_mcb.sh mode change 100644 => 100755 lgsm/functions/fix_mta.sh mode change 100644 => 100755 lgsm/functions/fix_nmrih.sh mode change 100644 => 100755 lgsm/functions/fix_onset.sh mode change 100644 => 100755 lgsm/functions/fix_ro.sh mode change 100644 => 100755 lgsm/functions/fix_rust.sh mode change 100644 => 100755 lgsm/functions/fix_rw.sh mode change 100644 => 100755 lgsm/functions/fix_sdtd.sh mode change 100644 => 100755 lgsm/functions/fix_sfc.sh mode change 100644 => 100755 lgsm/functions/fix_sof2.sh mode change 100644 => 100755 lgsm/functions/fix_ss3.sh mode change 100644 => 100755 lgsm/functions/fix_steamcmd.sh mode change 100644 => 100755 lgsm/functions/fix_terraria.sh mode change 100644 => 100755 lgsm/functions/fix_tf2.sh mode change 100644 => 100755 lgsm/functions/fix_ts3.sh mode change 100644 => 100755 lgsm/functions/fix_tu.sh mode change 100644 => 100755 lgsm/functions/fix_unt.sh mode change 100644 => 100755 lgsm/functions/fix_ut.sh mode change 100644 => 100755 lgsm/functions/fix_ut2k4.sh mode change 100644 => 100755 lgsm/functions/fix_ut3.sh mode change 100644 => 100755 lgsm/functions/fix_wurm.sh mode change 100644 => 100755 lgsm/functions/fix_zmr.sh mode change 100644 => 100755 lgsm/functions/info_config.sh mode change 100644 => 100755 lgsm/functions/info_distro.sh mode change 100644 => 100755 lgsm/functions/info_messages.sh mode change 100644 => 100755 lgsm/functions/info_parms.sh mode change 100644 => 100755 lgsm/functions/info_stats.sh mode change 100644 => 100755 lgsm/functions/install_complete.sh mode change 100644 => 100755 lgsm/functions/install_config.sh mode change 100644 => 100755 lgsm/functions/install_dst_token.sh mode change 100644 => 100755 lgsm/functions/install_eula.sh mode change 100644 => 100755 lgsm/functions/install_factorio_save.sh mode change 100644 => 100755 lgsm/functions/install_gslt.sh mode change 100644 => 100755 lgsm/functions/install_header.sh mode change 100644 => 100755 lgsm/functions/install_logs.sh mode change 100644 => 100755 lgsm/functions/install_modules.sh mode change 100644 => 100755 lgsm/functions/install_mta_resources.sh mode change 100644 => 100755 lgsm/functions/install_retry.sh mode change 100644 => 100755 lgsm/functions/install_server_dir.sh mode change 100644 => 100755 lgsm/functions/install_server_files.sh mode change 100644 => 100755 lgsm/functions/install_squad_license.sh mode change 100644 => 100755 lgsm/functions/install_stats.sh mode change 100644 => 100755 lgsm/functions/install_steamcmd.sh mode change 100644 => 100755 lgsm/functions/install_ts3db.sh mode change 100644 => 100755 lgsm/functions/install_ut2k4_key.sh mode change 100644 => 100755 lgsm/functions/mods_core.sh mode change 100644 => 100755 lgsm/functions/mods_list.sh mode change 100644 => 100755 lgsm/functions/query_gamedig.sh mode change 100644 => 100755 lgsm/functions/query_gsquery.py mode change 100644 => 100755 lgsm/functions/update_factorio.sh mode change 100644 => 100755 lgsm/functions/update_minecraft.sh mode change 100644 => 100755 lgsm/functions/update_minecraft_bedrock.sh mode change 100644 => 100755 lgsm/functions/update_mta.sh mode change 100644 => 100755 lgsm/functions/update_mumble.sh mode change 100644 => 100755 lgsm/functions/update_ts3.sh diff --git a/lgsm/config-default/config-lgsm/acserver/_default.cfg b/lgsm/config-default/config-lgsm/acserver/_default.cfg index f5d713d11..f64c34ac3 100644 --- a/lgsm/config-default/config-lgsm/acserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/acserver/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ahl2server/_default.cfg b/lgsm/config-default/config-lgsm/ahl2server/_default.cfg index 11640872b..505076703 100644 --- a/lgsm/config-default/config-lgsm/ahl2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ahl2server/_default.cfg @@ -41,8 +41,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -76,14 +74,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ahlserver/_default.cfg b/lgsm/config-default/config-lgsm/ahlserver/_default.cfg index 692557c81..9e52094a0 100644 --- a/lgsm/config-default/config-lgsm/ahlserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ahlserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/arkserver/_default.cfg b/lgsm/config-default/config-lgsm/arkserver/_default.cfg index 54d2ef29c..f289cd1fb 100644 --- a/lgsm/config-default/config-lgsm/arkserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/arkserver/_default.cfg @@ -39,8 +39,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -74,14 +72,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/arma3server/_default.cfg b/lgsm/config-default/config-lgsm/arma3server/_default.cfg index 08d9afa3b..acdbedb59 100644 --- a/lgsm/config-default/config-lgsm/arma3server/_default.cfg +++ b/lgsm/config-default/config-lgsm/arma3server/_default.cfg @@ -52,8 +52,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -87,14 +85,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/avserver/_default.cfg b/lgsm/config-default/config-lgsm/avserver/_default.cfg index 047fbe8b0..a8e6fb049 100644 --- a/lgsm/config-default/config-lgsm/avserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/avserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/bb2server/_default.cfg b/lgsm/config-default/config-lgsm/bb2server/_default.cfg index a71b69bd1..2f35f1c9d 100644 --- a/lgsm/config-default/config-lgsm/bb2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/bb2server/_default.cfg @@ -42,8 +42,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -77,14 +75,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/bbserver/_default.cfg b/lgsm/config-default/config-lgsm/bbserver/_default.cfg index ae207ff1b..573c9964b 100644 --- a/lgsm/config-default/config-lgsm/bbserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bbserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/bdserver/_default.cfg b/lgsm/config-default/config-lgsm/bdserver/_default.cfg index d4f0fc913..746169c5b 100644 --- a/lgsm/config-default/config-lgsm/bdserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bdserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/bf1942server/_default.cfg b/lgsm/config-default/config-lgsm/bf1942server/_default.cfg index 435a5d8c7..6a498aaaf 100644 --- a/lgsm/config-default/config-lgsm/bf1942server/_default.cfg +++ b/lgsm/config-default/config-lgsm/bf1942server/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/bfvserver/_default.cfg b/lgsm/config-default/config-lgsm/bfvserver/_default.cfg index 69b6d5f1e..a62b9cdcd 100644 --- a/lgsm/config-default/config-lgsm/bfvserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bfvserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg b/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg index e6b7ef772..b9ebbce02 100644 --- a/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg @@ -42,8 +42,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -77,14 +75,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/boserver/_default.cfg b/lgsm/config-default/config-lgsm/boserver/_default.cfg index e7de73d0f..907f72a4c 100644 --- a/lgsm/config-default/config-lgsm/boserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/boserver/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/bsserver/_default.cfg b/lgsm/config-default/config-lgsm/bsserver/_default.cfg index cf08b5161..f23980d49 100644 --- a/lgsm/config-default/config-lgsm/bsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bsserver/_default.cfg @@ -46,8 +46,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -81,14 +79,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/bt1944server/_default.cfg b/lgsm/config-default/config-lgsm/bt1944server/_default.cfg index d91e8a011..84b059dbe 100644 --- a/lgsm/config-default/config-lgsm/bt1944server/_default.cfg +++ b/lgsm/config-default/config-lgsm/bt1944server/_default.cfg @@ -34,8 +34,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -69,14 +67,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/btserver/_default.cfg b/lgsm/config-default/config-lgsm/btserver/_default.cfg index b18c5cf47..c22a70533 100644 --- a/lgsm/config-default/config-lgsm/btserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/btserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ccserver/_default.cfg b/lgsm/config-default/config-lgsm/ccserver/_default.cfg index 6779aa7f3..202535ce1 100644 --- a/lgsm/config-default/config-lgsm/ccserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ccserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/cmwserver/_default.cfg b/lgsm/config-default/config-lgsm/cmwserver/_default.cfg index dd86deeef..3f3e29c8b 100644 --- a/lgsm/config-default/config-lgsm/cmwserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/cmwserver/_default.cfg @@ -38,8 +38,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -73,14 +71,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/cod2server/_default.cfg b/lgsm/config-default/config-lgsm/cod2server/_default.cfg index f2f0d465a..9dfb852e5 100644 --- a/lgsm/config-default/config-lgsm/cod2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/cod2server/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/cod4server/_default.cfg b/lgsm/config-default/config-lgsm/cod4server/_default.cfg index cdda7d813..b5ee4bc63 100644 --- a/lgsm/config-default/config-lgsm/cod4server/_default.cfg +++ b/lgsm/config-default/config-lgsm/cod4server/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/codserver/_default.cfg b/lgsm/config-default/config-lgsm/codserver/_default.cfg index 0eeb9e724..377c2e6e4 100644 --- a/lgsm/config-default/config-lgsm/codserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/codserver/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/coduoserver/_default.cfg b/lgsm/config-default/config-lgsm/coduoserver/_default.cfg index cd053b8a6..0f179903a 100644 --- a/lgsm/config-default/config-lgsm/coduoserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/coduoserver/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/codwawserver/_default.cfg b/lgsm/config-default/config-lgsm/codwawserver/_default.cfg index 84b3ebfb0..1430387bc 100644 --- a/lgsm/config-default/config-lgsm/codwawserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/codwawserver/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/csczserver/_default.cfg b/lgsm/config-default/config-lgsm/csczserver/_default.cfg index 1db105d3c..a0fb7fea8 100644 --- a/lgsm/config-default/config-lgsm/csczserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/csczserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/csgoserver/_default.cfg b/lgsm/config-default/config-lgsm/csgoserver/_default.cfg index 12ef8aa90..2ed74049e 100644 --- a/lgsm/config-default/config-lgsm/csgoserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/csgoserver/_default.cfg @@ -62,8 +62,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -97,14 +95,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/csserver/_default.cfg b/lgsm/config-default/config-lgsm/csserver/_default.cfg index 924c88539..a5661c890 100644 --- a/lgsm/config-default/config-lgsm/csserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/csserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/cssserver/_default.cfg b/lgsm/config-default/config-lgsm/cssserver/_default.cfg index 1ca7dffa6..56f430bb6 100644 --- a/lgsm/config-default/config-lgsm/cssserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/cssserver/_default.cfg @@ -42,8 +42,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -77,14 +75,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/dabserver/_default.cfg b/lgsm/config-default/config-lgsm/dabserver/_default.cfg index b45dfe281..ea6bcf390 100644 --- a/lgsm/config-default/config-lgsm/dabserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dabserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/dmcserver/_default.cfg b/lgsm/config-default/config-lgsm/dmcserver/_default.cfg index c0b668901..8babab1dd 100644 --- a/lgsm/config-default/config-lgsm/dmcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dmcserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/dodserver/_default.cfg b/lgsm/config-default/config-lgsm/dodserver/_default.cfg index 34aff2abf..83b051930 100644 --- a/lgsm/config-default/config-lgsm/dodserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dodserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/dodsserver/_default.cfg b/lgsm/config-default/config-lgsm/dodsserver/_default.cfg index 95d47a168..3af945122 100644 --- a/lgsm/config-default/config-lgsm/dodsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dodsserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/doiserver/_default.cfg b/lgsm/config-default/config-lgsm/doiserver/_default.cfg index d27bd20a8..deb15b2dc 100644 --- a/lgsm/config-default/config-lgsm/doiserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/doiserver/_default.cfg @@ -38,8 +38,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -73,14 +71,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/dstserver/_default.cfg b/lgsm/config-default/config-lgsm/dstserver/_default.cfg index f31a0ea63..6e746fb83 100644 --- a/lgsm/config-default/config-lgsm/dstserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dstserver/_default.cfg @@ -40,8 +40,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -75,14 +73,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/dysserver/_default.cfg b/lgsm/config-default/config-lgsm/dysserver/_default.cfg index 13f841240..c45a12bee 100644 --- a/lgsm/config-default/config-lgsm/dysserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dysserver/_default.cfg @@ -42,8 +42,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -77,14 +75,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ecoserver/_default.cfg b/lgsm/config-default/config-lgsm/ecoserver/_default.cfg index 0d2f56a3c..c515595e2 100644 --- a/lgsm/config-default/config-lgsm/ecoserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ecoserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/emserver/_default.cfg b/lgsm/config-default/config-lgsm/emserver/_default.cfg index 1282de234..be13dac6b 100644 --- a/lgsm/config-default/config-lgsm/emserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/emserver/_default.cfg @@ -42,8 +42,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -77,14 +75,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/etlserver/_default.cfg b/lgsm/config-default/config-lgsm/etlserver/_default.cfg index 2f95fc37c..0d2bf1a8c 100644 --- a/lgsm/config-default/config-lgsm/etlserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/etlserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/fctrserver/_default.cfg b/lgsm/config-default/config-lgsm/fctrserver/_default.cfg index c2ce4cc7f..8a808f7f3 100644 --- a/lgsm/config-default/config-lgsm/fctrserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/fctrserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/fofserver/_default.cfg b/lgsm/config-default/config-lgsm/fofserver/_default.cfg index 41d3cd444..1452805b8 100644 --- a/lgsm/config-default/config-lgsm/fofserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/fofserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/gesserver/_default.cfg b/lgsm/config-default/config-lgsm/gesserver/_default.cfg index bb80be779..24f5f65bf 100644 --- a/lgsm/config-default/config-lgsm/gesserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/gesserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/gmodserver/_default.cfg b/lgsm/config-default/config-lgsm/gmodserver/_default.cfg index ee50916aa..1e8fb92aa 100644 --- a/lgsm/config-default/config-lgsm/gmodserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/gmodserver/_default.cfg @@ -53,8 +53,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -88,14 +86,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg b/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg index 814ccc2e1..f356b1238 100644 --- a/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/hldmserver/_default.cfg b/lgsm/config-default/config-lgsm/hldmserver/_default.cfg index b8e912f29..41b702789 100644 --- a/lgsm/config-default/config-lgsm/hldmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/hldmserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg b/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg index 10217a7a0..7c04267ad 100644 --- a/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/hwserver/_default.cfg b/lgsm/config-default/config-lgsm/hwserver/_default.cfg index 7e62fdc6b..eda9972d3 100644 --- a/lgsm/config-default/config-lgsm/hwserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/hwserver/_default.cfg @@ -48,8 +48,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -83,14 +81,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/insserver/_default.cfg b/lgsm/config-default/config-lgsm/insserver/_default.cfg index 246e04c6c..50e3e8721 100644 --- a/lgsm/config-default/config-lgsm/insserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/insserver/_default.cfg @@ -43,8 +43,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -78,14 +76,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/inssserver/_default.cfg b/lgsm/config-default/config-lgsm/inssserver/_default.cfg index 087b82696..07bc89a60 100644 --- a/lgsm/config-default/config-lgsm/inssserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/inssserver/_default.cfg @@ -44,8 +44,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -79,14 +77,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/iosserver/_default.cfg b/lgsm/config-default/config-lgsm/iosserver/_default.cfg index 35a245e24..c322ed383 100644 --- a/lgsm/config-default/config-lgsm/iosserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/iosserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/jc2server/_default.cfg b/lgsm/config-default/config-lgsm/jc2server/_default.cfg index d0de94c49..c57af02ea 100644 --- a/lgsm/config-default/config-lgsm/jc2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/jc2server/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/jc3server/_default.cfg b/lgsm/config-default/config-lgsm/jc3server/_default.cfg index ada06087a..e208a42f4 100644 --- a/lgsm/config-default/config-lgsm/jc3server/_default.cfg +++ b/lgsm/config-default/config-lgsm/jc3server/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/jk2server/_default.cfg b/lgsm/config-default/config-lgsm/jk2server/_default.cfg index 0933c8cba..cb42989a7 100644 --- a/lgsm/config-default/config-lgsm/jk2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/jk2server/_default.cfg @@ -32,8 +32,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://hastebin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,10 +69,14 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/kf2server/_default.cfg b/lgsm/config-default/config-lgsm/kf2server/_default.cfg index 6271a75ad..175e082ab 100644 --- a/lgsm/config-default/config-lgsm/kf2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/kf2server/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/kfserver/_default.cfg b/lgsm/config-default/config-lgsm/kfserver/_default.cfg index 9e45c4f16..0169f48d0 100644 --- a/lgsm/config-default/config-lgsm/kfserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/kfserver/_default.cfg @@ -41,8 +41,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -76,14 +74,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/l4d2server/_default.cfg b/lgsm/config-default/config-lgsm/l4d2server/_default.cfg index 1241957f1..718432852 100644 --- a/lgsm/config-default/config-lgsm/l4d2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/l4d2server/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/l4dserver/_default.cfg b/lgsm/config-default/config-lgsm/l4dserver/_default.cfg index f855de34e..beacac9bb 100644 --- a/lgsm/config-default/config-lgsm/l4dserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/l4dserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/mcbserver/_default.cfg b/lgsm/config-default/config-lgsm/mcbserver/_default.cfg index e357cf273..b894ade1d 100644 --- a/lgsm/config-default/config-lgsm/mcbserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mcbserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/mcserver/_default.cfg b/lgsm/config-default/config-lgsm/mcserver/_default.cfg index 7727afbec..92f25294c 100644 --- a/lgsm/config-default/config-lgsm/mcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mcserver/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/mhserver/_default.cfg b/lgsm/config-default/config-lgsm/mhserver/_default.cfg index 4be0c811e..c71081b89 100644 --- a/lgsm/config-default/config-lgsm/mhserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mhserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/mohaaserver/_default.cfg b/lgsm/config-default/config-lgsm/mohaaserver/_default.cfg index f6901c811..54bdb5a06 100644 --- a/lgsm/config-default/config-lgsm/mohaaserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mohaaserver/_default.cfg @@ -34,8 +34,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -69,14 +67,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/momserver/_default.cfg b/lgsm/config-default/config-lgsm/momserver/_default.cfg index 02640a7d3..7909b67e2 100644 --- a/lgsm/config-default/config-lgsm/momserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/momserver/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/mtaserver/_default.cfg b/lgsm/config-default/config-lgsm/mtaserver/_default.cfg index b1c739510..3a97169f8 100644 --- a/lgsm/config-default/config-lgsm/mtaserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mtaserver/_default.cfg @@ -33,8 +33,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -68,14 +66,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/mumbleserver/_default.cfg b/lgsm/config-default/config-lgsm/mumbleserver/_default.cfg index b0c105385..3e798e2ee 100644 --- a/lgsm/config-default/config-lgsm/mumbleserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mumbleserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ndserver/_default.cfg b/lgsm/config-default/config-lgsm/ndserver/_default.cfg index 52c7c9490..7ef270919 100644 --- a/lgsm/config-default/config-lgsm/ndserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ndserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg b/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg index c3a60a36e..41c057356 100644 --- a/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg @@ -42,8 +42,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -77,14 +75,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg b/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg index 3d6490232..1ccb9706e 100644 --- a/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg @@ -44,8 +44,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -79,14 +77,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ns2server/_default.cfg b/lgsm/config-default/config-lgsm/ns2server/_default.cfg index 187ae85d9..c132d539d 100644 --- a/lgsm/config-default/config-lgsm/ns2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ns2server/_default.cfg @@ -48,8 +48,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -83,14 +81,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/nsserver/_default.cfg b/lgsm/config-default/config-lgsm/nsserver/_default.cfg index 909817bd2..2a2425f73 100644 --- a/lgsm/config-default/config-lgsm/nsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/nsserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/onsetserver/_default.cfg b/lgsm/config-default/config-lgsm/onsetserver/_default.cfg index 5815e70a7..d564020ed 100644 --- a/lgsm/config-default/config-lgsm/onsetserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/onsetserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/opforserver/_default.cfg b/lgsm/config-default/config-lgsm/opforserver/_default.cfg index 67b28e43d..f0e54f511 100644 --- a/lgsm/config-default/config-lgsm/opforserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/opforserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/pcserver/_default.cfg b/lgsm/config-default/config-lgsm/pcserver/_default.cfg index b5fba3b56..c02992f92 100644 --- a/lgsm/config-default/config-lgsm/pcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pcserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg b/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg index 4d57c9923..62a8af0ba 100644 --- a/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg @@ -39,8 +39,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -74,14 +72,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg b/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg index db4762421..96442da3d 100644 --- a/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/pzserver/_default.cfg b/lgsm/config-default/config-lgsm/pzserver/_default.cfg index 7bf604b06..ab22be682 100644 --- a/lgsm/config-default/config-lgsm/pzserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pzserver/_default.cfg @@ -33,8 +33,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -68,14 +66,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/q2server/_default.cfg b/lgsm/config-default/config-lgsm/q2server/_default.cfg index b86447af3..63306512d 100644 --- a/lgsm/config-default/config-lgsm/q2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/q2server/_default.cfg @@ -34,8 +34,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -69,14 +67,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/q3server/_default.cfg b/lgsm/config-default/config-lgsm/q3server/_default.cfg index 065558109..8ff151fc0 100644 --- a/lgsm/config-default/config-lgsm/q3server/_default.cfg +++ b/lgsm/config-default/config-lgsm/q3server/_default.cfg @@ -34,8 +34,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -69,14 +67,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/qlserver/_default.cfg b/lgsm/config-default/config-lgsm/qlserver/_default.cfg index c4cd8671f..25d1f43bc 100644 --- a/lgsm/config-default/config-lgsm/qlserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/qlserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/qwserver/_default.cfg b/lgsm/config-default/config-lgsm/qwserver/_default.cfg index 7835e2a2c..e4541086c 100644 --- a/lgsm/config-default/config-lgsm/qwserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/qwserver/_default.cfg @@ -33,8 +33,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -68,14 +66,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg b/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg index d640c1cec..c443cbb47 100644 --- a/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/roserver/_default.cfg b/lgsm/config-default/config-lgsm/roserver/_default.cfg index c60b0317d..f5659b550 100644 --- a/lgsm/config-default/config-lgsm/roserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/roserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/rtcwserver/_default.cfg b/lgsm/config-default/config-lgsm/rtcwserver/_default.cfg index ca9ab10ee..f2647542b 100644 --- a/lgsm/config-default/config-lgsm/rtcwserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/rtcwserver/_default.cfg @@ -34,8 +34,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -69,14 +67,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/rustserver/_default.cfg b/lgsm/config-default/config-lgsm/rustserver/_default.cfg index f75a1f614..b518b00ba 100644 --- a/lgsm/config-default/config-lgsm/rustserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/rustserver/_default.cfg @@ -44,8 +44,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -79,14 +77,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/rwserver/_default.cfg b/lgsm/config-default/config-lgsm/rwserver/_default.cfg index ebdf0d691..cddf99818 100644 --- a/lgsm/config-default/config-lgsm/rwserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/rwserver/_default.cfg @@ -32,8 +32,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -67,14 +65,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/sampserver/_default.cfg b/lgsm/config-default/config-lgsm/sampserver/_default.cfg index 057f42776..4f88ee743 100644 --- a/lgsm/config-default/config-lgsm/sampserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sampserver/_default.cfg @@ -33,8 +33,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -68,14 +66,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg b/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg index edbbe9905..c0867e1c8 100644 --- a/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/sbserver/_default.cfg b/lgsm/config-default/config-lgsm/sbserver/_default.cfg index f96d8e29b..b3bffbcad 100644 --- a/lgsm/config-default/config-lgsm/sbserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sbserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg b/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg index ba5d22059..3dad1f106 100644 --- a/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg @@ -32,8 +32,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -67,14 +65,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/sfcserver/_default.cfg b/lgsm/config-default/config-lgsm/sfcserver/_default.cfg index aa3a386a8..746b9e84c 100644 --- a/lgsm/config-default/config-lgsm/sfcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sfcserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/sof2server/_default.cfg b/lgsm/config-default/config-lgsm/sof2server/_default.cfg index 572933cef..79b6ff01b 100644 --- a/lgsm/config-default/config-lgsm/sof2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/sof2server/_default.cfg @@ -34,8 +34,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -69,14 +67,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/solserver/_default.cfg b/lgsm/config-default/config-lgsm/solserver/_default.cfg index c543c49fb..b0fda3b81 100644 --- a/lgsm/config-default/config-lgsm/solserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/solserver/_default.cfg @@ -33,8 +33,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -68,14 +66,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/squadserver/_default.cfg b/lgsm/config-default/config-lgsm/squadserver/_default.cfg index 14e5862a3..c329b06b4 100644 --- a/lgsm/config-default/config-lgsm/squadserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/squadserver/_default.cfg @@ -34,8 +34,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -69,14 +67,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ss3server/_default.cfg b/lgsm/config-default/config-lgsm/ss3server/_default.cfg index 87f5d2eb3..9cb3f5601 100644 --- a/lgsm/config-default/config-lgsm/ss3server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ss3server/_default.cfg @@ -33,8 +33,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -68,14 +66,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/stserver/_default.cfg b/lgsm/config-default/config-lgsm/stserver/_default.cfg index bed1f3477..d7caf33e6 100644 --- a/lgsm/config-default/config-lgsm/stserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/stserver/_default.cfg @@ -39,8 +39,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -74,14 +72,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/svenserver/_default.cfg b/lgsm/config-default/config-lgsm/svenserver/_default.cfg index e469e9c8b..908dd046d 100644 --- a/lgsm/config-default/config-lgsm/svenserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/svenserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg b/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg index 015a117c5..79e683f65 100644 --- a/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/tf2server/_default.cfg b/lgsm/config-default/config-lgsm/tf2server/_default.cfg index 19df009cc..3aa580d39 100644 --- a/lgsm/config-default/config-lgsm/tf2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/tf2server/_default.cfg @@ -42,8 +42,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -77,14 +75,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/tfcserver/_default.cfg b/lgsm/config-default/config-lgsm/tfcserver/_default.cfg index 0d8697c45..c29b43642 100644 --- a/lgsm/config-default/config-lgsm/tfcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/tfcserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ts3server/_default.cfg b/lgsm/config-default/config-lgsm/ts3server/_default.cfg index 4c83b6146..34cb54fb8 100644 --- a/lgsm/config-default/config-lgsm/ts3server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ts3server/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/tsserver/_default.cfg b/lgsm/config-default/config-lgsm/tsserver/_default.cfg index d02b649d4..fb4fb9f01 100644 --- a/lgsm/config-default/config-lgsm/tsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/tsserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/tuserver/_default.cfg b/lgsm/config-default/config-lgsm/tuserver/_default.cfg index f93e99607..eed1cbdcb 100644 --- a/lgsm/config-default/config-lgsm/tuserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/tuserver/_default.cfg @@ -39,8 +39,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -74,14 +72,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/twserver/_default.cfg b/lgsm/config-default/config-lgsm/twserver/_default.cfg index 5f907e86a..9140ed859 100644 --- a/lgsm/config-default/config-lgsm/twserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/twserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/untserver/_default.cfg b/lgsm/config-default/config-lgsm/untserver/_default.cfg index 0137f19d3..1a8230e0a 100644 --- a/lgsm/config-default/config-lgsm/untserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/untserver/_default.cfg @@ -35,8 +35,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -70,14 +68,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ut2k4server/_default.cfg b/lgsm/config-default/config-lgsm/ut2k4server/_default.cfg index 01407b510..1bf464c29 100644 --- a/lgsm/config-default/config-lgsm/ut2k4server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ut2k4server/_default.cfg @@ -33,8 +33,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -68,14 +66,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ut3server/_default.cfg b/lgsm/config-default/config-lgsm/ut3server/_default.cfg index bdebcfdbb..e8f93eb02 100644 --- a/lgsm/config-default/config-lgsm/ut3server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ut3server/_default.cfg @@ -49,8 +49,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -84,14 +82,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/ut99server/_default.cfg b/lgsm/config-default/config-lgsm/ut99server/_default.cfg index 901b02d22..70699e1c4 100644 --- a/lgsm/config-default/config-lgsm/ut99server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ut99server/_default.cfg @@ -33,8 +33,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -68,14 +66,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/utserver/_default.cfg b/lgsm/config-default/config-lgsm/utserver/_default.cfg index 45d6e1c32..a21c4a1bc 100644 --- a/lgsm/config-default/config-lgsm/utserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/utserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/vsserver/_default.cfg b/lgsm/config-default/config-lgsm/vsserver/_default.cfg index 2228e8cbb..f6bb4394c 100644 --- a/lgsm/config-default/config-lgsm/vsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/vsserver/_default.cfg @@ -36,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -71,14 +69,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/wetserver/_default.cfg b/lgsm/config-default/config-lgsm/wetserver/_default.cfg index 63c5e49db..b9ed41c69 100644 --- a/lgsm/config-default/config-lgsm/wetserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/wetserver/_default.cfg @@ -29,8 +29,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -64,14 +62,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/wfserver/_default.cfg b/lgsm/config-default/config-lgsm/wfserver/_default.cfg index 7a09021f6..73f0bb8df 100644 --- a/lgsm/config-default/config-lgsm/wfserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/wfserver/_default.cfg @@ -34,8 +34,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -69,14 +67,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/wurmserver/_default.cfg b/lgsm/config-default/config-lgsm/wurmserver/_default.cfg index 61a68a70b..0ad05ae4b 100644 --- a/lgsm/config-default/config-lgsm/wurmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/wurmserver/_default.cfg @@ -31,8 +31,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -66,14 +64,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/zmrserver/_default.cfg b/lgsm/config-default/config-lgsm/zmrserver/_default.cfg index 8e9a09505..ce5cb3329 100644 --- a/lgsm/config-default/config-lgsm/zmrserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/zmrserver/_default.cfg @@ -37,8 +37,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -72,14 +70,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/config-default/config-lgsm/zpsserver/_default.cfg b/lgsm/config-default/config-lgsm/zpsserver/_default.cfg index a4f71fcb8..cf26a9e84 100644 --- a/lgsm/config-default/config-lgsm/zpsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/zpsserver/_default.cfg @@ -42,8 +42,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://termbin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -77,14 +75,18 @@ pushoveralert="off" pushovertoken="accesstoken" pushoveruserkey="userkey" +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" diff --git a/lgsm/data/alert_discord_logo.jpg b/lgsm/data/alert_discord_logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..db94b295ec44b542b47851a8254025daad0e375a GIT binary patch literal 34529 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 literal 0 HcmV?d00001 diff --git a/lgsm/data/alert_discord_logo.png b/lgsm/data/alert_discord_logo.png deleted file mode 100644 index e56a9293219f1ac4160ebc66ce820fdde7dda8e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22166 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 W0$8HP5J=!43u$TSt5>SRBmW1I8SIz< diff --git a/lgsm/functions/README.md b/lgsm/functions/README.md old mode 100644 new mode 100755 diff --git a/lgsm/functions/alert.sh b/lgsm/functions/alert.sh old mode 100644 new mode 100755 index 704a3f3eb..3b54230eb --- a/lgsm/functions/alert.sh +++ b/lgsm/functions/alert.sh @@ -100,6 +100,7 @@ if [ "${postalert}" == "on" ]&&[ -n "${postalert}" ]; then exitbypass=1 command_postdetails.sh fn_firstcommand_reset + unset exitbypass elif [ "${postalert}" != "on" ]&&[ "${commandname}" == "TEST-ALERT" ]; then fn_print_warn_nl "More Info not enabled" fn_script_log_warn "More Info alerts not enabled" @@ -191,6 +192,17 @@ elif [ -z "${telegramchatid}" ]&&[ "${commandname}" == "TEST-ALERT" ]; then fn_script_error "Telegram chat id not set." fi +if [ "${rocketchatalert}" == "on" ]&&[ -n "${rocketchatalert}" ]; then + alert_rocketchat.sh +elif [ "${rocketchatalert}" != "on" ]&&[ "${commandname}" == "TEST-ALERT" ]; then + fn_print_warn_nl "Rocketchat alerts not enabled" + fn_script_log_warn "Rocketchat alerts not enabled" +elif [ -z "${rocketchattoken}" ]&&[ "${commandname}" == "TEST-ALERT" ]; then + fn_print_error_nl "Rocketchat token not set" + #echo -e "* https://docs.linuxgsm.com/alerts/slack" + fn_script_error "Rocketchat token not set" +fi + if [ "${slackalert}" == "on" ]&&[ -n "${slackalert}" ]; then alert_slack.sh elif [ "${slackalert}" != "on" ]&&[ "${commandname}" == "TEST-ALERT" ]; then diff --git a/lgsm/functions/alert_discord.sh b/lgsm/functions/alert_discord.sh old mode 100644 new mode 100755 index 3ed12fe97..c19e66506 --- a/lgsm/functions/alert_discord.sh +++ b/lgsm/functions/alert_discord.sh @@ -12,9 +12,6 @@ if ! command -v jq > /dev/null; then fn_script_log_fatal "Sending Discord alert: jq is missing." fi -escaped_servername=$(echo -n "${servername}" | jq -sRr "@json") -escaped_alertbody=$(echo -n "${alertbody}" | jq -sRr "@json") - json=$(cat < /dev/null; then + fn_print_fail_nl "Sending Rocketchat alert: jq is missing." + fn_script_log_fatal "Sending Rocketchat alert: jq is missing." +fi + +json=$(cat <${alertsubject} ${alertemoji}\n\nMessage\n${alertbody}\n\nGame\n${gamename}\n\nServer name\n${servername}\n\nHostname\n${HOSTNAME}\n\nServer IP\n${alertip}:${port}\n\nMore info\n${alerturl}", + "text": "${alertemoji} ${alertsubject} ${alertemoji}\n\nServer name\n${servername}\n\nMessage\n${alertbody}\n\nGame\n${gamename}\n\nServer IP\n${alertip}:${port}\n\nHostname\n${HOSTNAME}\n\nMore info\n${alerturl}", "disable_web_page_preview": "yes", EOF ) @@ -18,7 +18,7 @@ EOF fn_print_dots "Sending Telegram alert" telegramsend=$(curl -sSL -H "Content-Type: application/json" -X POST -d """${json}""" ${curlcustomstring} "https://api.telegram.org/bot${telegramtoken}/sendMessage" | grep "error_code") -if [ "${telegramsend}" ]; then +if [ -n "${telegramsend}" ]; then fn_print_fail_nl "Sending Telegram alert: ${telegramsend}" fn_script_log_fatal "Sending Telegram alert: ${telegramsend}" else diff --git a/lgsm/functions/check.sh b/lgsm/functions/check.sh old mode 100644 new mode 100755 index d5e7df939..7ce2e9824 --- a/lgsm/functions/check.sh +++ b/lgsm/functions/check.sh @@ -67,7 +67,7 @@ for allowed_command in "${allowed_commands_array[@]}"; do fi done -allowed_commands_array=( DEBUG DETAILS POST_DETAILS MONITOR START STOP DEV-QUERY-RAW ) +allowed_commands_array=( DEBUG DETAILS DEV-QUERY-RAW MONITOR POST_DETAILS START STOP POST-DETAILS ) for allowed_command in "${allowed_commands_array[@]}"; do if [ "${allowed_command}" == "${commandname}" ]; then if [ -z "${installflag}" ]; then @@ -85,7 +85,7 @@ for allowed_command in "${allowed_commands_array[@]}"; do fi done -allowed_commands_array=( DETAILS MONITOR START STOP CHANGE-PASSWORD UPDATE VALIDATE ) +allowed_commands_array=( CHANGE-PASSWORD DETAILS MONITOR START STOP UPDATE VALIDATE POST-DETAILS ) for allowed_command in "${allowed_commands_array[@]}"; do if [ "${allowed_command}" == "${commandname}" ]; then check_status.sh diff --git a/lgsm/functions/check_config.sh b/lgsm/functions/check_config.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_executable.sh b/lgsm/functions/check_executable.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_glibc.sh b/lgsm/functions/check_glibc.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_ip.sh b/lgsm/functions/check_ip.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_last_update.sh b/lgsm/functions/check_last_update.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_logs.sh b/lgsm/functions/check_logs.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_permissions.sh b/lgsm/functions/check_permissions.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_root.sh b/lgsm/functions/check_root.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_status.sh b/lgsm/functions/check_status.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_steamcmd.sh b/lgsm/functions/check_steamcmd.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_system_dir.sh b/lgsm/functions/check_system_dir.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_system_requirements.sh b/lgsm/functions/check_system_requirements.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_tmuxception.sh b/lgsm/functions/check_tmuxception.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/check_version.sh b/lgsm/functions/check_version.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_backup.sh b/lgsm/functions/command_backup.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_console.sh b/lgsm/functions/command_console.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_debug.sh b/lgsm/functions/command_debug.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_details.sh b/lgsm/functions/command_details.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_dev_clear_functions.sh b/lgsm/functions/command_dev_clear_functions.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_dev_debug.sh b/lgsm/functions/command_dev_debug.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_dev_detect_deps.sh b/lgsm/functions/command_dev_detect_deps.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_dev_detect_glibc.sh b/lgsm/functions/command_dev_detect_glibc.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_dev_detect_ldd.sh b/lgsm/functions/command_dev_detect_ldd.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_dev_query_raw.sh b/lgsm/functions/command_dev_query_raw.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_donate.sh b/lgsm/functions/command_donate.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_fastdl.sh b/lgsm/functions/command_fastdl.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_install.sh b/lgsm/functions/command_install.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_install_resources_mta.sh b/lgsm/functions/command_install_resources_mta.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_mods_install.sh b/lgsm/functions/command_mods_install.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_mods_remove.sh b/lgsm/functions/command_mods_remove.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_mods_update.sh b/lgsm/functions/command_mods_update.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_monitor.sh b/lgsm/functions/command_monitor.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_postdetails.sh b/lgsm/functions/command_postdetails.sh old mode 100644 new mode 100755 index 3cb4c5852..b6fbb4495 --- a/lgsm/functions/command_postdetails.sh +++ b/lgsm/functions/command_postdetails.sh @@ -10,30 +10,7 @@ commandaction="Posting details" functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" fn_firstcommand_set -# Set posttarget to the appropriately-defined post destination. - -# The options for posttarget are: -# The default destination - hastebin -# posttarget="https://hastebin.com" -# -# Secondary destination - pastebin -# posttarget="http://pastebin.com -# -# Third option - leave on the filesystem -# posttarget= -# -# All of these options can be specified/overridden from the top-level -# invocation, as in: -# rustserver@gamerig:~$ posttarget="http://pastebin.com" ./rustserver pd -# to post to pastebin, or -# rustserver@gamerig:~$ posttarget= ./rustserver pd -# to leave the output on the filesystem. -posttarget=${posttarget="https://termbin.com"} - -# For pastebin, you can set the expiration period. -# use 1 week as the default, other options are '24h' for a day, etc. -# This, too, may be overridden from the command line at the top-level. -postexpire="${postexpire="30D"}" +posttarget="https://termbin.com" # source all of the functions defined in the details command. info_messages.sh @@ -83,50 +60,21 @@ else fn_info_message_statusbottom } | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" | tee -a "${postdetailslog}" > /dev/null 2>&1 fi -# Pastebin -if [ "${posttarget}" == "http://pastebin.com" ] ; then - fn_print_dots "pastbin.com for ${postexpire}" - # grab the return from 'value' from an initial visit to pastebin. - csrftoken=$(curl -s "${posttarget}" | sed -n 's/^.*input type="hidden" name="csrf_token_post" value="\(.*\)".*$/\1/p') - # - # Use the csrftoken to then post the content. - # - link=$(curl -s "${posttarget}/post.php" -D - -F "submit_hidden=submit_hidden" \ - -F "post_key=${csrftoken}" -F "paste_expire_date=${postexpire}" \ - -F "paste_name=${gamename} Debug Info" \ - -F "paste_format=8" -F "paste_private=0" \ - -F "paste_type=bash" -F "paste_code=<${postdetailslog}" | - awk '/^location: / { print $2 }' | sed "s/\n//g") - # Output the resulting link. - fn_print_ok_nl "pastbin.com for ${postexpire}" - fn_script_log_pass "pastbin.com for ${postexpire}" - pdurl="${posttarget}${link}" -# Hastebin -elif [ "${posttarget}" == "https://hastebin.com" ] ; then - fn_print_dots "hastebin.com" - # hastebin is a bit simpler. If successful, the returned result - # should look like: {"something":"key"}, putting the reference that - # we need in "key". TODO - error handling. -CedarLUG - link=$(curl -H "HTTP_X_REQUESTED_WITH:XMLHttpRequest" -s -d "$(<${postdetailslog})" "${posttarget}/documents" | cut -d\" -f4) - fn_print_ok_nl "hastebin.com for ${postexpire}" - fn_script_log_pass "hastebin.com for ${postexpire}" - pdurl="${posttarget}/${link}" -# Termbin -elif [ "${posttarget}" == "https://termbin.com" ] ; then - fn_print_dots "termbin.com" - link=$(cat "${postdetailslog}" | nc termbin.com 9999 | tr -d '\n\0') - fn_print_ok_nl "termbin.com for 30D" - fn_script_log_pass "termbin.com for 30D" - pdurl="${link}" +fn_print_dots "termbin.com" +link=$(cat "${postdetailslog}" | nc termbin.com 9999 | tr -d '\n\0') +fn_print_ok_nl "termbin.com for 30D" +fn_script_log_pass "termbin.com for 30D" +pdurl="${link}" + +if [ ${firstcommandname} == "POST-DETAILS" ]; then + echo -e "" + echo -e "Please share the following url for support: " + echo -e "${pdurl}" fi -echo -e "" -echo -e "Please share the following url for support: " -echo -e "${pdurl}" fn_script_log_info "${pdurl}" if [ -z "${exitbypass}" ]; then core_exit.sh -else - alerturl="${pdurl}" fi +alerturl="${pdurl}" diff --git a/lgsm/functions/command_restart.sh b/lgsm/functions/command_restart.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_start.sh b/lgsm/functions/command_start.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_test_alert.sh b/lgsm/functions/command_test_alert.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_ts3_server_pass.sh b/lgsm/functions/command_ts3_server_pass.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_update.sh b/lgsm/functions/command_update.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_update_functions.sh b/lgsm/functions/command_update_functions.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_update_linuxgsm.sh b/lgsm/functions/command_update_linuxgsm.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_validate.sh b/lgsm/functions/command_validate.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/command_wipe.sh b/lgsm/functions/command_wipe.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/compress_unreal2_maps.sh b/lgsm/functions/compress_unreal2_maps.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/compress_ut99_maps.sh b/lgsm/functions/compress_ut99_maps.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/core_exit.sh b/lgsm/functions/core_exit.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh old mode 100644 new mode 100755 index a1ee7fe26..f136fa758 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -574,6 +574,11 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } +alert_rocketchat.sh(){ +functionfile="${FUNCNAME[0]}" +fn_fetch_function +} + alert_slack.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function diff --git a/lgsm/functions/core_getopt.sh b/lgsm/functions/core_getopt.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/core_legacy.sh b/lgsm/functions/core_legacy.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/core_logs.sh b/lgsm/functions/core_logs.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/core_messages.sh b/lgsm/functions/core_messages.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/core_trap.sh b/lgsm/functions/core_trap.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix.sh b/lgsm/functions/fix.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ark.sh b/lgsm/functions/fix_ark.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_arma3.sh b/lgsm/functions/fix_arma3.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_av.sh b/lgsm/functions/fix_av.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_cmw.sh b/lgsm/functions/fix_cmw.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_csgo.sh b/lgsm/functions/fix_csgo.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_dst.sh b/lgsm/functions/fix_dst.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ges.sh b/lgsm/functions/fix_ges.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_hw.sh b/lgsm/functions/fix_hw.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ins.sh b/lgsm/functions/fix_ins.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_kf.sh b/lgsm/functions/fix_kf.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_kf2.sh b/lgsm/functions/fix_kf2.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_mcb.sh b/lgsm/functions/fix_mcb.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_mta.sh b/lgsm/functions/fix_mta.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_nmrih.sh b/lgsm/functions/fix_nmrih.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_onset.sh b/lgsm/functions/fix_onset.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ro.sh b/lgsm/functions/fix_ro.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_rust.sh b/lgsm/functions/fix_rust.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_rw.sh b/lgsm/functions/fix_rw.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_sdtd.sh b/lgsm/functions/fix_sdtd.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_sfc.sh b/lgsm/functions/fix_sfc.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_sof2.sh b/lgsm/functions/fix_sof2.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ss3.sh b/lgsm/functions/fix_ss3.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_steamcmd.sh b/lgsm/functions/fix_steamcmd.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_terraria.sh b/lgsm/functions/fix_terraria.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_tf2.sh b/lgsm/functions/fix_tf2.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ts3.sh b/lgsm/functions/fix_ts3.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_tu.sh b/lgsm/functions/fix_tu.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_unt.sh b/lgsm/functions/fix_unt.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ut.sh b/lgsm/functions/fix_ut.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ut2k4.sh b/lgsm/functions/fix_ut2k4.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_ut3.sh b/lgsm/functions/fix_ut3.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_wurm.sh b/lgsm/functions/fix_wurm.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/fix_zmr.sh b/lgsm/functions/fix_zmr.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/info_distro.sh b/lgsm/functions/info_distro.sh old mode 100644 new mode 100755 index f7500b695..97c806da2 --- a/lgsm/functions/info_distro.sh +++ b/lgsm/functions/info_distro.sh @@ -97,7 +97,7 @@ cpumodel=$(awk -F: '/model name/ {name=$2} END {print name}' /proc/cpuinfo | sed cpucores=$(awk -F: '/model name/ {core++} END {print core}' /proc/cpuinfo) cpufreqency=$(awk -F: '/cpu MHz/ {freq=$2} END {print freq}' /proc/cpuinfo | sed 's/^[ \t]*//;s/[ \t]*$//') # CPU usage of the game server pid -if [ "${gameserverpid}" ]; then +if [ -n "${gameserverpid}" ]; then cpuused=$(ps --forest -o pcpu -g "${gameserverpid}"|awk '{s+=$1} END {print s}') cpuusedmhz=$(echo "${cpufreqency} * ${cpuused} / 100" | bc ) fi diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh old mode 100644 new mode 100755 index 7c70b57a6..15fd7aa5b --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -424,19 +424,19 @@ fn_info_message_script(){ # LinuxGSM version: v19.9.0 # glibc required: 2.15 # Discord alert: off - # Slack alert: off # Email alert: off - # Pushbullet alert: off # IFTTT alert: off # Mailgun (email) alert: off + # Pushbullet alert: off # Pushover alert: off + # Rocketchat alert: off + # Slack alert: off # Telegram alert: off # Update on start: off # User: lgsm # Location: /home/lgsm/csgoserver # Config file: /home/lgsm/csgoserver/serverfiles/csgo/cfg/csgoserver.cfg - echo -e "${lightgreen}${selfname} Script Details${default}" fn_messages_separator { @@ -464,20 +464,23 @@ fn_info_message_script(){ # Discord alert echo -e "${lightblue}Discord alert:\t${default}${discordalert}" - # Slack alert - echo -e "${lightblue}Slack alert:\t${default}${slackalert}" # Email alert echo -e "${lightblue}Email alert:\t${default}${emailalert}" - # Pushbullet alert - echo -e "${lightblue}Pushbullet alert:\t${default}${pushbulletalert}" # IFTTT alert echo -e "${lightblue}IFTTT alert:\t${default}${iftttalert}" # Mailgun alert echo -e "${lightblue}Mailgun (email) alert:\t${default}${mailgunalert}" + # Pushbullet alert + echo -e "${lightblue}Pushbullet alert:\t${default}${pushbulletalert}" # Pushover alert echo -e "${lightblue}Pushover alert:\t${default}${pushoveralert}" + # Rocketchat alert + echo -e "${lightblue}Rocketchat alert:\t${default}${rocketchatalert}" + # Slack alert + echo -e "${lightblue}Slack alert:\t${default}${slackalert}" # Telegram alert echo -e "${lightblue}Telegram alert:\t${default}${telegramalert}" + # Update on start if [ -n "${updateonstart}" ]; then echo -e "${lightblue}Update on start:\t${default}${updateonstart}" diff --git a/lgsm/functions/info_parms.sh b/lgsm/functions/info_parms.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/info_stats.sh b/lgsm/functions/info_stats.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_complete.sh b/lgsm/functions/install_complete.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_dst_token.sh b/lgsm/functions/install_dst_token.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_eula.sh b/lgsm/functions/install_eula.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_factorio_save.sh b/lgsm/functions/install_factorio_save.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_gslt.sh b/lgsm/functions/install_gslt.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_header.sh b/lgsm/functions/install_header.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_logs.sh b/lgsm/functions/install_logs.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_modules.sh b/lgsm/functions/install_modules.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_mta_resources.sh b/lgsm/functions/install_mta_resources.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_retry.sh b/lgsm/functions/install_retry.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_server_dir.sh b/lgsm/functions/install_server_dir.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_server_files.sh b/lgsm/functions/install_server_files.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_squad_license.sh b/lgsm/functions/install_squad_license.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_stats.sh b/lgsm/functions/install_stats.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_steamcmd.sh b/lgsm/functions/install_steamcmd.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_ts3db.sh b/lgsm/functions/install_ts3db.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/install_ut2k4_key.sh b/lgsm/functions/install_ut2k4_key.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/mods_core.sh b/lgsm/functions/mods_core.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/query_gamedig.sh b/lgsm/functions/query_gamedig.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/query_gsquery.py b/lgsm/functions/query_gsquery.py old mode 100644 new mode 100755 diff --git a/lgsm/functions/update_factorio.sh b/lgsm/functions/update_factorio.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/update_minecraft.sh b/lgsm/functions/update_minecraft.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/update_minecraft_bedrock.sh b/lgsm/functions/update_minecraft_bedrock.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/update_mta.sh b/lgsm/functions/update_mta.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/update_mumble.sh b/lgsm/functions/update_mumble.sh old mode 100644 new mode 100755 diff --git a/lgsm/functions/update_ts3.sh b/lgsm/functions/update_ts3.sh old mode 100644 new mode 100755 diff --git a/tests/tests_defaultcfg/defaultcfg_1.txt b/tests/tests_defaultcfg/defaultcfg_1.txt index ca8fa2a8e..aa5b8a207 100644 --- a/tests/tests_defaultcfg/defaultcfg_1.txt +++ b/tests/tests_defaultcfg/defaultcfg_1.txt @@ -20,9 +20,8 @@ # Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover # Slack Alerts | https://docs.linuxgsm.com/alerts/slack # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need -# any custom string in curl - simple ignore this parameter. +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". ## Backup | https://docs.linuxgsm.com/commands/backup ## Logging | https://docs.linuxgsm.com/features/logging ## Monitor | https://docs.linuxgsm.com/commands/monitor From 47a02e87d64d5be2de4463df6c359cc1f5b6a69f Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 20 Sep 2020 22:01:19 +0200 Subject: [PATCH 08/70] fix(mod): csgo pug fix var not set (#3053) --- lgsm/functions/mods_list.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh index aa0ee7614..13ae3e268 100755 --- a/lgsm/functions/mods_list.sh +++ b/lgsm/functions/mods_list.sh @@ -35,8 +35,8 @@ get5latestfile=$(echo -e "${get5lastbuild}" | jq -r '.fileName') get5latestfilepath=$(echo -e "${get5lastbuild}" | jq -r '.relativePath') get5url="https://ci.splewis.net/job/get5/lastSuccessfulBuild/artifact/${get5latestfilepath}" csgopuglatest=$(curl -sL https://api.github.com/repos/splewis/csgo-pug-setup/releases/latest | jq '.assets[]') -csgopuglatestfile=$(echo -e "${}" | jq -r '.name') -csgopuglatestlink=$(echo -e "${}" | jq -r '.browser_download_url') +csgopuglatestfile=$(echo -e "${csgopuglatest}" | jq -r '.name') +csgopuglatestlink=$(echo -e "${csgopuglatest}" | jq -r '.browser_download_url') # Oxide oxiderustlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Rust/releases/latest | jq -r '.assets[]|select(.browser_download_url | contains("linux")) | .browser_download_url') oxidehurtworldlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Hurtworld/releases/latest | jq -r '.assets[].browser_download_url') From 5b84fb5bf4bbeb26155ef62e68c49aa56c778b66 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 20 Sep 2020 21:32:35 +0100 Subject: [PATCH 09/70] Release 20.5.0 --- lgsm/functions/alert_discord.sh | 3 +- lgsm/functions/alert_rocketchat.sh | 2 +- lgsm/functions/alert_slack.sh | 103 ++++++++++----------- lgsm/functions/check_ip.sh | 8 +- lgsm/functions/command_postdetails.sh | 2 +- lgsm/functions/command_update.sh | 2 +- lgsm/functions/command_update_functions.sh | 0 lgsm/functions/core_functions.sh | 2 +- lgsm/functions/fix_squad.sh | 2 +- linuxgsm.sh | 2 +- tests/tests_defaultcfg/defaultcfg_0.txt | 11 ++- tests/tests_fctrserver.sh | 2 +- tests/tests_jc2server.sh | 2 +- tests/tests_mcserver.sh | 2 +- tests/tests_ts3server.sh | 2 +- 15 files changed, 72 insertions(+), 73 deletions(-) delete mode 100755 lgsm/functions/command_update_functions.sh diff --git a/lgsm/functions/alert_discord.sh b/lgsm/functions/alert_discord.sh index c19e66506..b9512bbe7 100755 --- a/lgsm/functions/alert_discord.sh +++ b/lgsm/functions/alert_discord.sh @@ -21,7 +21,8 @@ json=$(cat < Date: Sun, 20 Sep 2020 21:41:39 +0100 Subject: [PATCH 10/70] Release 20.5.0 --- lgsm/functions/command_postdetails.sh | 2 +- lgsm/functions/info_config.sh | 2 +- lgsm/functions/info_distro.sh | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lgsm/functions/command_postdetails.sh b/lgsm/functions/command_postdetails.sh index c819568f8..0f18b12a9 100755 --- a/lgsm/functions/command_postdetails.sh +++ b/lgsm/functions/command_postdetails.sh @@ -67,7 +67,7 @@ fn_print_ok_nl "termbin.com for 30D" fn_script_log_pass "termbin.com for 30D" pdurl="${link}" -if [ ${firstcommandname} == "POST-DETAILS" ]; then +if [ "${firstcommandname}" == "POST-DETAILS" ]; then echo -e "" echo -e "Please share the following url for support: " echo -e "${pdurl}" diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index c38e3e155..1ca69764d 100755 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -1248,7 +1248,7 @@ fn_info_config_sdtd(){ else servername=$(grep "ServerName" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"") serverpassword=$(grep "ServerPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"") - port=$(grep "ServerPort" "${servercfgfullpath}" | egrep -o 'value="[0-9]+"' | tr -cd '[:digit:]') + port=$(grep "ServerPort" "${servercfgfullpath}" | grep -Eo 'value="[0-9]+"' | tr -cd '[:digit:]') queryport=${port:-"0"} webadminenabled=$(grep "ControlPanelEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"") diff --git a/lgsm/functions/info_distro.sh b/lgsm/functions/info_distro.sh index 97c806da2..8962426af 100755 --- a/lgsm/functions/info_distro.sh +++ b/lgsm/functions/info_distro.sh @@ -264,11 +264,11 @@ if [ "$(command -v jq 2>/dev/null)" ]; then if [ "${steammaster}" == "true" ]; then # Will query server IP addresses first. for queryip in "${queryips[@]}"; do - masterserver=$(curl -m 3 -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${queryip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l 2>/dev/null) + masterserver="$(curl -m 3 -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${queryip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l 2>/dev/null)" done # Should that not work it will try the external IP. if [ "${masterserver}" == "0" ]; then - masterserver=$(curl -m 3 -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${extip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l 2>/dev/null) + masterserver="$(curl -m 3 -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${extip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l 2>/dev/null)" fi if [ "${masterserver}" == "0" ]; then displaymasterserver="false" From f774335d7a83f8bdd88dc62e20e7e3cb21331d69 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sat, 26 Sep 2020 23:30:03 +0100 Subject: [PATCH 11/70] Update no-response.yml --- .github/no-response.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/no-response.yml b/.github/no-response.yml index 432ff0cd1..a883b161e 100644 --- a/.github/no-response.yml +++ b/.github/no-response.yml @@ -3,7 +3,7 @@ # Number of days of inactivity before an Issue is closed for lack of response daysUntilClose: 60 # Label requiring a response -responseRequiredLabel: "status: waiting response" +responseRequiredLabel: "waiting response" # Comment to post when closing an Issue for lack of response. Set to `false` to disable closeComment: > This issue has been automatically closed because there has been no response From 901b7c3a16969b6a36c85fda70e200f5e799d6e2 Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 4 Oct 2020 22:25:51 +0200 Subject: [PATCH 12/70] fix(insserver): fix steamclient.so error (#3062) --- lgsm/functions/fix_steamcmd.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lgsm/functions/fix_steamcmd.sh b/lgsm/functions/fix_steamcmd.sh index 62245127b..3fe106c38 100755 --- a/lgsm/functions/fix_steamcmd.sh +++ b/lgsm/functions/fix_steamcmd.sh @@ -79,6 +79,8 @@ elif [ "${shortname}" == "cmw" ]; then fn_fix_steamclient_so "32" "${executabledir}/lib" elif [ "${shortname}" == "cs" ]; then fn_fix_steamclient_so "32" "${serverfiles}" +elif [ "${shortname}" == "ins" ]; then + fn_fix_steamclient_so "32" "${serverfiles}/bin" elif [ "${shortname}" == "pz" ]; then fn_fix_steamclient_so "32" "${serverfiles}/linux32" fn_fix_steamclient_so "64" "${serverfiles}/linux64" From 78cb4689ecf1afd675016ff85b1c0494663cd2d4 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 5 Oct 2020 22:31:09 +0100 Subject: [PATCH 13/70] fix(update): resolve broken minecraft updater since v1.16.3 (#3067) * fix(mcserver): resolve minecraft now outputting windows line endings * fix(update): resolve broken minecraft updater since v1.16.3 --- lgsm/functions/update_factorio.sh | 1 + lgsm/functions/update_minecraft.sh | 7 ++++--- lgsm/functions/update_minecraft_bedrock.sh | 1 + lgsm/functions/update_mta.sh | 1 + lgsm/functions/update_mumble.sh | 1 + lgsm/functions/update_steamcmd.sh | 1 + lgsm/functions/update_ts3.sh | 1 + 7 files changed, 10 insertions(+), 3 deletions(-) mode change 100755 => 100644 lgsm/functions/update_factorio.sh mode change 100755 => 100644 lgsm/functions/update_minecraft_bedrock.sh mode change 100755 => 100644 lgsm/functions/update_mta.sh mode change 100755 => 100644 lgsm/functions/update_mumble.sh mode change 100755 => 100644 lgsm/functions/update_ts3.sh diff --git a/lgsm/functions/update_factorio.sh b/lgsm/functions/update_factorio.sh old mode 100755 new mode 100644 index ded4d8206..f13a48c43 --- a/lgsm/functions/update_factorio.sh +++ b/lgsm/functions/update_factorio.sh @@ -112,6 +112,7 @@ fn_update_factorio_compare(){ command_start.sh fn_firstcommand_reset fi + unset exitbypass date +%s > "${lockdir}/lastupdate.lock" alert="update" alert.sh diff --git a/lgsm/functions/update_minecraft.sh b/lgsm/functions/update_minecraft.sh index 9915f39b3..98889ed64 100755 --- a/lgsm/functions/update_minecraft.sh +++ b/lgsm/functions/update_minecraft.sh @@ -35,7 +35,7 @@ fn_update_minecraft_localbuild(){ # Gets local build info. fn_print_dots "Checking local build: ${remotelocation}" # Uses log file to gather info. - localbuild=$(grep Version "${consolelogdir}"/* 2>/dev/null | tail -1 | sed 's/.*Version //') + localbuild=$(grep -i version "${consolelogdir}"/* | tail -1 | sed 's/.*[Vv]ersion //' | sed 's/\r//g' 2>/dev/null) if [ -z "${localbuild}" ]; then fn_print_error "Checking local build: ${remotelocation}" fn_print_error_nl "Checking local build: ${remotelocation}: no log files containing version info" @@ -49,7 +49,7 @@ fn_update_minecraft_localbuild(){ command_start.sh fn_firstcommand_reset totalseconds=0 - localbuild=$(grep Version "${consolelogdir}"/* 2>/dev/null | tail -1 | sed 's/.*Version //') + localbuild=$(grep -i version "${consolelogdir}"/* | tail -1 | sed 's/.*[Vv]ersion //' | sed 's/\r//g' 2>/dev/null) while [ -z "${localbuild}" ]; do sleep 1 fn_print_info "Checking local build: ${remotelocation}: waiting for log file: ${totalseconds}" @@ -58,7 +58,7 @@ fn_update_minecraft_localbuild(){ fn_script_log_info "Waiting for log file to generate" fi - localbuild=$(grep Version "$(ls -tr "${consolelogdir}"/* 2>/dev/null)" | tail -1 | sed 's/.*Version //') + localbuild=$(grep -i version "${consolelogdir}"/* | tail -1 | sed 's/.*[Vv]ersion //' | sed 's/\r//g' 2>/dev/null) if [ "${totalseconds}" -gt "120" ]; then localbuild="0" fn_print_error "Checking local build: ${remotelocation}: waiting for log file" @@ -145,6 +145,7 @@ fn_update_minecraft_compare(){ command_start.sh fn_firstcommand_reset fi + unset exitbypass date +%s > "${lockdir}/lastupdate.lock" alert="update" alert.sh diff --git a/lgsm/functions/update_minecraft_bedrock.sh b/lgsm/functions/update_minecraft_bedrock.sh old mode 100755 new mode 100644 index d980ff289..34ada66b3 --- a/lgsm/functions/update_minecraft_bedrock.sh +++ b/lgsm/functions/update_minecraft_bedrock.sh @@ -139,6 +139,7 @@ fn_update_minecraft_compare(){ command_start.sh fn_firstcommand_reset fi + unset exitbypass date +%s > "${lockdir}/lastupdate.lock" alert="update" alert.sh diff --git a/lgsm/functions/update_mta.sh b/lgsm/functions/update_mta.sh old mode 100755 new mode 100644 index bb5f744ea..00ffc5a18 --- a/lgsm/functions/update_mta.sh +++ b/lgsm/functions/update_mta.sh @@ -168,6 +168,7 @@ fn_update_mta_compare(){ command_start.sh fn_firstcommand_reset fi + unset exitbypass date +%s > "${lockdir}/lastupdate.lock" alert="update" alert.sh diff --git a/lgsm/functions/update_mumble.sh b/lgsm/functions/update_mumble.sh old mode 100755 new mode 100644 index dfe8b317a..76ae837f3 --- a/lgsm/functions/update_mumble.sh +++ b/lgsm/functions/update_mumble.sh @@ -104,6 +104,7 @@ fn_update_mumble_compare(){ command_start.sh fn_firstcommand_reset fi + unset exitbypass date +%s > "${lockdir}/lastupdate.lock" alert="update" alert.sh diff --git a/lgsm/functions/update_steamcmd.sh b/lgsm/functions/update_steamcmd.sh index 11ad0598c..28496f7d7 100644 --- a/lgsm/functions/update_steamcmd.sh +++ b/lgsm/functions/update_steamcmd.sh @@ -113,6 +113,7 @@ fn_update_steamcmd_compare(){ command_start.sh fn_firstcommand_reset fi + unset exitbypass date +%s > "${lockdir}/lastupdate.lock" alert="update" alert.sh diff --git a/lgsm/functions/update_ts3.sh b/lgsm/functions/update_ts3.sh old mode 100755 new mode 100644 index b4fc5d692..b72979ff4 --- a/lgsm/functions/update_ts3.sh +++ b/lgsm/functions/update_ts3.sh @@ -166,6 +166,7 @@ fn_update_ts3_compare(){ command_start.sh fn_firstcommand_reset fi + unset exitbypass date +%s > "${lockdir}/lastupdate.lock" alert="update" alert.sh From 455fd0378746d8fe96bbeaddbfb6a7b24ba4b72f Mon Sep 17 00:00:00 2001 From: Christian Date: Mon, 5 Oct 2020 23:32:03 +0200 Subject: [PATCH 14/70] fix(rustserver): fix wipe for player.states.*.db (#3065) --- lgsm/functions/command_wipe.sh | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lgsm/functions/command_wipe.sh b/lgsm/functions/command_wipe.sh index 7ebf2aa9d..3e0c53b2e 100755 --- a/lgsm/functions/command_wipe.sh +++ b/lgsm/functions/command_wipe.sh @@ -146,6 +146,19 @@ fn_wipe_server_files(){ fn_sleep_time fn_script_log_pass "No player death to remove" fi + # Wipe player states files + if [ -n "$(find "${serveridentitydir}" -type f -name "player.states.*.db")" ]; then + echo -en "removing player states player.states.*.db file(s)..." + fn_sleep_time + fn_script_log_info "Removing player states: ${serveridentitydir}/player.states.*.db" + find "${serveridentitydir:?}" -type f -name "player.states.*.db" -delete | tee -a "${lgsmlog}" + fn_wipe_exit_code + fn_sleep_time + else + echo -e "no player states to remove" + fn_sleep_time + fn_script_log_pass "No player states to remove" + fi # Wipe blueprints only if full-wipe command was used. if [ "${fullwipe}" == "1" ]; then if [ -n "$(find "${serveridentitydir}" -type f -name "player.blueprints.*.db")" ]; then From ff646adb24a105faa92765d3e62a36fc9fed5a8b Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 5 Oct 2020 22:35:12 +0100 Subject: [PATCH 15/70] Version v20.5.1 --- lgsm/functions/core_functions.sh | 2 +- linuxgsm.sh | 2 +- tests/tests_fctrserver.sh | 2 +- tests/tests_jc2server.sh | 2 +- tests/tests_mcserver.sh | 2 +- tests/tests_ts3server.sh | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index ea11f7e70..308e3bb68 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -7,7 +7,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -modulesversion="v20.5.0" +modulesversion="v20.5.1" # Core diff --git a/linuxgsm.sh b/linuxgsm.sh index 712f2eccf..67f24da3f 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.0" +version="v20.5.1" shortname="core" gameservername="core" commandname="CORE" diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh index 6524907a8..8856a63b9 100644 --- a/tests/tests_fctrserver.sh +++ b/tests/tests_fctrserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.0" +version="v20.5.1" shortname="fctr" gameservername="fctrserver" commandname="CORE" diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh index befa6c21c..dca188aef 100644 --- a/tests/tests_jc2server.sh +++ b/tests/tests_jc2server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.0" +version="v20.5.1" shortname="jc2" gameservername="jc2server" commandname="CORE" diff --git a/tests/tests_mcserver.sh b/tests/tests_mcserver.sh index 4a81e0aea..71b45f34a 100644 --- a/tests/tests_mcserver.sh +++ b/tests/tests_mcserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.0" +version="v20.5.1" shortname="mc" gameservername="mcserver" commandname="CORE" diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh index 29ba2af77..c9756c331 100644 --- a/tests/tests_ts3server.sh +++ b/tests/tests_ts3server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.0" +version="v20.5.1" shortname="ts3" gameservername="ts3server" commandname="CORE" From 6f152ecfb3c182745c3d1d9a2b93713d38a77dfd Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 7 Oct 2020 11:46:19 +0100 Subject: [PATCH 16/70] Updated Codacy badge to new organisation --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7e8c789d3..6f6f41c6f 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ LinuxGSM -[![LinuxGSM](https://img.shields.io/badge/-LinuxGSM-2b2b2b.svg?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAACsAAABACAYAAACDbo5ZAAAGD0lEQVR4AcWYa2wUVRvHz75c2vJ2disXoUBEVIioRAx%2BMIFA1IRwUS6KCCiIKBrvhEYiiGm5iBgk8QOGEgUUDYTttmVZWFr2UmwURS6iYAoCtmisElSsdHdbkT7%2BTzoNy%2BGc2dm54C%2F5Rdkz85x%2FZ86ZOXOYXYhIg3Phx%2FA4PAcv6f%2Btg5vhHJjP3EcZsgsshufJHH%2FAJbDztQ7aG35J1vgCXn%2BtgvrgEbLHYei9FmE3kDOUuh10OGwjZ7gEh7kZ9gNyllK3gnrg7%2BQs56DHjbCDyB0GuRF2ArnDeDfCziF3mO1G2FfJHRa4EXYpuUOxG2GXkzuUuBH2TXKH5W6ELSV3eM%2BNsOUk5yQcAY8p2uvgSPitor3MjbB1UOQXOFBvHwpbhPYWOExvL4SNUOQ7p4P2JTlzhOPmCu0vCu1PQpE2WOhk2MdJjk9y7HNwP1wEPUJbAcmZ6WTYrYolnifbxZBiibnFySHQCkUaLdY7C0V4%2FT5OhF1JcuIW6%2B0lOcvsBi2Ezao3j8Ov7Quwj52w60jNKIs1R5GatVaDDoEXSU4D7GSxbidYT3IuwjusFK0mNUVMwaZNNbl%2B%2F87hoVCom0HthaQmnG3QB0lNPcxlCvz%2B0GtlZTuorCxYYlA%2FDzbY%2FnrAgV3hCVLzCDMgEAi9wMMi9IIM%2FUwnNXWwi5mwRaSmmmXA798xq%2F3Khp420VeE1LyS6eQeBhttSXgzywCCToIUCOyYZvKLOWWwkdfd6ORVpGYJM0F5efDe9mEQHGty2BWTmhVGO4PNBmOoKzMBxmo%2FhD25dWvljSbD5hjMkb9gT9lJq63Mzi1bKkbjloc7xBWtwiRrDASCVRi%2FRxA8if%2BvrawMTzYI%2FACpeUv2KFFtDcUyTKilCHcis8G1Ga7wHpLzG8wVFs1K7jaeUKHZfIxmkj9%2FM4S9x9RGiMEudo0QbCVu9Xqn5PWEwLUk5%2FP0iaXac53I0kAH9Sau4m54lo%2FdTMfyekLYKQZ7ub34AbMMlmw5irC2VYTN0fuVMYMf8JHxJ7L7YYXAlSRnI2%2F8RtH4siTsDMz%2BZ5yS15OEXUxyDjGD1%2BvEq8MG16CDzY6JepKwT6geYbzxb0XjGMl7vwGSgzZIwo4nOa1M8Yr9Afb%2Fj8L21%2FsXaeaNZ2A6KTiEASph%2F0vF80cn4tokqu79fzfCUk2vfF4%2FFdFGEjGPHvg2yWrsDG%2F4%2BqpZB8jPOiXjWk0y5iXdM3XhKUvxBTA9UvHuvNPh%2Bzb%2BWj10z6nwuHWBbQFMvNCjKnn7qd1jS%2Fnx9VX3b6jC%2BbwOr5eMe3%2B83IcW4%2F3qgT%2BUTbA9srGaiHsn8AKiF6Ld%2FxF%2FOx6eeAJXabvK78MTTornNMd6XJTVR7%2Fj9bBjhFxV%2FMc1kJOAy2AeA%2FgrV4mFVDZFCqm8rEJ6qysCAWqK9iaztRJRbWXa4moFTELOav7jY%2FqAvoXp0Gc9NX7bIZl17%2FZl0rC1wRLeno0NvP%2B0CTcYNnS8wW6CtzNANaxzKqo9hRNOQ8rGo7tmSsMe2zWdt2frqVRcm5s2fofCgawDNHRNxnyfqgsYez4y4ADCjRM9H73hsNWafILTQdaFiSTj%2BQ%2FxA6yH7d%2BCmR8XbYr0a7VTF2N4siSsb5qdos3R6%2FjGxpULFfw7EfORnbrI9TAToX0sD40%2F2ylcGdh2Rdhg%2BSf2gka9jRTqK9%2BGwgHz7RTfVbHxirDhivdthYUvMRX8aYAD9lstvi%2B0aDL2DUZ0eCBUNNVG0IP65FLTWqPdiqdC0koHTVXe7iyNRG23QotBEy1RbTAzQyrmnYUT2rLsoA13JpcB4eVC2daBM1g2JGLekmwf5On7EJfngfZTNnVSce8bFjaTmQdvs%2FXmO%2FJVpoXdx3RSUe9O00Fj3nUdy0RLgRHiHXOPGW1h2uKZ07c9rG%2Bxyefp23pQeyBIEQoavYlakrG8fnrY5yHn2fbxXzAgw7m8bT5zkkSk4C7cpmOK21esB%2FXAQ5DzFfTo43%2BF%2FDzf0eZ4wZ3MDSjMcvD6nIeOahGgia%2FyU3HforTPkWkwnakdn0cI9jqfbPjD%2FuQLJr6644snlgX%2FApOMoyd1R5%2FxAAAAAElFTkSuQmCC)](https://linuxgsm.com) [![Build Status](https://travis-ci.com/GameServerManagers/LinuxGSM.svg?branch=master)](https://travis-ci.com/GameServerManagers/LinuxGSM) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/3e98be27840043a090c3ab6e35db44b0)](https://app.codacy.com/app/GameServerManagers/LinuxGSM?utm_source=github.com&utm_medium=referral&utm_content=GameServerManagers/LinuxGSM&utm_campaign=Badge_Grade_Dashboard) [![Codacy Badge](https://api.codacy.com/project/badge/Coverage/9ef77095e98a43618ddd57381f86b4be)](https://www.codacy.com/manual/GameServerManagers/LinuxGSM?utm_source=github.com&utm_medium=referral&utm_content=GameServerManagers/LinuxGSM&utm_campaign=Badge_Coverage) [![Backup Repo](https://github.com/GameServerManagers/LinuxGSM/workflows/Backup%20Repo/badge.svg)](https://bitbucket.org/GameServerManagers/linuxgsm) [![Discord](https://discordapp.com/api/guilds/127498813903601664/widget.png?style=shield)](https://linuxgsm.com/discord) [![MIT Licence](https://badges.frapsoft.com/os/mit/mit.svg?v=103)](https://github.com/GameServerManagers/LinuxGSM/blob/master/LICENSE) [![made-with-bash](https://img.shields.io/badge/-Made%20with%20Bash-1f425f.svg?logo=image%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw%2FeHBhY2tldCBiZWdpbj0i77u%2FIiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8%2BIDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkE3MDg2QTAyQUZCMzExRTVBMkQxRDMzMkJDMUQ4RDk3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkE3MDg2QTAzQUZCMzExRTVBMkQxRDMzMkJDMUQ4RDk3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTcwODZBMDBBRkIzMTFFNUEyRDFEMzMyQkMxRDhEOTciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTcwODZBMDFBRkIzMTFFNUEyRDFEMzMyQkMxRDhEOTciLz4gPC9yZGY6RGVzY3JpcHRpb24%2BIDwvcmRmOlJERj4gPC94OnhtcG1ldGE%2BIDw%2FeHBhY2tldCBlbmQ9InIiPz6lm45hAAADkklEQVR42qyVa0yTVxzGn7d9Wy03MS2ii8s%2BeokYNQSVhCzOjXZOFNF4jx%2BMRmPUMEUEqVG36jo2thizLSQSMd4N8ZoQ8RKjJtooaCpK6ZoCtRXKpRempbTv5ey83bhkAUphz8fznvP8znn%2B%2F3NeEEJgNBoRRSmz0ub%2FfuxEacBg%2FDmYtiCjgo5NG2mBXq%2BH5I1ogMRk9Zbd%2BQU2e1ML6VPLOyf5tvBQ8yT1lG10imxsABm7SLs898GTpyYynEzP60hO3trHDKvMigUwdeaceacqzp7nOI4n0SSIIjl36ao4Z356OV07fSQAk6xJ3XGg%2BLCr1d1OYlVHp4eUHPnerU79ZA%2F1kuv1JQMAg%2BE4O2P23EumF3VkvHprsZKMzKwbRUXFEyTvSIEmTVbrysp%2BWr8wfQHGK6WChVa3bKUmdWou%2BjpArdGkzZ41c1zG%2Fu5uGH4swzd561F%2BuhIT4%2BLnSuPsv9%2BJKIpjNr9dXYOyk7%2FBZrcjIT4eCnoKgedJP4BEqhG77E3NKP31FO7cfQA5K0dSYuLgz2TwCWJSOBzG6crzKK%2BohNfni%2Bx6OMUMMNe%2Fgf7ocbw0v0acKg6J8Ql0q%2BT%2FAXR5PNi5dz9c71upuQqCKFAD%2BYhrZLEAmpodaHO3Qy6TI3NhBpbrshGtOWKOSMYwYGQM8nJzoFJNxP2HjyIQho4PewK6hBktoDcUwtIln4PjOWzflQ%2Be5yl0yCCYgYikTclGlxadio%2BBQCSiW1UXoVGrKYwH4RgMrjU1HAB4vR6LzWYfFUCKxfS8Ftk5qxHoCUQAUkRJaSEokkV6Y%2F%2BJUOC4hn6A39NVXVBYeNP8piH6HeA4fPbpdBQV5KOx0QaL1YppX3Jgk0TwH2Vg6S3u%2BdB91%2B%2FpuNYPYFl5uP5V7ZqvsrX7jxqMXR6ff3gCQSTzFI0a1TX3wIs8ul%2Bq4HuWAAiM39vhOuR1O1fQ2gT%2F26Z8Z5vrl2OHi9OXZn995nLV9aFfS6UC9JeJPfuK0NBohWpCHMSAAsFe74WWP%2BvT25wtP9Bpob6uGqqyDnOtaeumjRu%2ByFu36VntK%2FPA5umTJeUtPWZSU9BCgud661odVp3DZtkc7AnYR33RRC708PrVi1larW7XwZIjLnd7R6SgSqWSNjU1B3F72pz5TZbXmX5vV81Yb7Lg7XT%2FUXriu8XLVqw6c6XqWnBKiiYU%2BMt3wWF7u7i91XlSEITwSAZ%2FCzAAHsJVbwXYFFEAAAAASUVORK5CYII%3D)](https://www.gnu.org/software/bash/) +[![LinuxGSM](https://img.shields.io/badge/-LinuxGSM-2b2b2b.svg?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAACsAAABACAYAAACDbo5ZAAAGD0lEQVR4AcWYa2wUVRvHz75c2vJ2disXoUBEVIioRAx%2BMIFA1IRwUS6KCCiIKBrvhEYiiGm5iBgk8QOGEgUUDYTttmVZWFr2UmwURS6iYAoCtmisElSsdHdbkT7%2BTzoNy%2BGc2dm54C%2F5Rdkz85x%2FZ86ZOXOYXYhIg3Phx%2FA4PAcv6f%2Btg5vhHJjP3EcZsgsshufJHH%2FAJbDztQ7aG35J1vgCXn%2BtgvrgEbLHYei9FmE3kDOUuh10OGwjZ7gEh7kZ9gNyllK3gnrg7%2BQs56DHjbCDyB0GuRF2ArnDeDfCziF3mO1G2FfJHRa4EXYpuUOxG2GXkzuUuBH2TXKH5W6ELSV3eM%2BNsOUk5yQcAY8p2uvgSPitor3MjbB1UOQXOFBvHwpbhPYWOExvL4SNUOQ7p4P2JTlzhOPmCu0vCu1PQpE2WOhk2MdJjk9y7HNwP1wEPUJbAcmZ6WTYrYolnifbxZBiibnFySHQCkUaLdY7C0V4%2FT5OhF1JcuIW6%2B0lOcvsBi2Ezao3j8Ov7Quwj52w60jNKIs1R5GatVaDDoEXSU4D7GSxbidYT3IuwjusFK0mNUVMwaZNNbl%2B%2F87hoVCom0HthaQmnG3QB0lNPcxlCvz%2B0GtlZTuorCxYYlA%2FDzbY%2FnrAgV3hCVLzCDMgEAi9wMMi9IIM%2FUwnNXWwi5mwRaSmmmXA798xq%2F3Khp420VeE1LyS6eQeBhttSXgzywCCToIUCOyYZvKLOWWwkdfd6ORVpGYJM0F5efDe9mEQHGty2BWTmhVGO4PNBmOoKzMBxmo%2FhD25dWvljSbD5hjMkb9gT9lJq63Mzi1bKkbjloc7xBWtwiRrDASCVRi%2FRxA8if%2BvrawMTzYI%2FACpeUv2KFFtDcUyTKilCHcis8G1Ga7wHpLzG8wVFs1K7jaeUKHZfIxmkj9%2FM4S9x9RGiMEudo0QbCVu9Xqn5PWEwLUk5%2FP0iaXac53I0kAH9Sau4m54lo%2FdTMfyekLYKQZ7ub34AbMMlmw5irC2VYTN0fuVMYMf8JHxJ7L7YYXAlSRnI2%2F8RtH4siTsDMz%2BZ5yS15OEXUxyDjGD1%2BvEq8MG16CDzY6JepKwT6geYbzxb0XjGMl7vwGSgzZIwo4nOa1M8Yr9Afb%2Fj8L21%2FsXaeaNZ2A6KTiEASph%2F0vF80cn4tokqu79fzfCUk2vfF4%2FFdFGEjGPHvg2yWrsDG%2F4%2BqpZB8jPOiXjWk0y5iXdM3XhKUvxBTA9UvHuvNPh%2Bzb%2BWj10z6nwuHWBbQFMvNCjKnn7qd1jS%2Fnx9VX3b6jC%2BbwOr5eMe3%2B83IcW4%2F3qgT%2BUTbA9srGaiHsn8AKiF6Ld%2FxF%2FOx6eeAJXabvK78MTTornNMd6XJTVR7%2Fj9bBjhFxV%2FMc1kJOAy2AeA%2FgrV4mFVDZFCqm8rEJ6qysCAWqK9iaztRJRbWXa4moFTELOav7jY%2FqAvoXp0Gc9NX7bIZl17%2FZl0rC1wRLeno0NvP%2B0CTcYNnS8wW6CtzNANaxzKqo9hRNOQ8rGo7tmSsMe2zWdt2frqVRcm5s2fofCgawDNHRNxnyfqgsYez4y4ADCjRM9H73hsNWafILTQdaFiSTj%2BQ%2FxA6yH7d%2BCmR8XbYr0a7VTF2N4siSsb5qdos3R6%2FjGxpULFfw7EfORnbrI9TAToX0sD40%2F2ylcGdh2Rdhg%2BSf2gka9jRTqK9%2BGwgHz7RTfVbHxirDhivdthYUvMRX8aYAD9lstvi%2B0aDL2DUZ0eCBUNNVG0IP65FLTWqPdiqdC0koHTVXe7iyNRG23QotBEy1RbTAzQyrmnYUT2rLsoA13JpcB4eVC2daBM1g2JGLekmwf5On7EJfngfZTNnVSce8bFjaTmQdvs%2FXmO%2FJVpoXdx3RSUe9O00Fj3nUdy0RLgRHiHXOPGW1h2uKZ07c9rG%2Bxyefp23pQeyBIEQoavYlakrG8fnrY5yHn2fbxXzAgw7m8bT5zkkSk4C7cpmOK21esB%2FXAQ5DzFfTo43%2BF%2FDzf0eZ4wZ3MDSjMcvD6nIeOahGgia%2FyU3HforTPkWkwnakdn0cI9jqfbPjD%2FuQLJr6644snlgX%2FApOMoyd1R5%2FxAAAAAElFTkSuQmCC)](https://linuxgsm.com) [![Build Status](https://travis-ci.com/GameServerManagers/LinuxGSM.svg?branch=master)](https://travis-ci.com/GameServerManagers/LinuxGSM) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/d19c5234dc3743d8a8a14093711ca52d)](https://www.codacy.com/gh/GameServerManagers/LinuxGSM/dashboard?utm_source=github.com&utm_medium=referral&utm_content=GameServerManagers/LinuxGSM&utm_campaign=Badge_Grade) [![Backup Repo](https://github.com/GameServerManagers/LinuxGSM/workflows/Backup%20Repo/badge.svg)](https://bitbucket.org/GameServerManagers/linuxgsm) [![Discord](https://discordapp.com/api/guilds/127498813903601664/widget.png?style=shield)](https://linuxgsm.com/discord) [![MIT Licence](https://badges.frapsoft.com/os/mit/mit.svg?v=103)](https://github.com/GameServerManagers/LinuxGSM/blob/master/LICENSE) [![made-with-bash](https://img.shields.io/badge/-Made%20with%20Bash-1f425f.svg?logo=image%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw%2FeHBhY2tldCBiZWdpbj0i77u%2FIiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8%2BIDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkE3MDg2QTAyQUZCMzExRTVBMkQxRDMzMkJDMUQ4RDk3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkE3MDg2QTAzQUZCMzExRTVBMkQxRDMzMkJDMUQ4RDk3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTcwODZBMDBBRkIzMTFFNUEyRDFEMzMyQkMxRDhEOTciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTcwODZBMDFBRkIzMTFFNUEyRDFEMzMyQkMxRDhEOTciLz4gPC9yZGY6RGVzY3JpcHRpb24%2BIDwvcmRmOlJERj4gPC94OnhtcG1ldGE%2BIDw%2FeHBhY2tldCBlbmQ9InIiPz6lm45hAAADkklEQVR42qyVa0yTVxzGn7d9Wy03MS2ii8s%2BeokYNQSVhCzOjXZOFNF4jx%2BMRmPUMEUEqVG36jo2thizLSQSMd4N8ZoQ8RKjJtooaCpK6ZoCtRXKpRempbTv5ey83bhkAUphz8fznvP8znn%2B%2F3NeEEJgNBoRRSmz0ub%2FfuxEacBg%2FDmYtiCjgo5NG2mBXq%2BH5I1ogMRk9Zbd%2BQU2e1ML6VPLOyf5tvBQ8yT1lG10imxsABm7SLs898GTpyYynEzP60hO3trHDKvMigUwdeaceacqzp7nOI4n0SSIIjl36ao4Z356OV07fSQAk6xJ3XGg%2BLCr1d1OYlVHp4eUHPnerU79ZA%2F1kuv1JQMAg%2BE4O2P23EumF3VkvHprsZKMzKwbRUXFEyTvSIEmTVbrysp%2BWr8wfQHGK6WChVa3bKUmdWou%2BjpArdGkzZ41c1zG%2Fu5uGH4swzd561F%2BuhIT4%2BLnSuPsv9%2BJKIpjNr9dXYOyk7%2FBZrcjIT4eCnoKgedJP4BEqhG77E3NKP31FO7cfQA5K0dSYuLgz2TwCWJSOBzG6crzKK%2BohNfni%2Bx6OMUMMNe%2Fgf7ocbw0v0acKg6J8Ql0q%2BT%2FAXR5PNi5dz9c71upuQqCKFAD%2BYhrZLEAmpodaHO3Qy6TI3NhBpbrshGtOWKOSMYwYGQM8nJzoFJNxP2HjyIQho4PewK6hBktoDcUwtIln4PjOWzflQ%2Be5yl0yCCYgYikTclGlxadio%2BBQCSiW1UXoVGrKYwH4RgMrjU1HAB4vR6LzWYfFUCKxfS8Ftk5qxHoCUQAUkRJaSEokkV6Y%2F%2BJUOC4hn6A39NVXVBYeNP8piH6HeA4fPbpdBQV5KOx0QaL1YppX3Jgk0TwH2Vg6S3u%2BdB91%2B%2FpuNYPYFl5uP5V7ZqvsrX7jxqMXR6ff3gCQSTzFI0a1TX3wIs8ul%2Bq4HuWAAiM39vhOuR1O1fQ2gT%2F26Z8Z5vrl2OHi9OXZn995nLV9aFfS6UC9JeJPfuK0NBohWpCHMSAAsFe74WWP%2BvT25wtP9Bpob6uGqqyDnOtaeumjRu%2ByFu36VntK%2FPA5umTJeUtPWZSU9BCgud661odVp3DZtkc7AnYR33RRC708PrVi1larW7XwZIjLnd7R6SgSqWSNjU1B3F72pz5TZbXmX5vV81Yb7Lg7XT%2FUXriu8XLVqw6c6XqWnBKiiYU%2BMt3wWF7u7i91XlSEITwSAZ%2FCzAAHsJVbwXYFFEAAAAASUVORK5CYII%3D)](https://www.gnu.org/software/bash/) [LinuxGSM](https://linuxgsm.com) is the command-line tool for quick, simple deployment and management of Linux dedicated game servers. From 0ff4305c39248178b6687295800c844f35fa2080 Mon Sep 17 00:00:00 2001 From: Christian Date: Wed, 7 Oct 2020 21:20:29 +0200 Subject: [PATCH 17/70] feat(mods): add Stripper:Source to the modlist (#3070) --- lgsm/functions/mods_list.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh index 13ae3e268..333601dce 100755 --- a/lgsm/functions/mods_list.sh +++ b/lgsm/functions/mods_list.sh @@ -71,6 +71,7 @@ modseparator="MOD" mod_info_metamod=( MOD "metamod" "MetaMod" "${metamodurl}" "${metamodlatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/metamod/metaplugins.ini;" "source;" "GAMES" "NOTGAMES" "https://www.sourcemm.net" "Plugins Framework" ) mod_info_sourcemod=( MOD "sourcemod" "SourceMod" "${sourcemodurl}" "${sourcemodlatestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "source;" "GAMES" "NOTGAMES" "http://www.sourcemod.net" "Admin Features (requires MetaMod)" ) mod_info_steamworks=( MOD "steamworks" "SteamWorks" "${steamworksurl}" "${steamworkslatestfile}" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/KyleSanderson/SteamWorks" "Exposing SteamWorks functions to SourcePawn" ) +mod_info_stripper=( MOD "stripper" "Stripper Source" "http://www.bailopan.net/stripper/snapshots/1.2/stripper-1.2.2-git129-linux.tar.gz" "stripper-1.2.2-git129-linux.tar.gz" "0" "LowercaseOff" "${systemdir}" "addons/stripper/maps;" "ENGINES" "Counter-Strike: Global Offensive;Counter-Strike: Source;Day of Defeat: Source;Half Life: Deathmatch;Half Life 2: Deathmatch;Insurgency;Left 4 Dead;Left 4 Dead 2;Nuclear Dawn;Team Fortress 2;" "NOTGAMES" "http://www.bailopan.net/stripper/" "Add or remove objects from map (requires MetaMod)") # CS:GO Mods mod_info_gokz=( MOD "gokz" "GOKZ" "https://bitbucket.org/kztimerglobalteam/gokz/downloads/GOKZ-latest.zip" "gokz-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://bitbucket.org/kztimerglobalteam/gokz/src/master/" "Implements the KZ game mode (requires SourceMod and MetaMod)" ) @@ -99,4 +100,4 @@ mod_info_hwoxide=( MOD "hwoxide" "Oxide for Hurtworld" "${oxidehurtworldlatestli mod_info_sdtdoxide=( MOD "sdtdoxide" "Oxide for 7 Days To Die" "${oxidesdtdlatestlink}" "Oxide.SevenDaysToDie.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "7 Days To Die;" "NOTGAMES" "https://umod.org/games/7-days-to-die" "Allows for the use of plugins" ) # REQUIRED: Set all mods info into the global array -mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_pug[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" ) +mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_stripper[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_pug[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" ) From f0f0a561330a9cf51b7cb60a66cc8d8099ef81e8 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 9 Oct 2020 12:12:17 +0100 Subject: [PATCH 18/70] feat: remove support for Serious Sam 3 and Goldeneye: Source (#3078) --- .../config-lgsm/gesserver/_default.cfg | 183 ------------------ .../config-lgsm/ss3server/_default.cfg | 181 ----------------- lgsm/data/serverlist.csv | 2 - lgsm/functions/check_deps.sh | 6 - lgsm/functions/core_functions.sh | 10 - lgsm/functions/fix.sh | 4 - lgsm/functions/fix_ges.sh | 10 - lgsm/functions/fix_ss3.sh | 23 --- lgsm/functions/info_config.sh | 78 -------- lgsm/functions/info_messages.sh | 15 +- lgsm/functions/info_parms.sh | 23 --- lgsm/functions/install_config.sh | 14 -- lgsm/functions/install_server_files.sh | 4 +- 13 files changed, 2 insertions(+), 551 deletions(-) delete mode 100644 lgsm/config-default/config-lgsm/gesserver/_default.cfg delete mode 100644 lgsm/config-default/config-lgsm/ss3server/_default.cfg delete mode 100755 lgsm/functions/fix_ges.sh delete mode 100755 lgsm/functions/fix_ss3.sh diff --git a/lgsm/config-default/config-lgsm/gesserver/_default.cfg b/lgsm/config-default/config-lgsm/gesserver/_default.cfg deleted file mode 100644 index 24f5f65bf..000000000 --- a/lgsm/config-default/config-lgsm/gesserver/_default.cfg +++ /dev/null @@ -1,183 +0,0 @@ -################################## -######## Default Settings ######## -################################## -# DO NOT EDIT, ANY CHANGES WILL BE OVERWRITTEN! -# Copy settings from here and use them in either: -# common.cfg - applies settings to every instance. -# [instance].cfg - applies settings to a specific instance. - -#### Game Server Settings #### - -## Predefined Parameters | https://docs.linuxgsm.com/configuration/start-parameters -ip="0.0.0.0" -port="27015" -clientport="27005" -sourcetvport="27020" -defaultmap="ge_archives" -maxplayers="16" - -## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters -fn_parms(){ -parms="-game gesource -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}" -} - -#### LinuxGSM Settings #### - -## LinuxGSM Stats -# Send useful stats to LinuxGSM developers. -# https://docs.linuxgsm.com/configuration/linuxgsm-stats -# (on|off) -stats="off" - -## Notification Alerts -# (on|off) - -# Display IP | https://docs.linuxgsm.com/alerts#display-ip -displayip="" - -# More info | https://docs.linuxgsm.com/alerts#more-info -postalert="off" - -# Discord Alerts | https://docs.linuxgsm.com/alerts/discord -discordalert="off" -discordwebhook="webhook" - -# Email Alerts | https://docs.linuxgsm.com/alerts/email -emailalert="off" -email="email@example.com" -emailfrom="" - -# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt -iftttalert="off" -ifttttoken="accesstoken" -iftttevent="linuxgsm_alert" - -# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun -mailgunalert="off" -mailgunapiregion="us" -mailguntoken="accesstoken" -mailgundomain="example.com" -mailgunemailfrom="alert@example.com" -mailgunemail="email@myemail.com" - -# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet -pushbulletalert="off" -pushbullettoken="accesstoken" -channeltag="" - -# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover -pushoveralert="off" -pushovertoken="accesstoken" -pushoveruserkey="userkey" - -# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat -rocketchatalert="off" -rocketchatwebhook="webhook" -rocketchattoken="" - -# Slack Alerts | https://docs.linuxgsm.com/alerts/slack -slackalert="off" -slackwebhook="webhook" - -# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". -# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". -telegramalert="off" -telegramtoken="accesstoken" -telegramchatid="" -curlcustomstring="" - -## Updating | https://docs.linuxgsm.com/commands/update -updateonstart="off" - -## Backup | https://docs.linuxgsm.com/commands/backup -maxbackups="4" -maxbackupdays="30" -stoponbackup="on" - -## Logging | https://docs.linuxgsm.com/features/logging -consolelogging="on" -logdays="7" - -## Monitor | https://docs.linuxgsm.com/commands/monitor -# Query delay time -querydelay="1" - -## ANSI Colors | https://docs.linuxgsm.com/features/ansi-colors -ansi="on" - -#### Advanced Settings #### - -## Message Display Time | https://docs.linuxgsm.com/features/message-display-time -sleeptime="0.5" - -## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd -# Server appid -appid="310" # Source 2007 SDK -# SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch -branch="" -betapassword="" -# Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server -steammaster="true" - -## Stop Mode | https://docs.linuxgsm.com/features/stop-mode -# 1: tmux kill -# 2: CTRL+c -# 3: quit -# 4: quit 120s -# 5: stop -# 6: q -# 7: exit -# 8: 7 Days to Die -# 9: GoldSrc -# 10: Avorion -# 11: end -stopmode="3" - -## Query mode -# 1: session only -# 2: gamedig (gsquery fallback) -# 3: gamedig -# 4: gsquery -# 5: tcp -querymode="2" -querytype="protocol-valve" - -## Console type -consoleverbose="yes" -consoleinteract="yes" - -## Game Server Details -# Do not edit -gamename="GoldenEye: Source" -engine="source" -glibc="2.15" - -#### Directories #### -# Edit with care - -## Game Server Directories -systemdir="${serverfiles}/gesource" -executabledir="${serverfiles}" -executable="./srcds_run" -servercfgdir="${systemdir}/cfg" -servercfg="${selfname}.cfg" -servercfgdefault="server.cfg" -servercfgfullpath="${servercfgdir}/${servercfg}" - -## Backup Directory -backupdir="${lgsmdir}/backup" - -## Logging Directories -logdir="${rootdir}/log" -gamelogdir="${systemdir}/logs" -lgsmlogdir="${logdir}/script" -consolelogdir="${logdir}/console" -lgsmlog="${lgsmlogdir}/${selfname}-script.log" -consolelog="${consolelogdir}/${selfname}-console.log" -alertlog="${lgsmlogdir}/${selfname}-alert.log" -postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log" - -## Logs Naming -lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" -consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" diff --git a/lgsm/config-default/config-lgsm/ss3server/_default.cfg b/lgsm/config-default/config-lgsm/ss3server/_default.cfg deleted file mode 100644 index 9cb3f5601..000000000 --- a/lgsm/config-default/config-lgsm/ss3server/_default.cfg +++ /dev/null @@ -1,181 +0,0 @@ -################################## -######## Default Settings ######## -################################## -# DO NOT EDIT, ANY CHANGES WILL BE OVERWRITTEN! -# Copy settings from here and use them in either: -# common.cfg - applies settings to every instance. -# [instance].cfg - applies settings to a specific instance. - -#### Game Server Settings #### - -## Predefined Parameters | https://docs.linuxgsm.com/configuration/start-parameters -ip="0.0.0.0" - -## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters -# Edit with care | https://raw.githubusercontent.com/GameServerManagers/Game-Server-Configs/master/SeriousSam3BFE/help/DedicatedServer_Readme.txt -fn_parms(){ -parms="+ip ${ip} +logfile ${gamelog} +exec ${servercfgfullpath}" -} - -#### LinuxGSM Settings #### - -## LinuxGSM Stats -# Send useful stats to LinuxGSM developers. -# https://docs.linuxgsm.com/configuration/linuxgsm-stats -# (on|off) -stats="off" - -## Notification Alerts -# (on|off) - -# Display IP | https://docs.linuxgsm.com/alerts#display-ip -displayip="" - -# More info | https://docs.linuxgsm.com/alerts#more-info -postalert="off" - -# Discord Alerts | https://docs.linuxgsm.com/alerts/discord -discordalert="off" -discordwebhook="webhook" - -# Email Alerts | https://docs.linuxgsm.com/alerts/email -emailalert="off" -email="email@example.com" -emailfrom="" - -# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt -iftttalert="off" -ifttttoken="accesstoken" -iftttevent="linuxgsm_alert" - -# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun -mailgunalert="off" -mailgunapiregion="us" -mailguntoken="accesstoken" -mailgundomain="example.com" -mailgunemailfrom="alert@example.com" -mailgunemail="email@myemail.com" - -# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet -pushbulletalert="off" -pushbullettoken="accesstoken" -channeltag="" - -# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover -pushoveralert="off" -pushovertoken="accesstoken" -pushoveruserkey="userkey" - -# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat -rocketchatalert="off" -rocketchatwebhook="webhook" -rocketchattoken="" - -# Slack Alerts | https://docs.linuxgsm.com/alerts/slack -slackalert="off" -slackwebhook="webhook" - -# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". -# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". -telegramalert="off" -telegramtoken="accesstoken" -telegramchatid="" -curlcustomstring="" - -## Updating | https://docs.linuxgsm.com/commands/update -updateonstart="off" - -## Backup | https://docs.linuxgsm.com/commands/backup -maxbackups="4" -maxbackupdays="30" -stoponbackup="on" - -## Logging | https://docs.linuxgsm.com/features/logging -consolelogging="on" -logdays="7" - -## Monitor | https://docs.linuxgsm.com/commands/monitor -# Query delay time -querydelay="1" - -## ANSI Colors | https://docs.linuxgsm.com/features/ansi-colors -ansi="on" - -#### Advanced Settings #### - -## Message Display Time | https://docs.linuxgsm.com/features/message-display-time -sleeptime="0.5" - -## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd -# Server appid -appid="41080" -# SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch -branch="" -betapassword="" -# Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server -steammaster="false" - -## Stop Mode | https://docs.linuxgsm.com/features/stop-mode -# 1: tmux kill -# 2: CTRL+c -# 3: quit -# 4: quit 120s -# 5: stop -# 6: q -# 7: exit -# 8: 7 Days to Die -# 9: GoldSrc -# 10: Avorion -# 11: end -stopmode="2" - -## Query mode -# 1: session only -# 2: gamedig (gsquery fallback) -# 3: gamedig -# 4: gsquery -# 5: tcp -querymode="2" -querytype="protocol-valve" - -## Console type -consoleverbose="" -consoleinteract="" - -## Game Server Details -# Do not edit -gamename="Serious Sam 3: BFE" -engine="seriousengine35" -glibc="2.13" - -#### Directories #### -# Edit with care - -## Game Server Directories -systemdir="${serverfiles}/Bin" -executabledir="${systemdir}" -executable="./runSam3_DedicatedServer.sh" -servercfgdir="${serverfiles}/Content/SeriousSam3/Config" -servercfg="${selfname}.ini" -servercfgdefault="server.ini" -servercfgfullpath="${servercfgdir}/${servercfg}" - -## Backup Directory -backupdir="${lgsmdir}/backup" - -## Logging Directories -logdir="${rootdir}/log" -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" -postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log" - -## Logs Naming -lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" -consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" -gamelogdate="${gamelogdir}/${selfname}-game-$(date '+%Y-%m-%d-%H:%M:%S').log" diff --git a/lgsm/data/serverlist.csv b/lgsm/data/serverlist.csv index 8a71858fe..b871357f9 100644 --- a/lgsm/data/serverlist.csv +++ b/lgsm/data/serverlist.csv @@ -37,7 +37,6 @@ em,emserver,Empires Mod etl,etlserver,ET: Legacy fctr,fctrserver,Factorio fof,fofserver,Fistful of Frags -ges,gesserver,GoldenEye: Source gmod,gmodserver,Garrys Mod hl2dm,hl2dmserver,Half-Life 2: Deathmatch hldm,hldmserver,Half-Life: Deathmatch @@ -88,7 +87,6 @@ sfc,sfcserver,SourceForts Classic sof2,sof2server,Soldier Of Fortune 2: Gold Edition sol,solserver,Soldat squad,squadserver,Squad -ss3,ss3server,Serious Sam 3: BFE st,stserver,Stationeers sven,svenserver,Sven Co-op terraria,terrariaserver,Terraria diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 18548e156..60fc30c72 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -425,9 +425,6 @@ fn_deps_build_debian(){ else array_deps_required+=( default-jre rng-tools ) fi - # GoldenEye: Source - elif [ "${shortname}" == "ges" ]; then - array_deps_required+=( zlib1g:i386 libldap-2.4-2:i386 ) # Sven Co-op elif [ "${shortname}" == "sven" ]; then array_deps_required+=( libssl1.1:i386 zlib1g:i386 ) @@ -534,9 +531,6 @@ fn_deps_build_redhat(){ else array_deps_required+=( java-11-openjdk rng-tools ) fi - # GoldenEye: Source - elif [ "${shortname}" == "ges" ]; then - array_deps_required+=( zlib.i686 openldap.i686 ) # Sven Co-op elif [ "${shortname}" == "sven" ]; then : # not compatible diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index 308e3bb68..21ef3cbd1 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -340,11 +340,6 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } -fix_ges.sh(){ -functionfile="${FUNCNAME[0]}" -fn_fetch_function -} - fix_hw.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function @@ -450,11 +445,6 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } -fix_ss3.sh(){ -functionfile="${FUNCNAME[0]}" -fn_fetch_function -} - fix_ts3.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function diff --git a/lgsm/functions/fix.sh b/lgsm/functions/fix.sh index ad5209747..f92709f56 100755 --- a/lgsm/functions/fix.sh +++ b/lgsm/functions/fix.sh @@ -48,8 +48,6 @@ if [ "${commandname}" != "INSTALL" ]&&[ -z "${fixbypass}" ]; then fix_cmw.sh elif [ "${shortname}" == "dst" ]; then fix_dst.sh - elif [ "${shortname}" == "ges" ]; then - fix_ges.sh elif [ "${shortname}" == "hw" ]; then fix_hw.sh elif [ "${shortname}" == "ins" ]; then @@ -70,8 +68,6 @@ if [ "${commandname}" != "INSTALL" ]&&[ -z "${fixbypass}" ]; then fix_sof2.sh elif [ "${shortname}" == "squad" ]; then fix_squad.sh - elif [ "${shortname}" == "ss3" ]; then - fix_ss3.sh elif [ "${shortname}" == "st" ]; then fix_st.sh elif [ "${shortname}" == "tf2" ]; then diff --git a/lgsm/functions/fix_ges.sh b/lgsm/functions/fix_ges.sh deleted file mode 100755 index 6065f9ba8..000000000 --- a/lgsm/functions/fix_ges.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash -# LinuxGSM fix_ges.sh function -# Author: Daniel Gibbs -# Website: https://linuxgsm.com -# Description: Resolves various issues with GoldenEye: Source. - -functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" - -# Fixes: MALLOC_CHECK_ needing to be set to 0. -export MALLOC_CHECK_=0 diff --git a/lgsm/functions/fix_ss3.sh b/lgsm/functions/fix_ss3.sh deleted file mode 100755 index b19ba6f17..000000000 --- a/lgsm/functions/fix_ss3.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -# LinuxGSM fix_ss3.sh function -# Author: Daniel Gibbs -# Website: https://linuxgsm.com -# Description: Resolves various issues with Serious Sam 3. - -functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" - -# Fixes: https://steamcommunity.com/app/41070/discussions/0/353916981477716386/ -if [ -f "${serverfiles}/Bin/steamclient.so" ] && [ "$(diff "${HOME}/.steam/steamcmd/linux32/steamclient.so" "${serverfiles}/Bin/steamclient.so" 2>/dev/null)" ]; then - # delete old steamclient.so file - rm -f "${serverfiles}/Bin/steamclient.so" - fn_fix_steamclient_so "32" "${serverfiles}/Bin" -fi - -# Fixes: .steam/bin32/libsteam.so: cannot open shared object file: No such file or directory -if [ ! -f "${HOME}/.steam/bin32/libsteam.so" ]; then - fixname="libsteam.so" - fn_fix_msg_start - mkdir -p "${HOME}/.steam/bin32" - cp "${serverfiles}/Bin/libsteam.so" "${HOME}/.steam/bin32/libsteam.so" - fn_fix_msg_end -fi diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index 1ca69764d..d54fdba96 100755 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -827,29 +827,6 @@ fn_info_config_rtcw(){ fi } -fn_info_config_seriousengine35(){ - if [ ! -f "${servercfgfullpath}" ]; then - servername="${unavailable}" - rconpassword="${unavailable}" - gamemode="${unavailable}" - maxplayers="${zero}" - port="${zero}" - else - servername=$(grep "prj_strMultiplayerSessionName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/prj_strMultiplayerSessionName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - rconpassword=$(grep "rcts_strAdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/rcts_strAdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - gamemode=$(grep "gam_idGameMode" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/gam_idGameMode//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - maxplayers=$(grep "gam_ctMaxPlayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]') - port=$(grep "prj_uwPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]') - - # Not Set - servername=${servername:-"NOT SET"} - rconpassword=${rconpassword:-"NOT SET"} - gamemode=${gamemode:-"NOT SET"} - maxplayers=${maxplayers:-"0"} - port=${port:-"0"} - fi -} - #StickyBots fn_info_config_sbots(){ if [ ! -f "${servercfgfullpath}" ]; then @@ -1534,162 +1511,108 @@ fn_info_config_soldat(){ fi } -# Assetto Corsa if [ "${shortname}" == "ac" ]; then fn_info_config_assettocorsa -# ARK: Survival Evolved elif [ "${shortname}" == "ark" ]; then fn_info_config_ark -# Avorion elif [ "${shortname}" == "av" ]; then fn_info_config_avorion -# Ballistic Overkill elif [ "${shortname}" == "bo" ]; then fn_info_config_ballistic_overkill -# Barotrauma elif [ "${shortname}" == "bt" ]; then fn_info_config_barotrauma -# Battalion 1944 elif [ "${shortname}" == "bt1944" ]; then fn_info_config_battalion1944 -# Battlefield: 1942 elif [ "${shortname}" == "bf1942" ]; then fn_info_config_bf1942 -# Battlefield: Vietnam elif [ "${shortname}" == "bfv" ]; then fn_info_config_bfv -# Chivalry: Medieval Warfare elif [ "${shortname}" == "cmw" ]; then fn_info_config_chivalry -# Call of Duty elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]; then fn_info_config_cod -# Call of Duty 2 elif [ "${shortname}" == "cod2" ]; then fn_info_config_cod2 -# Call of Duty 4 elif [ "${shortname}" == "cod4" ]; then fn_info_config_cod4 -# Call of Duty: World at War elif [ "${shortname}" == "codwaw" ]; then fn_info_config_codwaw -# Dont Starve Together elif [ "${shortname}" == "dst" ]; then fn_info_config_dontstarve -# Eco elif [ "${shortname}" == "eco" ]; then fn_info_config_eco -# Factorio elif [ "${shortname}" == "fctr" ]; then fn_info_config_factorio -# Insurgency: Sandstorm elif [ "${shortname}" == "inss" ]; then fn_info_config_inss -# Just Cause 2 elif [ "${shortname}" == "jc2" ]; then fn_info_config_justcause2 -# Just Cause 3 elif [ "${shortname}" == "jc3" ]; then fn_info_config_justcause3 -# Killing Floor 2 elif [ "${shortname}" == "kf2" ]; then fn_info_config_kf2 -# Medal of Honor: Allied Assault elif [ "${shortname}" == "mohaa" ]; then fn_info_config_mohaa -# Memories of Mars elif [ "${shortname}" == "mofm" ]; then fn_info_config_mofm -# QuakeWorld elif [ "${shortname}" == "qw" ]; then fn_info_config_quakeworld -# Quake 2 elif [ "${shortname}" == "q2" ]; then fn_info_config_quake2 -# Quake 3 elif [ "${shortname}" == "q3" ]; then fn_info_config_quake3 -# Quake Live elif [ "${shortname}" == "ql" ]; then fn_info_config_quakelive -# Jedi Knight II: Jedi Outcast elif [ "${shortname}" == "jk2" ]; then fn_info_config_jk2 -# Minecraft elif [ "${shortname}" == "mc" ]; then fn_info_config_minecraft -# Minecraft Bedrock elif [ "${shortname}" == "mcb" ]; then fn_info_config_minecraft_bedrock -# Onset elif [ "${shortname}" == "onset" ]; then fn_info_config_onset -# Post Scriptum: The Bloody Seventh elif [ "${shortname}" == "pstbs" ]; then fn_info_config_pstbs -# Project Cars elif [ "${shortname}" == "pc" ]; then fn_info_config_projectcars -# Project Zomboid elif [ "${shortname}" == "pz" ]; then fn_info_config_projectzomboid -# ARMA 3 elif [ "${shortname}" == "arma3" ]; then fn_info_config_realvirtuality -# Return to Castle Wolfenstein elif [ "${shortname}" == "rtcw" ]; then fn_info_config_rtcw -# Rising World elif [ "${shortname}" == "rw" ]; then fn_info_config_risingworld -# Serious Sam -elif [ "${shortname}" == "ss3" ]; then - fn_info_config_seriousengine35 -# Soldat elif [ "${shortname}" == "sol" ]; then fn_info_config_soldat -# Soldier Of Fortune 2: Gold Edition elif [ "${shortname}" == "sof2" ]; then fn_info_config_sof2 -# Source Engine Games elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsrc" ]; then fn_info_config_source -# Starbound elif [ "${shortname}" == "sb" ]; then fn_info_config_starbound -# Teamspeak 3 elif [ "${shortname}" == "ts3" ]; then fn_info_config_teamspeak3 -# Mumble elif [ "${shortname}" == "mumble" ]; then fn_info_config_mumble -# San Andreas Multiplayer elif [ "${shortname}" == "samp" ]; then fn_info_config_samp -# StickyBots elif [ "${shortname}" == "pstbs" ]; then fn_info_config_sbots -# Teeworlds elif [ "${shortname}" == "tw" ]; then fn_info_config_teeworlds -# Terraria elif [ "${shortname}" == "terraria" ]; then fn_info_config_terraria -# Tower Unite elif [ "${shortname}" == "tu" ]; then fn_info_config_towerunite -# Unreal engine elif [ "${engine}" == "unreal" ]; then fn_info_config_unreal -# Unreal 2 engine elif [ "${engine}" == "unreal2" ]; then fn_info_config_unreal2 -# Unreal 3 engine elif [ "${engine}" == "unreal3" ]; then fn_info_config_unreal3 elif [ "${shortname}" == "ut" ]; then fn_info_config_ut -# 7 Day To Die (unity3d) elif [ "${shortname}" == "sdtd" ]; then fn_info_config_sdtd elif [ "${shortname}" == "wet" ]; then @@ -1704,7 +1627,6 @@ elif [ "${shortname}" == "mta" ]; then fn_info_config_mta elif [ "${shortname}" == "squad" ]; then fn_info_config_squad -# Stationeers elif [ "${shortname}" == "st" ]; then fn_info_config_stationeers elif [ "${shortname}" == "mh" ]; then diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index 15fd7aa5b..4e1863f3e 100755 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -572,7 +572,7 @@ fn_info_message_ports(){ parmslocation="${red}UNKNOWN${default}" # engines/games that require editing in the config file. - local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "dontstarve" "Eco" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Minecraft Bedrock" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "seriousengine35" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" "wurm") + local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "dontstarve" "Eco" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Minecraft Bedrock" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" "wurm") for port_edit in "${ports_edit_array[@]}"; do if [ "${shortname}" == "ut3" ]; then parmslocation="${servercfgdir}/UTWeb.ini" @@ -1081,17 +1081,6 @@ fn_info_message_samp(){ } | column -s $'\t' -t } - -fn_info_message_ss3(){ - echo -e "netstat -atunp | grep Sam3_Ded" - echo -e "" - { - echo -e "${lightblue}DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL${default}" - echo -e "> Game/RCON\tINBOUND\t${port}\ttcp" - echo -e "> Query\tINBOUND\t${queryport}\tudp" - } | column -s $'\t' -t -} - fn_info_message_sbots(){ echo -e "netstat -atunp | grep blank1" echo -e "" @@ -1530,8 +1519,6 @@ fn_info_message_select_engine(){ fn_info_message_starbound elif [ "${shortname}" == "sbots" ]; then fn_info_message_sbots - elif [ "${shortname}" == "ss3" ]; then - fn_info_message_ss3 elif [ "${shortname}" == "terraria" ]; then fn_info_message_terraria elif [ "${shortname}" == "ts3" ]; then diff --git a/lgsm/functions/info_parms.sh b/lgsm/functions/info_parms.sh index 93df0309f..57ca43850 100755 --- a/lgsm/functions/info_parms.sh +++ b/lgsm/functions/info_parms.sh @@ -187,11 +187,6 @@ fn_info_parms_sof2(){ defaultmap=${defaultmap:-"NOT SET"} } -fn_info_parms_ss3(){ - port=${port:-"0"} - queryport=$((port + 1)) -} - fn_info_parms_towerunite(){ port=${port:-"0"} queryport=${queryport:-"0"} @@ -233,19 +228,14 @@ fn_info_parms_wf(){ webadminport=${webadminport:-"0"} } -# ARK: Survival Evolved if [ "${shortname}" == "ark" ]; then fn_info_parms_ark -# ARMA 3 elif [ "${shortname}" == "arma3" ]; then fn_info_parms_realvirtuality -# Barotrauma elif [ "${shortname}" == "bt" ]; then fn_info_parms_barotrauma -# Call of Duty elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]||[ "${engine}" == "iw2.0" ]||[ "${engine}" == "iw3.0" ]; then fn_info_parms_cod -# Factorio elif [ "${shortname}" == "fctr" ]; then fn_info_parms_factorio elif [ "${shortname}" == "inss" ]; then @@ -256,10 +246,8 @@ elif [ "${shortname}" == "kf2" ]; then fn_info_parms_kf2 elif [ "${shortname}" == "mohaa" ]; then fn_info_parms_mohaa -#Memories of Mars elif [ "${shortname}" == "mom" ]; then fn_info_parms_mom -# Project Zomboid elif [ "${shortname}" == "pz" ]; then fn_info_parms_projectzomboid elif [ "${shortname}" == "qw" ]; then @@ -268,26 +256,18 @@ elif [ "${shortname}" == "q2" ]||[ "${shortname}" == "q3" ]; then fn_info_parms_quake2 elif [ "${shortname}" == "rtcw" ]; then fn_info_parms_rtcw -# Rust elif [ "${shortname}" == "rust" ]; then fn_info_parms_rust elif [ "${shortname}" == "samp" ]; then fn_info_parms_samp -# Rising World elif [ "${shortname}" == "rw" ]; then fn_info_parms_risingworld -# Soldier Of Fortune 2: Gold Edition elif [ "${shortname}" == "sof2" ]; then fn_info_parms_sof2 -# Sticky Bots elif [ "${shortname}" == "sbots" ]; then fn_info_parms_stickybots -# Serious Sam -elif [ "${shortname}" == "ss3" ]; then - fn_info_parms_ss3 elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsrc" ]; then fn_info_parms_source -# Spark elif [ "${engine}" == "spark" ]; then fn_info_parms_spark elif [ "${shortname}" == "tu" ]; then @@ -298,17 +278,14 @@ elif [ "${shortname}" == "mh" ]; then fn_info_parms_mordhau elif [ "${shortname}" == "mta" ]; then fn_info_parms_mta -# Unreal/Unreal 2 engine elif [ "${engine}" == "unreal" ]||[ "${engine}" == "unreal2" ]; then fn_info_parms_unreal -# Unreal 3 engine elif [ "${engine}" == "unreal3" ]; then fn_info_parms_unreal3 elif [ "${shortname}" == "unt" ]; then fn_info_parms_unturned elif [ "${shortname}" == "ut" ]; then fn_info_parms_ut -# Warfork elif [ "${shortname}" == "wf" ]; then fn_info_parms_wf fi diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index 63589b81c..543bd0a3d 100755 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -429,13 +429,6 @@ elif [ "${shortname}" == "gmod" ]; then fn_default_config_remote fn_set_config_vars fn_list_config_locations -elif [ "${shortname}" == "ges" ]; then - gamedirname="GoldenEyeSource" - array_configs+=( server.cfg ) - fn_fetch_default_config - fn_default_config_remote - fn_set_config_vars - fn_list_config_locations elif [ "${shortname}" == "hldm" ]; then gamedirname="HalfLifeDeathmatch" array_configs+=( server.cfg ) @@ -667,13 +660,6 @@ elif [ "${shortname}" == "samp" ]; then fn_default_config_remote fn_set_config_vars fn_list_config_locations -elif [ "${shortname}" == "ss3" ]; then - gamedirname="SeriousSam3BFE" - array_configs+=( server.ini ) - fn_fetch_default_config - fn_default_config_remote - fn_set_config_vars - fn_list_config_locations elif [ "${shortname}" == "sol" ]; then gamedirname="Soldat" array_configs+=( soldat.ini ) diff --git a/lgsm/functions/install_server_files.sh b/lgsm/functions/install_server_files.sh index 979a32805..73f2dc2b1 100755 --- a/lgsm/functions/install_server_files.sh +++ b/lgsm/functions/install_server_files.sh @@ -27,8 +27,6 @@ fn_install_server_files(){ remote_fileurl="http://linuxgsm.download/CallOfDutyWorldAtWar/codwaw-lnxded-1.7-full.tar.xz"; local_filedir="${tmpdir}"; local_filename="codwaw-lnxded-1.7-full.tar.xz"; chmodx="nochmodx" run="norun"; force="noforce"; md5="2c6be1bb66ea631b9b2e7ae6216c6680" elif [ "${shortname}" == "etl" ]; then remote_fileurl="http://linuxgsm.download/WolfensteinEnemyTerritory/etlegacy-v2.76-i386-et-260b.tar.xz"; local_filedir="${tmpdir}"; local_filename="etlegacy-v2.75-i386-et-260b.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="178a00233cec1e25b69d130107ce1a79" - elif [ "${shortname}" == "ges" ]; then - remote_fileurl="http://linuxgsm.download/GoldenEyeSource/GoldenEye_Source_v5.0.6_full_server.tar.xz"; local_filedir="${tmpdir}"; local_filename="GoldenEye_Source_v5.0.6_full_server.tar.xz"; chmodx="nochmodx" run="norun"; force="noforce"; md5="e31481f280eed40c9145816bd4f6dc45" elif [ "${shortname}" == "mohaa" ]; then remote_fileurl="http://linuxgsm.download/MedalofHonorAlliedAssault/moh_revival_v1.12_RC3.5.1.tar.xz"; local_filedir="${tmpdir}"; local_filename="moh_revival_v1.12_RC3.5.1.tar.xz"; chmodx="nochmodx" run="norun"; force="noforce"; md5="7c664538999252eeaf2b6d9949416480" elif [ "${shortname}" == "ns" ]; then @@ -93,7 +91,7 @@ elif [ "${shortname}" == "fctr" ]; then install_factorio_save.sh elif [ "${shortname}" == "jk2" ]; then update_jediknight2.sh -elif [ -z "${appid}" ]||[ "${shortname}" == "ahl" ]||[ "${shortname}" == "bd" ]||[ "${shortname}" == "bb" ]||[ "${shortname}" == "ges" ]||[ "${shortname}" == "ns" ]||[ "${shortname}" == "sfc" ]||[ "${shortname}" == "ts" ]||[ "${shortname}" == "vs" ]||[ "${shortname}" == "zmr" ]; then +elif [ -z "${appid}" ]||[ "${shortname}" == "ahl" ]||[ "${shortname}" == "bd" ]||[ "${shortname}" == "bb" ]||[ "${shortname}" == "ns" ]||[ "${shortname}" == "sfc" ]||[ "${shortname}" == "ts" ]||[ "${shortname}" == "vs" ]||[ "${shortname}" == "zmr" ]; then if [ "${shortname}" == "ut" ]; then install_eula.sh fi From a75ce429b52c8c5d57810ad007ece0eecf24b9af Mon Sep 17 00:00:00 2001 From: Max Vaessen Date: Sat, 10 Oct 2020 23:14:19 +0200 Subject: [PATCH 19/70] feat: allow forks to use master branch (#3073) The standard behaviour for master is that it uses the release/version number rather than the latest master. This is designed to prevent modules "version mixing" e.g alerts.sh being on v20.4.0 and alerts_discord.sh being v20.5.0. Version mixing can cause unpredictable behaviour and break installs. This solution will ensure that only the official the GameServerManagers repo uses this method. This allows forked repos to use custom code in master ignoring the release. --- README.md | 2 +- lgsm/functions/core_dl.sh | 14 +++++++++----- linuxgsm.sh | 3 ++- tests/tests_fctrserver.sh | 3 ++- tests/tests_jc2server.sh | 3 ++- tests/tests_mcserver.sh | 3 ++- tests/tests_ts3server.sh | 3 ++- 7 files changed, 20 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 7e8c789d3..6f6f41c6f 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ LinuxGSM -[![LinuxGSM](https://img.shields.io/badge/-LinuxGSM-2b2b2b.svg?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAACsAAABACAYAAACDbo5ZAAAGD0lEQVR4AcWYa2wUVRvHz75c2vJ2disXoUBEVIioRAx%2BMIFA1IRwUS6KCCiIKBrvhEYiiGm5iBgk8QOGEgUUDYTttmVZWFr2UmwURS6iYAoCtmisElSsdHdbkT7%2BTzoNy%2BGc2dm54C%2F5Rdkz85x%2FZ86ZOXOYXYhIg3Phx%2FA4PAcv6f%2Btg5vhHJjP3EcZsgsshufJHH%2FAJbDztQ7aG35J1vgCXn%2BtgvrgEbLHYei9FmE3kDOUuh10OGwjZ7gEh7kZ9gNyllK3gnrg7%2BQs56DHjbCDyB0GuRF2ArnDeDfCziF3mO1G2FfJHRa4EXYpuUOxG2GXkzuUuBH2TXKH5W6ELSV3eM%2BNsOUk5yQcAY8p2uvgSPitor3MjbB1UOQXOFBvHwpbhPYWOExvL4SNUOQ7p4P2JTlzhOPmCu0vCu1PQpE2WOhk2MdJjk9y7HNwP1wEPUJbAcmZ6WTYrYolnifbxZBiibnFySHQCkUaLdY7C0V4%2FT5OhF1JcuIW6%2B0lOcvsBi2Ezao3j8Ov7Quwj52w60jNKIs1R5GatVaDDoEXSU4D7GSxbidYT3IuwjusFK0mNUVMwaZNNbl%2B%2F87hoVCom0HthaQmnG3QB0lNPcxlCvz%2B0GtlZTuorCxYYlA%2FDzbY%2FnrAgV3hCVLzCDMgEAi9wMMi9IIM%2FUwnNXWwi5mwRaSmmmXA798xq%2F3Khp420VeE1LyS6eQeBhttSXgzywCCToIUCOyYZvKLOWWwkdfd6ORVpGYJM0F5efDe9mEQHGty2BWTmhVGO4PNBmOoKzMBxmo%2FhD25dWvljSbD5hjMkb9gT9lJq63Mzi1bKkbjloc7xBWtwiRrDASCVRi%2FRxA8if%2BvrawMTzYI%2FACpeUv2KFFtDcUyTKilCHcis8G1Ga7wHpLzG8wVFs1K7jaeUKHZfIxmkj9%2FM4S9x9RGiMEudo0QbCVu9Xqn5PWEwLUk5%2FP0iaXac53I0kAH9Sau4m54lo%2FdTMfyekLYKQZ7ub34AbMMlmw5irC2VYTN0fuVMYMf8JHxJ7L7YYXAlSRnI2%2F8RtH4siTsDMz%2BZ5yS15OEXUxyDjGD1%2BvEq8MG16CDzY6JepKwT6geYbzxb0XjGMl7vwGSgzZIwo4nOa1M8Yr9Afb%2Fj8L21%2FsXaeaNZ2A6KTiEASph%2F0vF80cn4tokqu79fzfCUk2vfF4%2FFdFGEjGPHvg2yWrsDG%2F4%2BqpZB8jPOiXjWk0y5iXdM3XhKUvxBTA9UvHuvNPh%2Bzb%2BWj10z6nwuHWBbQFMvNCjKnn7qd1jS%2Fnx9VX3b6jC%2BbwOr5eMe3%2B83IcW4%2F3qgT%2BUTbA9srGaiHsn8AKiF6Ld%2FxF%2FOx6eeAJXabvK78MTTornNMd6XJTVR7%2Fj9bBjhFxV%2FMc1kJOAy2AeA%2FgrV4mFVDZFCqm8rEJ6qysCAWqK9iaztRJRbWXa4moFTELOav7jY%2FqAvoXp0Gc9NX7bIZl17%2FZl0rC1wRLeno0NvP%2B0CTcYNnS8wW6CtzNANaxzKqo9hRNOQ8rGo7tmSsMe2zWdt2frqVRcm5s2fofCgawDNHRNxnyfqgsYez4y4ADCjRM9H73hsNWafILTQdaFiSTj%2BQ%2FxA6yH7d%2BCmR8XbYr0a7VTF2N4siSsb5qdos3R6%2FjGxpULFfw7EfORnbrI9TAToX0sD40%2F2ylcGdh2Rdhg%2BSf2gka9jRTqK9%2BGwgHz7RTfVbHxirDhivdthYUvMRX8aYAD9lstvi%2B0aDL2DUZ0eCBUNNVG0IP65FLTWqPdiqdC0koHTVXe7iyNRG23QotBEy1RbTAzQyrmnYUT2rLsoA13JpcB4eVC2daBM1g2JGLekmwf5On7EJfngfZTNnVSce8bFjaTmQdvs%2FXmO%2FJVpoXdx3RSUe9O00Fj3nUdy0RLgRHiHXOPGW1h2uKZ07c9rG%2Bxyefp23pQeyBIEQoavYlakrG8fnrY5yHn2fbxXzAgw7m8bT5zkkSk4C7cpmOK21esB%2FXAQ5DzFfTo43%2BF%2FDzf0eZ4wZ3MDSjMcvD6nIeOahGgia%2FyU3HforTPkWkwnakdn0cI9jqfbPjD%2FuQLJr6644snlgX%2FApOMoyd1R5%2FxAAAAAElFTkSuQmCC)](https://linuxgsm.com) [![Build Status](https://travis-ci.com/GameServerManagers/LinuxGSM.svg?branch=master)](https://travis-ci.com/GameServerManagers/LinuxGSM) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/3e98be27840043a090c3ab6e35db44b0)](https://app.codacy.com/app/GameServerManagers/LinuxGSM?utm_source=github.com&utm_medium=referral&utm_content=GameServerManagers/LinuxGSM&utm_campaign=Badge_Grade_Dashboard) [![Codacy Badge](https://api.codacy.com/project/badge/Coverage/9ef77095e98a43618ddd57381f86b4be)](https://www.codacy.com/manual/GameServerManagers/LinuxGSM?utm_source=github.com&utm_medium=referral&utm_content=GameServerManagers/LinuxGSM&utm_campaign=Badge_Coverage) [![Backup Repo](https://github.com/GameServerManagers/LinuxGSM/workflows/Backup%20Repo/badge.svg)](https://bitbucket.org/GameServerManagers/linuxgsm) [![Discord](https://discordapp.com/api/guilds/127498813903601664/widget.png?style=shield)](https://linuxgsm.com/discord) [![MIT Licence](https://badges.frapsoft.com/os/mit/mit.svg?v=103)](https://github.com/GameServerManagers/LinuxGSM/blob/master/LICENSE) [![made-with-bash](https://img.shields.io/badge/-Made%20with%20Bash-1f425f.svg?logo=image%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw%2FeHBhY2tldCBiZWdpbj0i77u%2FIiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8%2BIDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkE3MDg2QTAyQUZCMzExRTVBMkQxRDMzMkJDMUQ4RDk3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkE3MDg2QTAzQUZCMzExRTVBMkQxRDMzMkJDMUQ4RDk3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTcwODZBMDBBRkIzMTFFNUEyRDFEMzMyQkMxRDhEOTciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTcwODZBMDFBRkIzMTFFNUEyRDFEMzMyQkMxRDhEOTciLz4gPC9yZGY6RGVzY3JpcHRpb24%2BIDwvcmRmOlJERj4gPC94OnhtcG1ldGE%2BIDw%2FeHBhY2tldCBlbmQ9InIiPz6lm45hAAADkklEQVR42qyVa0yTVxzGn7d9Wy03MS2ii8s%2BeokYNQSVhCzOjXZOFNF4jx%2BMRmPUMEUEqVG36jo2thizLSQSMd4N8ZoQ8RKjJtooaCpK6ZoCtRXKpRempbTv5ey83bhkAUphz8fznvP8znn%2B%2F3NeEEJgNBoRRSmz0ub%2FfuxEacBg%2FDmYtiCjgo5NG2mBXq%2BH5I1ogMRk9Zbd%2BQU2e1ML6VPLOyf5tvBQ8yT1lG10imxsABm7SLs898GTpyYynEzP60hO3trHDKvMigUwdeaceacqzp7nOI4n0SSIIjl36ao4Z356OV07fSQAk6xJ3XGg%2BLCr1d1OYlVHp4eUHPnerU79ZA%2F1kuv1JQMAg%2BE4O2P23EumF3VkvHprsZKMzKwbRUXFEyTvSIEmTVbrysp%2BWr8wfQHGK6WChVa3bKUmdWou%2BjpArdGkzZ41c1zG%2Fu5uGH4swzd561F%2BuhIT4%2BLnSuPsv9%2BJKIpjNr9dXYOyk7%2FBZrcjIT4eCnoKgedJP4BEqhG77E3NKP31FO7cfQA5K0dSYuLgz2TwCWJSOBzG6crzKK%2BohNfni%2Bx6OMUMMNe%2Fgf7ocbw0v0acKg6J8Ql0q%2BT%2FAXR5PNi5dz9c71upuQqCKFAD%2BYhrZLEAmpodaHO3Qy6TI3NhBpbrshGtOWKOSMYwYGQM8nJzoFJNxP2HjyIQho4PewK6hBktoDcUwtIln4PjOWzflQ%2Be5yl0yCCYgYikTclGlxadio%2BBQCSiW1UXoVGrKYwH4RgMrjU1HAB4vR6LzWYfFUCKxfS8Ftk5qxHoCUQAUkRJaSEokkV6Y%2F%2BJUOC4hn6A39NVXVBYeNP8piH6HeA4fPbpdBQV5KOx0QaL1YppX3Jgk0TwH2Vg6S3u%2BdB91%2B%2FpuNYPYFl5uP5V7ZqvsrX7jxqMXR6ff3gCQSTzFI0a1TX3wIs8ul%2Bq4HuWAAiM39vhOuR1O1fQ2gT%2F26Z8Z5vrl2OHi9OXZn995nLV9aFfS6UC9JeJPfuK0NBohWpCHMSAAsFe74WWP%2BvT25wtP9Bpob6uGqqyDnOtaeumjRu%2ByFu36VntK%2FPA5umTJeUtPWZSU9BCgud661odVp3DZtkc7AnYR33RRC708PrVi1larW7XwZIjLnd7R6SgSqWSNjU1B3F72pz5TZbXmX5vV81Yb7Lg7XT%2FUXriu8XLVqw6c6XqWnBKiiYU%2BMt3wWF7u7i91XlSEITwSAZ%2FCzAAHsJVbwXYFFEAAAAASUVORK5CYII%3D)](https://www.gnu.org/software/bash/) +[![LinuxGSM](https://img.shields.io/badge/-LinuxGSM-2b2b2b.svg?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAACsAAABACAYAAACDbo5ZAAAGD0lEQVR4AcWYa2wUVRvHz75c2vJ2disXoUBEVIioRAx%2BMIFA1IRwUS6KCCiIKBrvhEYiiGm5iBgk8QOGEgUUDYTttmVZWFr2UmwURS6iYAoCtmisElSsdHdbkT7%2BTzoNy%2BGc2dm54C%2F5Rdkz85x%2FZ86ZOXOYXYhIg3Phx%2FA4PAcv6f%2Btg5vhHJjP3EcZsgsshufJHH%2FAJbDztQ7aG35J1vgCXn%2BtgvrgEbLHYei9FmE3kDOUuh10OGwjZ7gEh7kZ9gNyllK3gnrg7%2BQs56DHjbCDyB0GuRF2ArnDeDfCziF3mO1G2FfJHRa4EXYpuUOxG2GXkzuUuBH2TXKH5W6ELSV3eM%2BNsOUk5yQcAY8p2uvgSPitor3MjbB1UOQXOFBvHwpbhPYWOExvL4SNUOQ7p4P2JTlzhOPmCu0vCu1PQpE2WOhk2MdJjk9y7HNwP1wEPUJbAcmZ6WTYrYolnifbxZBiibnFySHQCkUaLdY7C0V4%2FT5OhF1JcuIW6%2B0lOcvsBi2Ezao3j8Ov7Quwj52w60jNKIs1R5GatVaDDoEXSU4D7GSxbidYT3IuwjusFK0mNUVMwaZNNbl%2B%2F87hoVCom0HthaQmnG3QB0lNPcxlCvz%2B0GtlZTuorCxYYlA%2FDzbY%2FnrAgV3hCVLzCDMgEAi9wMMi9IIM%2FUwnNXWwi5mwRaSmmmXA798xq%2F3Khp420VeE1LyS6eQeBhttSXgzywCCToIUCOyYZvKLOWWwkdfd6ORVpGYJM0F5efDe9mEQHGty2BWTmhVGO4PNBmOoKzMBxmo%2FhD25dWvljSbD5hjMkb9gT9lJq63Mzi1bKkbjloc7xBWtwiRrDASCVRi%2FRxA8if%2BvrawMTzYI%2FACpeUv2KFFtDcUyTKilCHcis8G1Ga7wHpLzG8wVFs1K7jaeUKHZfIxmkj9%2FM4S9x9RGiMEudo0QbCVu9Xqn5PWEwLUk5%2FP0iaXac53I0kAH9Sau4m54lo%2FdTMfyekLYKQZ7ub34AbMMlmw5irC2VYTN0fuVMYMf8JHxJ7L7YYXAlSRnI2%2F8RtH4siTsDMz%2BZ5yS15OEXUxyDjGD1%2BvEq8MG16CDzY6JepKwT6geYbzxb0XjGMl7vwGSgzZIwo4nOa1M8Yr9Afb%2Fj8L21%2FsXaeaNZ2A6KTiEASph%2F0vF80cn4tokqu79fzfCUk2vfF4%2FFdFGEjGPHvg2yWrsDG%2F4%2BqpZB8jPOiXjWk0y5iXdM3XhKUvxBTA9UvHuvNPh%2Bzb%2BWj10z6nwuHWBbQFMvNCjKnn7qd1jS%2Fnx9VX3b6jC%2BbwOr5eMe3%2B83IcW4%2F3qgT%2BUTbA9srGaiHsn8AKiF6Ld%2FxF%2FOx6eeAJXabvK78MTTornNMd6XJTVR7%2Fj9bBjhFxV%2FMc1kJOAy2AeA%2FgrV4mFVDZFCqm8rEJ6qysCAWqK9iaztRJRbWXa4moFTELOav7jY%2FqAvoXp0Gc9NX7bIZl17%2FZl0rC1wRLeno0NvP%2B0CTcYNnS8wW6CtzNANaxzKqo9hRNOQ8rGo7tmSsMe2zWdt2frqVRcm5s2fofCgawDNHRNxnyfqgsYez4y4ADCjRM9H73hsNWafILTQdaFiSTj%2BQ%2FxA6yH7d%2BCmR8XbYr0a7VTF2N4siSsb5qdos3R6%2FjGxpULFfw7EfORnbrI9TAToX0sD40%2F2ylcGdh2Rdhg%2BSf2gka9jRTqK9%2BGwgHz7RTfVbHxirDhivdthYUvMRX8aYAD9lstvi%2B0aDL2DUZ0eCBUNNVG0IP65FLTWqPdiqdC0koHTVXe7iyNRG23QotBEy1RbTAzQyrmnYUT2rLsoA13JpcB4eVC2daBM1g2JGLekmwf5On7EJfngfZTNnVSce8bFjaTmQdvs%2FXmO%2FJVpoXdx3RSUe9O00Fj3nUdy0RLgRHiHXOPGW1h2uKZ07c9rG%2Bxyefp23pQeyBIEQoavYlakrG8fnrY5yHn2fbxXzAgw7m8bT5zkkSk4C7cpmOK21esB%2FXAQ5DzFfTo43%2BF%2FDzf0eZ4wZ3MDSjMcvD6nIeOahGgia%2FyU3HforTPkWkwnakdn0cI9jqfbPjD%2FuQLJr6644snlgX%2FApOMoyd1R5%2FxAAAAAElFTkSuQmCC)](https://linuxgsm.com) [![Build Status](https://travis-ci.com/GameServerManagers/LinuxGSM.svg?branch=master)](https://travis-ci.com/GameServerManagers/LinuxGSM) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/d19c5234dc3743d8a8a14093711ca52d)](https://www.codacy.com/gh/GameServerManagers/LinuxGSM/dashboard?utm_source=github.com&utm_medium=referral&utm_content=GameServerManagers/LinuxGSM&utm_campaign=Badge_Grade) [![Backup Repo](https://github.com/GameServerManagers/LinuxGSM/workflows/Backup%20Repo/badge.svg)](https://bitbucket.org/GameServerManagers/linuxgsm) [![Discord](https://discordapp.com/api/guilds/127498813903601664/widget.png?style=shield)](https://linuxgsm.com/discord) [![MIT Licence](https://badges.frapsoft.com/os/mit/mit.svg?v=103)](https://github.com/GameServerManagers/LinuxGSM/blob/master/LICENSE) [![made-with-bash](https://img.shields.io/badge/-Made%20with%20Bash-1f425f.svg?logo=image%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw%2FeHBhY2tldCBiZWdpbj0i77u%2FIiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8%2BIDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkE3MDg2QTAyQUZCMzExRTVBMkQxRDMzMkJDMUQ4RDk3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkE3MDg2QTAzQUZCMzExRTVBMkQxRDMzMkJDMUQ4RDk3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTcwODZBMDBBRkIzMTFFNUEyRDFEMzMyQkMxRDhEOTciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTcwODZBMDFBRkIzMTFFNUEyRDFEMzMyQkMxRDhEOTciLz4gPC9yZGY6RGVzY3JpcHRpb24%2BIDwvcmRmOlJERj4gPC94OnhtcG1ldGE%2BIDw%2FeHBhY2tldCBlbmQ9InIiPz6lm45hAAADkklEQVR42qyVa0yTVxzGn7d9Wy03MS2ii8s%2BeokYNQSVhCzOjXZOFNF4jx%2BMRmPUMEUEqVG36jo2thizLSQSMd4N8ZoQ8RKjJtooaCpK6ZoCtRXKpRempbTv5ey83bhkAUphz8fznvP8znn%2B%2F3NeEEJgNBoRRSmz0ub%2FfuxEacBg%2FDmYtiCjgo5NG2mBXq%2BH5I1ogMRk9Zbd%2BQU2e1ML6VPLOyf5tvBQ8yT1lG10imxsABm7SLs898GTpyYynEzP60hO3trHDKvMigUwdeaceacqzp7nOI4n0SSIIjl36ao4Z356OV07fSQAk6xJ3XGg%2BLCr1d1OYlVHp4eUHPnerU79ZA%2F1kuv1JQMAg%2BE4O2P23EumF3VkvHprsZKMzKwbRUXFEyTvSIEmTVbrysp%2BWr8wfQHGK6WChVa3bKUmdWou%2BjpArdGkzZ41c1zG%2Fu5uGH4swzd561F%2BuhIT4%2BLnSuPsv9%2BJKIpjNr9dXYOyk7%2FBZrcjIT4eCnoKgedJP4BEqhG77E3NKP31FO7cfQA5K0dSYuLgz2TwCWJSOBzG6crzKK%2BohNfni%2Bx6OMUMMNe%2Fgf7ocbw0v0acKg6J8Ql0q%2BT%2FAXR5PNi5dz9c71upuQqCKFAD%2BYhrZLEAmpodaHO3Qy6TI3NhBpbrshGtOWKOSMYwYGQM8nJzoFJNxP2HjyIQho4PewK6hBktoDcUwtIln4PjOWzflQ%2Be5yl0yCCYgYikTclGlxadio%2BBQCSiW1UXoVGrKYwH4RgMrjU1HAB4vR6LzWYfFUCKxfS8Ftk5qxHoCUQAUkRJaSEokkV6Y%2F%2BJUOC4hn6A39NVXVBYeNP8piH6HeA4fPbpdBQV5KOx0QaL1YppX3Jgk0TwH2Vg6S3u%2BdB91%2B%2FpuNYPYFl5uP5V7ZqvsrX7jxqMXR6ff3gCQSTzFI0a1TX3wIs8ul%2Bq4HuWAAiM39vhOuR1O1fQ2gT%2F26Z8Z5vrl2OHi9OXZn995nLV9aFfS6UC9JeJPfuK0NBohWpCHMSAAsFe74WWP%2BvT25wtP9Bpob6uGqqyDnOtaeumjRu%2ByFu36VntK%2FPA5umTJeUtPWZSU9BCgud661odVp3DZtkc7AnYR33RRC708PrVi1larW7XwZIjLnd7R6SgSqWSNjU1B3F72pz5TZbXmX5vV81Yb7Lg7XT%2FUXriu8XLVqw6c6XqWnBKiiYU%2BMt3wWF7u7i91XlSEITwSAZ%2FCzAAHsJVbwXYFFEAAAAASUVORK5CYII%3D)](https://www.gnu.org/software/bash/) [LinuxGSM](https://linuxgsm.com) is the command-line tool for quick, simple deployment and management of Linux dedicated game servers. diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh index b8e1b2b86..b5c92b3c1 100755 --- a/lgsm/functions/core_dl.sh +++ b/lgsm/functions/core_dl.sh @@ -349,11 +349,12 @@ fn_fetch_file(){ fn_fetch_file_github(){ github_file_url_dir="${1}" github_file_url_name="${2}" + # For legacy versions - code can be removed at a future date if [ "${legacymode}" == "1" ]; then - # For legacy versions - code can be removed at a future date remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/${github_file_url_dir}/${github_file_url_name}" - elif [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + elif [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else @@ -376,7 +377,8 @@ fn_fetch_file_github(){ fn_fetch_config(){ github_file_url_dir="${1}" github_file_url_name="${2}" - if [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else @@ -399,7 +401,8 @@ fn_fetch_config(){ fn_fetch_function(){ github_file_url_dir="lgsm/functions" github_file_url_name="${functionfile}" - if [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else @@ -422,7 +425,8 @@ fn_fetch_function(){ fn_update_function(){ github_file_url_dir="lgsm/functions" github_file_url_name="${functionfile}" - if [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else diff --git a/linuxgsm.sh b/linuxgsm.sh index 67f24da3f..70a280a32 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -160,7 +160,8 @@ fn_bootstrap_fetch_file(){ fn_bootstrap_fetch_file_github(){ github_file_url_dir="${1}" github_file_url_name="${2}" - if [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh index 8856a63b9..afb2f8ded 100644 --- a/tests/tests_fctrserver.sh +++ b/tests/tests_fctrserver.sh @@ -167,7 +167,8 @@ fn_bootstrap_fetch_file(){ fn_bootstrap_fetch_file_github(){ github_file_url_dir="${1}" github_file_url_name="${2}" - if [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh index dca188aef..34cea40e4 100644 --- a/tests/tests_jc2server.sh +++ b/tests/tests_jc2server.sh @@ -168,7 +168,8 @@ fn_bootstrap_fetch_file(){ fn_bootstrap_fetch_file_github(){ github_file_url_dir="${1}" github_file_url_name="${2}" - if [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else diff --git a/tests/tests_mcserver.sh b/tests/tests_mcserver.sh index 71b45f34a..f253df31a 100644 --- a/tests/tests_mcserver.sh +++ b/tests/tests_mcserver.sh @@ -168,7 +168,8 @@ fn_bootstrap_fetch_file(){ fn_bootstrap_fetch_file_github(){ github_file_url_dir="${1}" github_file_url_name="${2}" - if [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh index c9756c331..cf5d5ebd1 100644 --- a/tests/tests_ts3server.sh +++ b/tests/tests_ts3server.sh @@ -168,7 +168,8 @@ fn_bootstrap_fetch_file(){ fn_bootstrap_fetch_file_github(){ github_file_url_dir="${1}" github_file_url_name="${2}" - if [ "${githubbranch}" == "master" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" else From 990edfd775ec0b3dcd091b3017d94cdb2b88ce6b Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 11 Oct 2020 00:48:11 +0100 Subject: [PATCH 20/70] feat: improve uniqueness tmux session name (#3081) * Fixed uniqueness constraint on session names by adding port to tmux sesssions. Removed content constraint from session name by avoiding grep regex Co-authored-by: jason <1569551+j4s0n@users.noreply.github.com> --- lgsm/functions/check_status.sh | 6 +++++- lgsm/functions/command_console.sh | 2 +- lgsm/functions/command_start.sh | 6 +++--- lgsm/functions/command_stop.sh | 2 +- lgsm/functions/info_distro.sh | 2 +- 5 files changed, 11 insertions(+), 7 deletions(-) diff --git a/lgsm/functions/check_status.sh b/lgsm/functions/check_status.sh index 178adcf6b..1abd2990b 100755 --- a/lgsm/functions/check_status.sh +++ b/lgsm/functions/check_status.sh @@ -7,4 +7,8 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -status=$(tmux list-sessions -F "#{session_name}" 2>/dev/null | grep -Ecx "^${sessionname}") +if [ "$(tmux list-sessions -F "#{session_name}" 2>/dev/null)" == "${sessionname}${port}" ]; then + status=1; +else + status=0; +fi diff --git a/lgsm/functions/command_console.sh b/lgsm/functions/command_console.sh index 0de924ea6..36ca7e092 100755 --- a/lgsm/functions/command_console.sh +++ b/lgsm/functions/command_console.sh @@ -41,7 +41,7 @@ check_status.sh if [ "${status}" != "0" ]; then fn_print_ok_nl "Accessing console" fn_script_log_pass "Console accessed" - tmux attach-session -t "${sessionname}" + tmux attach-session -t "${sessionname}${port}" fn_print_ok_nl "Closing console" fn_script_log_pass "Console closed" else diff --git a/lgsm/functions/command_start.sh b/lgsm/functions/command_start.sh index 62160e187..3ebbc8871 100755 --- a/lgsm/functions/command_start.sh +++ b/lgsm/functions/command_start.sh @@ -36,7 +36,7 @@ fn_start_teamspeak3(){ # Used to allow update to detect JK2MV server version. fn_start_jk2(){ fn_start_tmux - tmux send -t "${sessionname}" version ENTER > /dev/null 2>&1 + tmux send -t "${sessionname}${port}" version ENTER > /dev/null 2>&1 } fn_start_tmux(){ @@ -72,7 +72,7 @@ fn_start_tmux(){ # Create lockfile date '+%s' > "${lockdir}/${selfname}.lock" cd "${executabledir}" || exit - tmux new-session -d -x "${sessionwidth}" -y "${sessionheight}" -s "${sessionname}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${selfname}-tmux-error.tmp" + tmux new-session -d -x "${sessionwidth}" -y "${sessionheight}" -s "${sessionname}${port}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${selfname}-tmux-error.tmp" # Create logfile. touch "${consolelog}" @@ -130,7 +130,7 @@ fn_start_tmux(){ echo -e "" echo -e "Command" echo -e "=================================" - echo -e "tmux new-session -d -s \"${sessionname}\" \"${executable} ${parms}\"" | tee -a "${lgsmlog}" + echo -e "tmux new-session -d -s \"${sessionname} ${port}\" \"${executable} ${parms}\"" | tee -a "${lgsmlog}" echo -e "" echo -e "Error" echo -e "=================================" diff --git a/lgsm/functions/command_stop.sh b/lgsm/functions/command_stop.sh index 439967fd0..bde89dd13 100644 --- a/lgsm/functions/command_stop.sh +++ b/lgsm/functions/command_stop.sh @@ -15,7 +15,7 @@ fn_stop_graceful_ctrlc(){ fn_print_dots "Graceful: CTRL+c" fn_script_log_info "Graceful: CTRL+c" # Sends quit. - tmux send-keys -t "${sessionname}" C-c > /dev/null 2>&1 + tmux send-keys -t "${sessionname}${port}" C-c > /dev/null 2>&1 # Waits up to 30 seconds giving the server time to shutdown gracefuly. for seconds in {1..30}; do check_status.sh diff --git a/lgsm/functions/info_distro.sh b/lgsm/functions/info_distro.sh index 8962426af..725748311 100755 --- a/lgsm/functions/info_distro.sh +++ b/lgsm/functions/info_distro.sh @@ -9,7 +9,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" ### Game Server pid if [ "${status}" == "1" ]; then - gameserverpid=$(tmux list-sessions -F "#{session_name} #{pane_pid}" | grep "^${sessionname} " | awk '{print $NF}') + gameserverpid=$(tmux list-sessions -F "#{session_name} #{pane_pid}" | grep "^${sessionname}${port}" | awk '{print $NF}') fi ### Distro information From 5d7ff92d9b48971d9b38e7919f4303714be63f72 Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 11 Oct 2020 14:32:48 +0200 Subject: [PATCH 21/70] fix(details): Barotrauma will show as needing to be edited in game config (#3085) --- lgsm/functions/info_messages.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index 4e1863f3e..6eb97f241 100755 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -572,7 +572,7 @@ fn_info_message_ports(){ parmslocation="${red}UNKNOWN${default}" # engines/games that require editing in the config file. - local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "dontstarve" "Eco" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Minecraft Bedrock" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" "wurm") + local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "Barotrauma" "dontstarve" "Eco" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Minecraft Bedrock" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" "wurm") for port_edit in "${ports_edit_array[@]}"; do if [ "${shortname}" == "ut3" ]; then parmslocation="${servercfgdir}/UTWeb.ini" From 27fe4a65290a8838667b3b8044c307ce14c2637a Mon Sep 17 00:00:00 2001 From: H3o66 Date: Sun, 11 Oct 2020 11:38:38 +0200 Subject: [PATCH 22/70] fix(btserver): add dependency check for libicu --- lgsm/functions/check_deps.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 60fc30c72..d8e73ec89 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -395,6 +395,9 @@ fn_deps_build_debian(){ # Call of Duty & Medal of Honor: Allied Assault elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]||[ "${shortname}" == "cod2" ]||[ "${shortname}" == "mohaa" ]; then array_deps_required+=( libstdc++5:i386 ) + # Barotrauma + elif [ "${shortname}" == "bt" ]; then + array_deps_required+=( libicu-dev ) # Ecoserver elif [ "${shortname}" == "eco" ]; then array_deps_required+=( libgdiplus ) @@ -489,6 +492,9 @@ fn_deps_build_redhat(){ # 7 Days to Die elif [ "${shortname}" == "sdtd" ]; then array_deps_required+=( telnet expect ) + # Barotrauma + elif [ "${shortname}" == "bt" ]; then + array_deps_required+=( libicu ) # Battlefield: Vietnam elif [ "${shortname}" == "bfv" ]; then array_deps_required+=( compat-libstdc++-33.i686 glibc.i686 ) From e8a71183b8c1931606c8b15522c14d61d3773b29 Mon Sep 17 00:00:00 2001 From: Christian Date: Fri, 13 Nov 2020 22:47:48 +0100 Subject: [PATCH 23/70] fix(bf1942): add missing dependency to checks for libncurses5:i386 (#3098) --- lgsm/functions/check_deps.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index d8e73ec89..25c767ae0 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -382,8 +382,11 @@ fn_deps_build_debian(){ # Battlefield: Vietnam elif [ "${shortname}" == "bfv" ]; then array_deps_required+=( libncurses5:i386 libstdc++5:i386 ) - # Battlefield 1942, Counter-Strike: Source, Garry's Mod, No More Room in Hell, Source Forts Classic, Zombie Master Reborn and Zombie Panic: Source - elif [ "${shortname}" == "bf1942" ]||[ "${shortname}" == "css" ]||[ "${shortname}" == "gmod" ]||[ "${shortname}" == "nmrih" ]||[ "${shortname}" == "sfc" ]||[ "${shortname}" == "zmr" ]||[ "${shortname}" == "zps" ]; then + # Battlefield 1942 + elif [ "${shortname}" == "bf1942" ]; then + array_deps_required+=( libncurses5:i386 libtinfo5:i386 ) + # Counter-Strike: Source, Garry's Mod, No More Room in Hell, Source Forts Classic, Zombie Master Reborn and Zombie Panic: Source + elif [ "${shortname}" == "css" ]||[ "${shortname}" == "gmod" ]||[ "${shortname}" == "nmrih" ]||[ "${shortname}" == "sfc" ]||[ "${shortname}" == "zmr" ]||[ "${shortname}" == "zps" ]; then if [ "${arch}" == "x86_64" ]; then array_deps_required+=( libtinfo5:i386 ) else From bb78ee3655e29a04056bfa87145436c89394f2f8 Mon Sep 17 00:00:00 2001 From: Christian Date: Fri, 13 Nov 2020 22:47:58 +0100 Subject: [PATCH 24/70] fix(bf1942): servername parsing (#3096) --- lgsm/functions/info_config.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index d54fdba96..ec0d2eb4a 100755 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -188,7 +188,7 @@ fn_info_config_bf1942(){ queryport="${zero}" else - servername=$(grep "game.serverName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/game.serverName //g' | tr -d '=\";,:' | xargs) + servername=$(grep -E "^game.serverName " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/game.serverName //g' | tr -d '=\";,:' | xargs) serverpassword=$(grep "game.serverPassword" "${servercfgfullpath}" | sed -e 's/^ *//g' -e '/^--/d' -e 's/game.serverPassword//g' | tr -d '=\";,:' | xargs) maxplayers=$(grep "game.serverMaxPlayers" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]') port=$(grep "game.serverPort" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]') From 5add746d00503e15eb9cc5aa5bcaf5e3ad4ff611 Mon Sep 17 00:00:00 2001 From: Christian Date: Sat, 14 Nov 2020 22:12:01 +0100 Subject: [PATCH 25/70] fix(deps): change ubuntu 20.10 to use lib32gcc-s1 (#3094) --- lgsm/functions/check_deps.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 25c767ae0..7a43e2f3a 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -185,7 +185,7 @@ if [ "${javacheck}" == "1" ]; then # Define required dependencies for SteamCMD. if [ "${appid}" ]; then # lib32gcc1 is now called lib32gcc-s1 in debian 11 - if [ "${distroid}" == "debian" ]&&[ "${distroversion}" == "11" ]; then + if { [ "${distroid}" == "debian" ]&&[ "${distroversion}" == "11" ]; }||{ [ "${distroid}" == "ubuntu" ]&&[ "${distroversion}" == "20.10" ]; }; then if [ "${deptocheck}" == "glibc.i686" ]||[ "${deptocheck}" == "libstdc++64.i686" ]||[ "${deptocheck}" == "lib32gcc-s1" ]||[ "${deptocheck}" == "lib32stdc++6" ]; then steamcmdfail=1 fi @@ -349,7 +349,7 @@ fn_deps_build_debian(){ if [ "${shortname}" != "ts3" ]&&[ "${shortname}" != "mumble" ]&&[ "${shortname}" != "mc" ]&&[ "${engine}" != "renderware" ]; then if [ "${arch}" == "x86_64" ]; then # lib32gcc1 is now called lib32gcc-s1 in debian 11 - if [ "${distroid}" == "debian" ]&&[ "${distroversion}" == "11" ]; then + if { [ "${distroid}" == "debian" ]&&[ "${distroversion}" == "11" ]; }|| { [ "${distroid}" == "ubuntu" ]&&[ "${distroversion}" == "20.10" ]; }; then array_deps_required+=( lib32gcc-s1 lib32stdc++6 ) else array_deps_required+=( lib32gcc1 lib32stdc++6 ) From a62d9236a3561cc2ac7a25af5cbd5c838ad9384a Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sat, 14 Nov 2020 21:25:42 +0000 Subject: [PATCH 26/70] code tidy --- lgsm/functions/check_status.sh | 4 ++-- lgsm/functions/fix_squad.sh | 2 +- lgsm/functions/query_gamedig.sh | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lgsm/functions/check_status.sh b/lgsm/functions/check_status.sh index 1abd2990b..a473aff73 100755 --- a/lgsm/functions/check_status.sh +++ b/lgsm/functions/check_status.sh @@ -8,7 +8,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" if [ "$(tmux list-sessions -F "#{session_name}" 2>/dev/null)" == "${sessionname}${port}" ]; then - status=1; + status=1; else - status=0; + status=0; fi diff --git a/lgsm/functions/fix_squad.sh b/lgsm/functions/fix_squad.sh index 28d0e30f0..8ec84a86f 100644 --- a/lgsm/functions/fix_squad.sh +++ b/lgsm/functions/fix_squad.sh @@ -6,7 +6,7 @@ # As the server base dir changed for the game, we need to migrate the default config from the old to the new location oldservercfg="${serverfiles}/Squad/ServerConfig/${servercfg}" -if [ -f "${oldservercfg}" ] && [ -f "${servercfgfullpath}" ]; then +if [ -f "${oldservercfg}" ]&&[ -f "${servercfgfullpath}" ]; then # diff old and new config - if it is different move the old config over the new one if [ "$(diff -c "${oldservercfg}" "${servercfgfullpath}" | wc -l)" -gt 0 ]; then fixname="Migrate server config to new Game folder" diff --git a/lgsm/functions/query_gamedig.sh b/lgsm/functions/query_gamedig.sh index 3c5ff38bf..2443c6e99 100755 --- a/lgsm/functions/query_gamedig.sh +++ b/lgsm/functions/query_gamedig.sh @@ -38,7 +38,7 @@ if [ "$(command -v gamedig 2>/dev/null)" ]&&[ "$(command -v jq 2>/dev/null)" ]; fi if [ "${gdplayers}" == "null" ]; then unset gdplayers - elif [ "${gdplayers}" == "[]" ] || [ "${gdplayers}" == "-1" ]; then + elif [ "${gdplayers}" == "[]" ]||[ "${gdplayers}" == "-1" ]; then gdplayers=0 fi From afe2b70cae47bd1c4f37ad4380a4ef07954601c1 Mon Sep 17 00:00:00 2001 From: Christian Date: Wed, 18 Nov 2020 23:46:43 +0100 Subject: [PATCH 27/70] feat(new server): pvrserver (#2384) --- .../config-lgsm/pvrserver/_default.cfg | 173 ++++++++++++++++++ lgsm/data/serverlist.csv | 1 + lgsm/functions/check_system_requirements.sh | 3 + lgsm/functions/fix_steamcmd.sh | 2 + lgsm/functions/info_config.sh | 16 ++ lgsm/functions/info_messages.sh | 12 ++ lgsm/functions/info_parms.sh | 7 + lgsm/functions/install_config.sh | 7 + 8 files changed, 221 insertions(+) create mode 100644 lgsm/config-default/config-lgsm/pvrserver/_default.cfg diff --git a/lgsm/config-default/config-lgsm/pvrserver/_default.cfg b/lgsm/config-default/config-lgsm/pvrserver/_default.cfg new file mode 100644 index 000000000..f51bd9ea4 --- /dev/null +++ b/lgsm/config-default/config-lgsm/pvrserver/_default.cfg @@ -0,0 +1,173 @@ +################################## +######## Default Settings ######## +################################## +# DO NOT EDIT WILL BE OVERWRITTEN! +# Copy settings from here and use them in either +# common.cfg - applies settings to every instance +# [instance].cfg - applies settings to a specific instance + +#### Server Settings #### + +## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters +ip="0.0.0.0" +port="7777" + +# Maps: bridge, datacenter, sand +defaultmap="datacenter" + +## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters +fn_parms(){ +parms="${defaultmap} -log -MultiHome=${ip} -Port=${port}" +} + +#### LinuxGSM Settings #### + +## Notification Alerts +# (on|off) + +# Display IP | https://docs.linuxgsm.com/alerts#display-ip +displayip="" + +# More info | https://docs.linuxgsm.com/alerts#more-info +postalert="off" +postdays="7" +posttarget="https://hastebin.com" + +# Discord Alerts | https://docs.linuxgsm.com/alerts/discord +discordalert="off" +discordwebhook="webhook" + +# Email Alerts | https://docs.linuxgsm.com/alerts/email +emailalert="off" +email="email@example.com" +emailfrom="" + +# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt +iftttalert="off" +ifttttoken="accesstoken" +iftttevent="linuxgsm_alert" + +# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun +mailgunalert="off" +mailgunapiregion="us" +mailguntoken="accesstoken" +mailgundomain="example.com" +mailgunemailfrom="alert@example.com" +mailgunemail="email@myemail.com" + +# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet +pushbulletalert="off" +pushbullettoken="accesstoken" +channeltag="" + +# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover +pushoveralert="off" +pushovertoken="accesstoken" + +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + +# Slack Alerts | https://docs.linuxgsm.com/alerts/slack +slackalert="off" +slackwebhook="webhook" + +# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram +# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". +# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need +telegramalert="off" +telegramtoken="accesstoken" +telegramchatid="" +curlcustomstring="" + +## Updating | https://docs.linuxgsm.com/commands/update +updateonstart="off" + +## Backup | https://docs.linuxgsm.com/commands/backup +maxbackups="4" +maxbackupdays="30" +stoponbackup="on" + +## Logging | https://docs.linuxgsm.com/features/logging +consolelogging="on" +logdays="7" + +## Monitor | https://docs.linuxgsm.com/commands/monitor +# Query delay time +querydelay="1" + +#### LinuxGSM Advanced Settings #### + +# ANSI Colors +ansi="on" + +# Message Display Time +sleeptime="0.5" + +## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd +# Server appid +appid="622970" +# SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch +branch="" +betapassword="" +# Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server +steammaster="false" + +## Stop Mode | https://docs.linuxgsm.com/features/stop-mode +# 1: tmux kill +# 2: CTRL+c +# 3: quit +# 4: quit 120s +# 5: stop +# 6: q +# 7: exit +# 8: 7 Days to Die +# 9: GoldSrc +# 10: Avorion +# 11: end +stopmode="2" + +## Query mode +# 1: session only +# 2: gamedig + gsquery +# 3: gamedig +# 4: gsquery +# 5: tcp +querymode="1" +querytype="" + +## LinuxGSM Server Details +# Do not edit +gamename="Pavlov VR" +engine="unreal4" +glibc="2.17" + +#### Directories #### +# Edit with care + +## Server Specific Directories +systemdir="${serverfiles}/Pavlov" +executabledir="${systemdir}/Binaries/Linux" +executable="./PavlovServer" +servercfgdir="${systemdir}/Saved/Config/LinuxServer" +servercfg="Game.ini" +servercfgdefault="Game.ini" +servercfgfullpath="${servercfgdir}/${servercfg}" + +## Backup Directory +backupdir="${lgsmdir}/backup" + +## Logging Directories +logdir="${rootdir}/log" +gamelogdir="${systemdir}/Saved/Logs" +lgsmlogdir="${logdir}/script" +consolelogdir="${logdir}/console" +lgsmlog="${lgsmlogdir}/${selfname}-script.log" +consolelog="${consolelogdir}/${selfname}-console.log" +alertlog="${lgsmlogdir}/${selfname}-alert.log" +postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log" + +## Logs Naming +lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" +consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" diff --git a/lgsm/data/serverlist.csv b/lgsm/data/serverlist.csv index b871357f9..ad3bc9a19 100644 --- a/lgsm/data/serverlist.csv +++ b/lgsm/data/serverlist.csv @@ -69,6 +69,7 @@ opfor,opforserver,Opposing Force pc,pcserver,Project Cars pstbs,pstbsserver,Post Scriptum: The Bloody Seventh pvkii,pvkiiserver,Pirates Vikings & Knights II +pvr,pvrserver,Pavlov VR pz,pzserver,Project Zomboid q2,q2server,Quake 2 q3,q3server,Quake 3: Arena diff --git a/lgsm/functions/check_system_requirements.sh b/lgsm/functions/check_system_requirements.sh index 8b7db5a3c..7a8b73de5 100755 --- a/lgsm/functions/check_system_requirements.sh +++ b/lgsm/functions/check_system_requirements.sh @@ -38,6 +38,9 @@ elif [ "${shortname}" == "ns2" ]||[ "${shortname}" == "ns2c" ]; then elif [ "${shortname}" == "st" ]; then ramrequirementmb="1000" ramrequirementgb="1" +elif [ "${shortname}" == "pvr" ];then + ramrequirementmb="2000" + ramrequirementgb="2" fi # If the game or engine has a minimum RAM Requirement, compare it to system's available RAM. diff --git a/lgsm/functions/fix_steamcmd.sh b/lgsm/functions/fix_steamcmd.sh index 3fe106c38..41d31e263 100755 --- a/lgsm/functions/fix_steamcmd.sh +++ b/lgsm/functions/fix_steamcmd.sh @@ -84,6 +84,8 @@ elif [ "${shortname}" == "ins" ]; then elif [ "${shortname}" == "pz" ]; then fn_fix_steamclient_so "32" "${serverfiles}/linux32" fn_fix_steamclient_so "64" "${serverfiles}/linux64" +elif [ "${shortname}" == "pvr" ]; then + fn_fix_steamclient_so "64" "${executabledir}" elif [ "${shortname}" == "ss3" ]; then fn_fix_steamclient_so "32" "${serverfiles}/Bin" elif [ "${shortname}" == "tu" ];then diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index ec0d2eb4a..d13e000d9 100755 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -1511,6 +1511,20 @@ fn_info_config_soldat(){ fi } +fn_info_config_pavlovvr(){ + if [ ! -f "${servercfgfullpath}" ]; then + servername="${unavailable}" + maxplayers="${unavailable}" + else + servername=$(grep "ServerName" "${servercfgfullpath}" | awk -F '=' '{print $2}') + maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | awk -F '=' '{print $2}') + + # Not set + servername=${servername:-"NOT SET"} + maxplayers=${maxplayers:-"0"} + fi +} + if [ "${shortname}" == "ac" ]; then fn_info_config_assettocorsa elif [ "${shortname}" == "ark" ]; then @@ -1631,4 +1645,6 @@ elif [ "${shortname}" == "st" ]; then fn_info_config_stationeers elif [ "${shortname}" == "mh" ]; then fn_info_config_mordhau +elif [ "${shortname}" == "pvr" ];then + fn_info_config_pavlovvr fi diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index 6eb97f241..dde3a2585 100755 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -1435,6 +1435,16 @@ fn_info_message_warfork(){ } | column -s $'\t' -t } +fn_info_message_pavlovvr(){ + echo "netstat -atunp | grep Pavlov" + echo -e "" + { + echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" + echo -e "> Game\tINBOUND\t${port}\tudp" + echo -e "> Game\tINBOUND\t$((port+400))\tudp" + } | column -s $'\t' -t +} + fn_info_message_select_engine(){ # Display details depending on game or engine. if [ "${shortname}" == "ac" ]; then @@ -1547,6 +1557,8 @@ fn_info_message_select_engine(){ fn_info_message_bfv elif [ "${shortname}" == "rtcw" ]; then fn_info_message_rtcw + elif [ "${shortname}" == "pvr" ]; then + fn_info_message_pavlovvr elif [ "${shortname}" == "rust" ]; then fn_info_message_rust elif [ "${shortname}" == "wf" ]; then diff --git a/lgsm/functions/info_parms.sh b/lgsm/functions/info_parms.sh index 57ca43850..74c29b9df 100755 --- a/lgsm/functions/info_parms.sh +++ b/lgsm/functions/info_parms.sh @@ -196,6 +196,11 @@ fn_info_parms_teeworlds(){ queryport=${port:-"0"} } +fn_info_parms_pavlovvr(){ + port=${port:-"0"} + queryport=${queryport:-"0"} +} + fn_info_parms_unreal(){ defaultmap=${defaultmap:-"NOT SET"} queryport=$((port + 1)) @@ -250,6 +255,8 @@ elif [ "${shortname}" == "mom" ]; then fn_info_parms_mom elif [ "${shortname}" == "pz" ]; then fn_info_parms_projectzomboid +elif [ "${shortname}" == "pvr" ]; then + fn_info_parms_pavlovvr elif [ "${shortname}" == "qw" ]; then fn_info_parms_quakeworld elif [ "${shortname}" == "q2" ]||[ "${shortname}" == "q3" ]; then diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index 543bd0a3d..d512f5b68 100755 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -576,6 +576,13 @@ elif [ "${shortname}" == "mumble" ]; then fn_fetch_default_config fn_default_config_remote fn_list_config_locations +elif [ "${gamename}" == "Pavlov VR" ]; then + gamedirname="PavlovVR" + fn_check_cfgdir + array_configs+=( Game.ini ) + fn_fetch_default_config + fn_default_config_remote + fn_set_config_vars elif [ "${shortname}" == "pvkii" ]; then gamedirname="PiratesVikingandKnightsII" array_configs+=( server.cfg ) From 26d750133b453404b141f335b54689fc5baddd93 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 18 Nov 2020 23:05:27 +0000 Subject: [PATCH 28/70] Update ssh-agent to 0.4.1 --- .github/workflows/git-sync.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/git-sync.yml b/.github/workflows/git-sync.yml index 9fc886b4e..c058b6d24 100644 --- a/.github/workflows/git-sync.yml +++ b/.github/workflows/git-sync.yml @@ -11,17 +11,16 @@ jobs: repo-sync: runs-on: ubuntu-latest steps: - - name: ssh - uses: webfactory/ssh-agent@v0.2.0 + - name: webfactory/ssh-agent + uses: webfactory/ssh-agent@v0.4.1 with: ssh-private-key: ${{ secrets.BITBUCKET_SECRET }} - ssh_private_key: ${{ secrets.BITBUCKET_SECRET }} - name: repo-sync - uses: wei/git-sync@v2 + uses: wei/git-sync@v2.1.0 with: + ssh_private_key: ${{ secrets.BITBUCKET_SECRET }} source_repo: "https://github.com/GameServerManagers/LinuxGSM" source_branch: "refs/heads/*" destination_repo: "git@bitbucket.org:GameServerManagers/linuxgsm.git" destination_branch: "refs/heads/*" - ssh_private_key: ${{ secrets.BITBUCKET_SECRET }} From 097bb991ab93705cfe3851fadfb3d0d135ead715 Mon Sep 17 00:00:00 2001 From: tkrn Date: Thu, 19 Nov 2020 17:03:04 -0500 Subject: [PATCH 29/70] feat(mods): metamod/amxmodx for goldsrc engines (#3104) --- lgsm/functions/command_mods_install.sh | 23 +++ lgsm/functions/command_mods_remove.sh | 31 +++- lgsm/functions/core_getopt.sh | 2 +- lgsm/functions/mods_core.sh | 248 +++++++++++++++++++++++++ lgsm/functions/mods_list.sh | 86 +++++++-- 5 files changed, 370 insertions(+), 20 deletions(-) diff --git a/lgsm/functions/command_mods_install.sh b/lgsm/functions/command_mods_install.sh index 369f5f967..d644e0cf0 100755 --- a/lgsm/functions/command_mods_install.sh +++ b/lgsm/functions/command_mods_install.sh @@ -95,6 +95,18 @@ if [ -f "${modsinstalledlistfullpath}" ]; then fi ## Installation. +# If amxmodx check if metamod exists first +if [ "${modcommand}" == "amxmodx" ]; then + fn_mod_exist "metamod" +fi + +if [ "${modcommand}" == "amxmodxcs" ] || + [ "${modcommand}" == "amxmodxdod" ] || + [ "${modcommand}" == "amxmodxtfc" ] || + [ "${modcommand}" == "amxmodxns" ] || + [ "${modcommand}" == "amxmodxts" ]; then + fn_mod_exist "amxmodx" +fi fn_create_mods_dir fn_mods_clear_tmp_dir @@ -106,6 +118,17 @@ fn_mod_copy_destination fn_mod_add_list fn_mod_tidy_files_list fn_mods_clear_tmp_dir + +# Create/modify existing liblist.gam file for Metamod +if [ "${modcommand}" == "metamod" ]; then + fn_mod_install_liblist_gam_file +fi + +# Create/modify plugins.ini file for Metamod +if [ "${modcommand}" == "amxmodx" ]; then + fn_mod_install_amxmodx_file +fi + echo -e "${modprettyname} installed" fn_script_log_pass "${modprettyname} installed." diff --git a/lgsm/functions/command_mods_remove.sh b/lgsm/functions/command_mods_remove.sh index 7cbba8a71..507251e87 100755 --- a/lgsm/functions/command_mods_remove.sh +++ b/lgsm/functions/command_mods_remove.sh @@ -37,7 +37,7 @@ while [[ ! " ${installedmodslist[@]} " =~ " ${usermodselect} " ]]; do read -r usermodselect # Exit if user says exit or abort. if [ "${usermodselect}" == "exit" ]||[ "${usermodselect}" == "abort" ]; then - core_exit.sh + core_exit.sh # Supplementary output upon invalid user input. elif [[ ! " ${availablemodscommands[@]} " =~ " ${usermodselect} " ]]; then fn_print_error2_nl "${usermodselect} is not a valid addon/mod." @@ -82,17 +82,25 @@ while [ "${modfileline}" -le "${modsfilelistsize}" ]; do echo -e "removing ${modprettyname} ${modfileline} / ${modsfilelistsize} : ${currentfileremove}..." ((modfileline++)) done -if [ "${exitcode}" != 0 ]; then - fn_print_fail_eol_nl - core_exit.sh + +# Added logic not to fail since removing game specific mods (amxmodxcs) removes files that will +# not be found when removing the base (amxmodx) mod +if [ "${modcommand}" != "amxmodx" ]; then + if [ "${exitcode}" != 0 ]; then + fn_print_fail_eol_nl + core_exit.sh + else + fn_print_ok_eol_nl + fi else fn_print_ok_eol_nl fi + # Remove file list. echo -en "removing ${modcommand}-files.txt..." fn_sleep_time rm -rf "${modsdir:?}/${modcommand}-files.txt" -local exitcode=$? +exitcode=$? if [ "${exitcode}" != 0 ]; then fn_script_log_fatal "Removing ${modsdir}/${modcommand}-files.txt" fn_print_fail_eol_nl @@ -107,7 +115,7 @@ echo -en "removing ${modcommand} from ${modsinstalledlist}..." fn_sleep_time sed -i "/^${modcommand}$/d" "${modsinstalledlistfullpath}" -local exitcode=$? +exitcode=$? if [ "${exitcode}" != 0 ]; then fn_script_log_fatal "Removing ${modcommand} from ${modsinstalledlist}" fn_print_fail_eol_nl @@ -127,6 +135,17 @@ if [ "${engine}" == "unity3d" ]&&[[ "${modprettyname}" == *"Oxide"* ]]; then fn_firstcommand_reset unset exitbypass fi + +# Remove/modify existing liblist.gam file for Metamod +if [ "${modcommand}" == "metamod" ]; then + fn_mod_remove_liblist_gam_file +fi + +# Remove/modify plugins.ini file for AMX Mod X +if [ "${modcommand}" == "amxmodx" ]; then + fn_mod_remove_amxmodx_file +fi + echo -e "${modprettyname} removed" fn_script_log "${modprettyname} removed" diff --git a/lgsm/functions/core_getopt.sh b/lgsm/functions/core_getopt.sh index 82eb77691..e20b32b57 100755 --- a/lgsm/functions/core_getopt.sh +++ b/lgsm/functions/core_getopt.sh @@ -125,7 +125,7 @@ if [ "${shortname}" == "squad" ]; then fi ## Mods commands. -if [ "${engine}" == "source" ]||[ "${shortname}" == "rust" ]||[ "${shortname}" == "hq" ]||[ "${shortname}" == "sdtd" ]; then +if [ "${engine}" == "source" ]||[ "${shortname}" == "rust" ]||[ "${shortname}" == "hq" ]||[ "${shortname}" == "sdtd" ]||[ "${shortname}" == "cs" ]||[ "${shortname}" == "dod" ]||[ "${shortname}" == "tfc" ]||[ "${shortname}" == "ns" ]||[ "${shortname}" == "ts" ]||[ "${shortname}" == "hldm" ]; then currentopt+=( "${cmd_mods_install[@]}" "${cmd_mods_remove[@]}" "${cmd_mods_update[@]}" ) fi diff --git a/lgsm/functions/mods_core.sh b/lgsm/functions/mods_core.sh index bd6b6275c..535703430 100755 --- a/lgsm/functions/mods_core.sh +++ b/lgsm/functions/mods_core.sh @@ -495,6 +495,254 @@ fn_check_mod_files_list(){ fi } +fn_mod_exist(){ + modreq=$1 + # requires one parameter, the mod + if [ -f "${modsdir}/${modreq}-files.txt" ]; then + # how many lines is the file list + modsfilelistsize=$(wc -l < "${modsdir}/${modreq}-files.txt") + # if file list is empty + if [ "${modsfilelistsize}" -eq 0 ]; then + fn_mod_required_fail_exist "${modreq}" + fi + else + fn_mod_required_fail_exist "${modreq}" + fi +} + +fn_mod_required_fail_exist(){ + modreq=$1 + # requires one parameter, the mod + fn_script_log_fatal "${modreq}-files.txt is empty: unable to find ${modreq} installed" + echo -en "* Unable to find '${modreq}' which is required prior to installing this mod..." + fn_print_fail_eol_nl + core_exit.sh +} + +fn_mod_liblist_gam_filenames(){ + # clear variables just in case + moddll="" + modso="" + moddylib="" + + # default libraries + case ${gamename} in + "Counter-Strike 1.6") + moddll="mp.dll" + modso="cs.so" + moddylib="cs.dylib" + ;; + "Day of Defeat") + moddll="dod.dll" + modso="dod.so" + moddylib="dod.dylib" + ;; + "Team Fortress Classic") + moddll="tfc.dll" + modso="tfc.so" + moddylib="tfc.dylib" + ;; + "Natural Selection") + moddll="ns.dll" + modso="ns_i386.so" + moddylib="" + ;; + "The Specialists") + moddll="mp.dll" + modso="ts_i386.so" + moddylib="" + ;; + "Half-Life: Deathmatch") + moddll="hl.dll" + modso="hl.so" + moddylib="hl.dylib" + ;; + esac +} + +# modifers for liblist.gam to add/remote metamod binaries +fn_mod_install_liblist_gam_file(){ + + fn_mod_liblist_gam_filenames + + if [ -f "${modinstalldir}/liblist.gam" ]; then + # modify the liblist.gam file to initialize Metamod + logentry="sed replace (dlls\\${moddll}) ${modinstalldir}/liblist.gam" + echo -en "modifying gamedll in liblist.gam..." + rpldll="s/dlls\\\\${moddll}/addons\/metamod\/dlls\/metamod.dll/g" + sed -i $rpldll ${modinstalldir}/liblist.gam + grep -q "addons/metamod/dlls/metamod.dll" ${modinstalldir}/liblist.gam + exitcode=$? + # if replacement back didn't happen, error out. + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + + # modify the liblist.gam file to initialize metamod + logentry="sed replace (dlls\\${modso}) ${modinstalldir}/liblist.gam" + echo -en "modifying gamedll_linux in liblist.gam..." + rplso="s/dlls\/${modso}/addons\/metamod\/dlls\/metamod.so/g" + sed -i $rplso ${modinstalldir}/liblist.gam + grep -q "addons/metamod/dlls/metamod.so" ${modinstalldir}/liblist.gam + exitcode=$? + # if replacement back didn't happen, error out + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + + # mac os needs to be checked not all mods support mac os + if [ -n "${moddylib}" ]; then + # modify the liblist.gam file to initialize metamod + logentry="sed replace (dlls\\${moddylib}) ${modinstalldir}/liblist.gam" + echo -en "modifying gamedll_osx in liblist.gam..." + rpldylib="s/dlls\/${moddylib}/addons\/metamod\/dlls\/metamod.dylib/g" + sed -i $rpldylib ${modinstalldir}/liblist.gam + grep -q "addons/metamod/dlls/metamod.dylib" ${modinstalldir}/liblist.gam + exitcode=$? + # if replacement back didn't happen, error out. + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + fi + fi +} + +fn_mod_remove_liblist_gam_file(){ + + fn_mod_liblist_gam_filenames + + if [ -f "${modinstalldir}/liblist.gam" ]; then + # modify the liblist.gam file back to defaults + logentry="sed replace (addons/metamod/dlls/metamod.dll) ${modinstalldir}/liblist.gam" + echo -en "modifying gamedll in liblist.gam..." + rpldll="s/addons\/metamod\/dlls\/metamod.dll/dlls\\\\${moddll}/g" + sed -i $rpldll ${modinstalldir}/liblist.gam + grep -q "${moddll}" ${modinstalldir}/liblist.gam + exitcode=$? + # if replacement back didn't happen, error out. + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + + # modify the liblist.gam file back to defaults + logentry="sed replace (addons/metamod/dlls/metamod.so) ${modinstalldir}/liblist.gam" + echo -en "modifying gamedll_linux in liblist.gam..." + rplso="s/addons\/metamod\/dlls\/metamod.so/dlls\/${modso}/g" + sed -i $rplso ${modinstalldir}/liblist.gam + grep -q "${modso}" ${modinstalldir}/liblist.gam + exitcode=$? + # if replacement back didn't happen, error out + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + + # mac os needs to be checked not all mods support mac os + if [ -n "${moddylib}" ]; then + # modify the liblist.gam file back to defaults + logentry="sed replace (addons/metamod/dlls/metamod.dylib) ${modinstalldir}/liblist.gam" + echo -en "modifying gamedll_osx in liblist.gam..." + rpldylib="s/addons\/metamod\/dlls\/metamod.dylib/dlls\/${moddylib}/g" + sed -i $rpldylib ${modinstalldir}/liblist.gam + grep -q "${moddylib}" ${modinstalldir}/liblist.gam + # if replacement back didn't happen, error out. + exitcode=$? + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + fi + fi +} + +fn_mod_install_amxmodx_file(){ + # does plugins.ini exist? + if [ -f "${modinstalldir}/addons/metamod/plugins.ini" ]; then + # since it does exist, is the entry already in plugins.ini + logentry="line (linux addons/amxmodx/dlls/amxmodx_mm_i386.so) inserted into ${modinstalldir}/addons/metamod/plugins.ini" + echo -en "adding amxmodx_mm_i386.so in plugins.ini..." + grep -q "amxmodx_mm_i386.so" ${modinstalldir}/addons/metamod/plugins.ini + exitcode=$? + if [ "${exitcode}" != 0 ]; then + # file exists but the entry does not, let's add it + echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" >> ${modinstalldir}/addons/metamod/plugins.ini + exitcode=$? + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + fi + else + # create new file and add the mod to it + echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" > ${modinstalldir}/addons/metamod/plugins.ini + exitcode=$? + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + core_exit.sh + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + fi +} + +fn_mod_remove_amxmodx_file(){ + if [ -f "${modinstalldir}/addons/metamod/plugins.ini" ]; then + # since it does exist, is the entry already in plugins.ini + logentry="line (linux addons/amxmodx/dlls/amxmodx_mm_i386.so) removed from ${modinstalldir}/addons/metamod/plugins.ini" + echo -en "removing amxmodx_mm_i386.so in plugins.ini..." + grep -q "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" ${modinstalldir}/addons/metamod/plugins.ini + # iIs it found? If so remove it and clean up + exitcode=$? + if [ "${exitcode}" == 0 ]; then + # delete the line we inserted + sed -i '/linux addons\/amxmodx\/dlls\/amxmodx_mm_i386.so/d' ${modinstalldir}/addons/metamod/plugins.ini + # remove empty lines + sed -i '/^$/d' ${modinstalldir}/addons/metamod/plugins.ini + exitcode=$? + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal $logentry + fn_print_fail_eol_nl + else + fn_script_log_pass $logentry + fn_print_ok_eol_nl + fi + + # if file is empty, remove it. + if [ -f "${modinstalldir}/addons/metamod/plugins.ini" ]; then + rm ${modinstalldir}/addons/metamod/plugins.ini + fn_script_log_pass "file removed ${modinstalldir}/addons/metamod/plugins.ini because it was empty" + fi + fi + fi +} + ## Database initialisation. mods_list.sh diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh index 333601dce..2e7e35cb2 100755 --- a/lgsm/functions/mods_list.sh +++ b/lgsm/functions/mods_list.sh @@ -12,17 +12,59 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" # Get a proper URL for mods that don't provide a good one (optional) fn_script_log_info "Retrieving latest mods URLs" -# Metamod -metamodmversion="1.10" -metamodscrapeurl="https://mms.alliedmods.net/mmsdrop/${metamodmversion}/mmsource-latest-linux" -metamodlatestfile=$(wget "${metamodscrapeurl}" -q -O -) -metamoddownloadurl="https://www.metamodsource.net/latest.php?os=linux&version=${metamodmversion}" + +# Metamod (Half-life 1 Classic Engine) +metamodversion="1.21.1-am" +metamodlatestfile="metamod-${metamodversion}.zip" +metamoddownloadurl="https://www.amxmodx.org/release/${metamodlatestfile}" metamodurl="${metamoddownloadurl}" +# AMX Mod X: Base +amxxbaseversion="1.8.2" +amxxbasemod="base" +amxxbaselatestfile="amxmodx-${amxxbaseversion}-${amxxbasemod}-linux.tar.gz" +amxxbasedownloadurl="https://www.amxmodx.org/release/${amxxbaselatestfile}" +amxxbaseurl="${amxxbasedownloadurl}" +# AMX Mod X: Counter-Strike +amxxcsversion="1.8.2" +amxxcsmod="cstrike" +amxxcslatestfile="amxmodx-${amxxbaseversion}-${amxxcsmod}-linux.tar.gz" +amxxcsdownloadurl="https://www.amxmodx.org/release/${amxxcslatestfile}" +amxxcsurl="${amxxcsdownloadurl}" +# AMX Mod X: Day of Defeat +amxxdodversion="1.8.2" +amxxdodmod="dod" +amxxdodlatestfile="amxmodx-${amxxdodversion}-${amxxdodmod}-linux.tar.gz" +amxxdoddownloadurl="https://www.amxmodx.org/release/${amxxdodlatestfile}" +amxxdodurl="${amxxdoddownloadurl}" +# AMX Mod X: Team Fortress Classic +amxxtfcversion="1.8.2" +amxxtfcmod="tfc" +amxxtfclatestfile="amxmodx-${amxxtfcversion}-${amxxtfcmod}-linux.tar.gz" +amxxtfcdownloadurl="https://www.amxmodx.org/release/${amxxtfclatestfile}" +amxxtfcurl="${amxxtfcdownloadurl}" +# AMX Mod X: Natural Selection +amxxnsversion="1.8.2" +amxxnsmod="ns" +amxxnslatestfile="amxmodx-${amxxnsversion}-${amxxnsmod}-linux.tar.gz" +amxxnsdownloadurl="https://www.amxmodx.org/release/${amxxnslatestfile}" +amxxnsurl="${amxxnsdownloadurl}" +# AMX Mod X: The Specialists +amxxtsversion="1.8.2" +amxxtsmod="ts" +amxxtslatestfile="amxmodx-${amxxtsversion}-${amxxtsmod}-linux.tar.gz" +amxxtsdownloadurl="https://www.amxmodx.org/release/${amxxtslatestfile}" +amxxtsurl="${amxxtsdownloadurl}" +# Metamod:Source +metamodsourceversion="1.10" +metamodsourcescrapeurl="https://mms.alliedmods.net/mmsdrop/${metamodsourceversion}/mmsource-latest-linux" +metamodsourcelatestfile=$(wget "${metamodsourcescrapeurl}" -q -O -) +metamodsourcedownloadurl="https://www.metamodsource.net/latest.php?os=linux&version=${metamodsourceversion}" +metamodsourceurl="${metamodsourcedownloadurl}" # Sourcemod -sourcemodmversion="1.10" -sourcemodscrapeurl="https://sm.alliedmods.net/smdrop/${sourcemodmversion}/sourcemod-latest-linux" +sourcemodversion="1.10" +sourcemodscrapeurl="https://sm.alliedmods.net/smdrop/${sourcemodversion}/sourcemod-latest-linux" sourcemodlatestfile=$(wget "${sourcemodscrapeurl}" -q -O -) -sourcemoddownloadurl="https://www.sourcemod.net/latest.php?os=linux&version=${sourcemodmversion}" +sourcemoddownloadurl="https://www.sourcemod.net/latest.php?os=linux&version=${sourcemodversion}" sourcemodurl="${sourcemoddownloadurl}" # Steamworks steamworksscrapeurl="https://users.alliedmods.net/~kyles/builds/SteamWorks" @@ -67,15 +109,34 @@ modseparator="MOD" # [12] | "AUTHOR_URL" is the author's website, displayed to the user when chosing mods to install # [13] | "Short Description" a description showed to the user upon installation/removal +# Half-life 1 Engine Mods +mod_info_metamod=( MOD "metamod" "Metamod" "${metamodurl}" "${metamodlatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/metamod/plugins.ini;" "ENGINES" "Counter-Strike 1.6;Day of Defeat;Team Fortress Classic;Natural Selection;The Specialists;Half-Life: Deathmatch;" "NOTGAMES" "https://github.com/alliedmodders/metamod-hl1" "Plugins Framework" ) +mod_info_base_amxx=( MOD "amxmodx" "AMX Mod X: Base" "${amxxbaseurl}" "${amxxbaselatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/amxmodx/configs;" "ENGINES" "Counter-Strike 1.6;Day of Defeat;Team Fortress Classic;Natural Selection;The Specialists;Half-Life: Deathmatch;" "NOTGAMES" "https://www.amxmodx.org" "Admin Features (requires Metamod)" ) + +# CS 1.6 (HL1) Engine Mods +mod_info_cs_amxx=( MOD "amxmodxcs" "AMX Mod X: Counter-Strike" "${amxxcsurl}" "${amxxcslatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/amxmodx/configs;" "ENGINES" "Counter-Strike 1.6;" "NOTGAMES" "https://www.amxmodx.org" "Admin Features (requires Metamod & AMX Mod X: Base)" ) + +# DOD (HL1) Engine Mods +mod_info_dod_amxx=( MOD "amxmodxdod" "AMX Mod X: Day of Defeat" "${amxxdodurl}" "${amxxdodlatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/amxmodx/configs;" "ENGINES" "Day of Defeat;" "NOTGAMES" "https://www.amxmodx.org" "Admin Features (requires Metamod & AMX Mod X: Base)" ) + +# TFC (HL1) Engine Mods +mod_info_tfc_amxx=( MOD "amxmodxtfc" "AMX Mod X: Team Fortress Classic" "${amxxtfcurl}" "${amxxtfclatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/amxmodx/configs;" "ENGINES" "Team Fortress Classic;" "NOTGAMES" "https://www.amxmodx.org" "Admin Features (requires Metamod & AMX Mod X: Base)" ) + +# NS (Natural Selection) (HL1) Engine Mods +mod_info_ns_amxx=( MOD "amxmodxns" "AMX Mod X: Natural Selection" "${amxxnsurl}" "${amxxnslatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/amxmodx/configs;" "ENGINES" "Natural Selection;" "NOTGAMES" "https://www.amxmodx.org" "Admin Features (requires Metamod & AMX Mod X: Base)" ) + +# TS (The Specialists) (HL1) Engine Mods +mod_info_ts_amxx=( MOD "amxmodxts" "AMX Mod X: The Specialists" "${amxxtsurl}" "${amxxtslatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/amxmodx/configs;" "ENGINES" "The Specialists;" "NOTGAMES" "https://www.amxmodx.org" "Admin Features (requires Metamod & AMX Mod X: Base)" ) + # Source mods -mod_info_metamod=( MOD "metamod" "MetaMod" "${metamodurl}" "${metamodlatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/metamod/metaplugins.ini;" "source;" "GAMES" "NOTGAMES" "https://www.sourcemm.net" "Plugins Framework" ) -mod_info_sourcemod=( MOD "sourcemod" "SourceMod" "${sourcemodurl}" "${sourcemodlatestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "source;" "GAMES" "NOTGAMES" "http://www.sourcemod.net" "Admin Features (requires MetaMod)" ) +mod_info_metamodsource=( MOD "metamodsource" "Metamod: Source" "${metamodsourceurl}" "${metamodsourcelatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/metamod/metaplugins.ini;" "source;" "GAMES" "NOTGAMES" "https://www.sourcemm.net" "Plugins Framework" ) +mod_info_sourcemod=( MOD "sourcemod" "SourceMod" "${sourcemodurl}" "${sourcemodlatestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "source;" "GAMES" "NOTGAMES" "http://www.sourcemod.net" "Admin Features (requires Metamod: Source)" ) mod_info_steamworks=( MOD "steamworks" "SteamWorks" "${steamworksurl}" "${steamworkslatestfile}" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/KyleSanderson/SteamWorks" "Exposing SteamWorks functions to SourcePawn" ) mod_info_stripper=( MOD "stripper" "Stripper Source" "http://www.bailopan.net/stripper/snapshots/1.2/stripper-1.2.2-git129-linux.tar.gz" "stripper-1.2.2-git129-linux.tar.gz" "0" "LowercaseOff" "${systemdir}" "addons/stripper/maps;" "ENGINES" "Counter-Strike: Global Offensive;Counter-Strike: Source;Day of Defeat: Source;Half Life: Deathmatch;Half Life 2: Deathmatch;Insurgency;Left 4 Dead;Left 4 Dead 2;Nuclear Dawn;Team Fortress 2;" "NOTGAMES" "http://www.bailopan.net/stripper/" "Add or remove objects from map (requires MetaMod)") # CS:GO Mods mod_info_gokz=( MOD "gokz" "GOKZ" "https://bitbucket.org/kztimerglobalteam/gokz/downloads/GOKZ-latest.zip" "gokz-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://bitbucket.org/kztimerglobalteam/gokz/src/master/" "Implements the KZ game mode (requires SourceMod and MetaMod)" ) -mod_info_ttt=( MOD "ttt" "Trouble in Terrorist Town" "https://csgottt.com/downloads/ttt-latest-dev-${sourcemodmversion}.zip" "ttt-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/Bara/TroubleinTerroristTown" "Implements the TTT game mode (requires SourceMod and MetaMod)" ) +mod_info_ttt=( MOD "ttt" "Trouble in Terrorist Town" "https://csgottt.com/downloads/ttt-latest-dev-${sourcemodversion}.zip" "ttt-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/Bara/TroubleinTerroristTown" "Implements the TTT game mode (requires SourceMod and MetaMod)" ) mod_info_get5=( MOD "get5" "Get 5" "${get5url}" "${get5latestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/splewis/get5" "Plugin for competitive matches/scrims (requires SourceMod and MetaMod)" ) mod_info_pug=( MOD "pug" "PUG" "${csgopuglatestlink}" "${csgopuglatestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/splewis/csgo-pug-setup" "plugin for setting up private pug/10man games" ) @@ -93,11 +154,10 @@ mod_info_wiremodextras=( MOD "wiremod-extras" "Wiremod Extras" "https://github.c mod_info_darkrp=( MOD "darkrp" "DarkRP" "https://github.com/FPtje/DarkRP/archive/master.zip" "darkrp-master.zip" "0" "LowercaseOn" "${systemdir}/gamemodes" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "http://darkrp.com" "Most popular gamemode" ) mod_info_darkrpmodification=( MOD "darkrpmodification" "DarkRP Modification" "https://github.com/FPtje/darkrpmodification/archive/master.zip" "darkrpmodification-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "NOUPDATE" "ENGINES" "Garry's Mod;" "NOTGAMES" "http://darkrp.com" "Customize DarkRP settings" ) - # Oxidemod mod_info_rustoxide=( MOD "rustoxide" "Oxide for Rust" "${oxiderustlatestlink}" "Oxide.Rust-linux.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "Rust;" "NOTGAMES" "https://umod.org/games/rust" "Allows for the use of plugins" ) mod_info_hwoxide=( MOD "hwoxide" "Oxide for Hurtworld" "${oxidehurtworldlatestlink}" "Oxide.Hurtworld.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "Hurtworld;" "NOTGAMES" "https://umod.org/games/hurtworld" "Allows for the use of plugins" ) mod_info_sdtdoxide=( MOD "sdtdoxide" "Oxide for 7 Days To Die" "${oxidesdtdlatestlink}" "Oxide.SevenDaysToDie.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "7 Days To Die;" "NOTGAMES" "https://umod.org/games/7-days-to-die" "Allows for the use of plugins" ) # REQUIRED: Set all mods info into the global array -mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_stripper[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_pug[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" ) +mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_base_amxx[@]}" "${mod_info_cs_amxx[@]}" "${mod_info_dod_amxx[@]}" "${mod_info_tfc_amxx[@]}" "${mod_info_ns_amxx[@]}" "${mod_info_ts_amxx[@]}" "${mod_info_metamodsource[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_pug[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" ) \ No newline at end of file From 6eabed9565f68b620d65df12fadcd62cd09cae0a Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 22 Nov 2020 19:00:44 +0000 Subject: [PATCH 30/70] feat(ut99server): update UT99 to version 469a (OldUnreal patch) (#3110) --- lgsm/functions/install_server_files.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/install_server_files.sh b/lgsm/functions/install_server_files.sh index 73f2dc2b1..f8b6be4f0 100755 --- a/lgsm/functions/install_server_files.sh +++ b/lgsm/functions/install_server_files.sh @@ -48,7 +48,7 @@ fn_install_server_files(){ elif [ "${shortname}" == "ut2k4" ]; then remote_fileurl="http://linuxgsm.download/UnrealTournament2004/ut2004-server-3369-3-ultimate-linux.tar.xz"; local_filedir="${tmpdir}"; local_filename="ut2004-server-3369-3-ultimate-linux.tar.xz"; chmodx="nochmodx" run="norun"; force="noforce"; md5="9fceaab68554749f4b45be66613b9a15" elif [ "${shortname}" == "ut99" ]; then - remote_fileurl="http://linuxgsm.download/UnrealTournament99/ut99-server-451-ultimate-linux.tar.xz"; local_filedir="${tmpdir}"; local_filename="ut99-server-451-ultimate-linux.tar.xz"; chmodx="nochmodx" run="norun"; force="noforce"; md5="42c6839f8cb95907eeef71a1838aa1f7" + remote_fileurl="http://linuxgsm.download/UnrealTournament99/ut99-server-469a-ultimate-linux.tar.xz"; local_filedir="${tmpdir}"; local_filename="ut99-server-469a-ultimate-linux.tar.xz"; chmodx="nochmodx" run="norun"; force="noforce"; md5="e3f2ffaab8e23b98d9e825d0244e8b9d" elif [ "${shortname}" == "ut" ]; then remote_fileurl="http://linuxgsm.download/UnrealTournament/UnrealTournament-Server-XAN-3525360-Linux.tar.xz"; local_filedir="${tmpdir}"; local_filename="UnrealTournament-Server-XAN-3525360-Linux.tar.xz"; chmodx="noexecute" run="norun"; force="noforce"; md5="41dd92015713a78211eaccf503b72393" elif [ "${shortname}" == "ut3" ]; then From d7b4ac6b46169368ea0568bc0e7e636a1094bf23 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sat, 28 Nov 2020 22:17:47 +0000 Subject: [PATCH 31/70] feat(mcserver): select Minecraft release or snapshot (#3114) Select either release or snapshot branch. Also, have the option to select either latest or specific release/snapshot. A new more efficient way to get the local release that extracts the jar file and parses json file with version number Co-authored-by: Josh Bryans --- .../config-lgsm/mcserver/_default.cfg | 5 +- lgsm/functions/update_minecraft.sh | 65 ++++++------------- 2 files changed, 24 insertions(+), 46 deletions(-) diff --git a/lgsm/config-default/config-lgsm/mcserver/_default.cfg b/lgsm/config-default/config-lgsm/mcserver/_default.cfg index 92f25294c..b78195e3e 100644 --- a/lgsm/config-default/config-lgsm/mcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mcserver/_default.cfg @@ -16,8 +16,11 @@ fn_parms(){ parms="nogui" } -## Branch, "snapshot" include snapshot and pre-release versions. | (release|snapshot) +## Release Settings | https://docs.linuxgsm.com/game-servers/minecraft#release-settings +# Branch (release|snapshot) branch="release" +# Version (latest|1.16) +mcversion="latest" #### LinuxGSM Settings #### diff --git a/lgsm/functions/update_minecraft.sh b/lgsm/functions/update_minecraft.sh index 98889ed64..e33840f3e 100755 --- a/lgsm/functions/update_minecraft.sh +++ b/lgsm/functions/update_minecraft.sh @@ -7,14 +7,12 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" fn_update_minecraft_dl(){ - if [ "${branch}" == "release" ]; then - latestmcreleaselink=$(curl -s "https://launchermeta.${remotelocation}/mc/game/version_manifest.json" | jq -r '.latest.release as $latest | .versions[] | select(.id == $latest) | .url') - else - latestmcreleaselink=$(curl -s "https://launchermeta.${remotelocation}/mc/game/version_manifest.json" | jq -r '.versions[0].url') - fi + # Generate link to version manifest json. + remotebuildlink=$(curl -s "https://launchermeta.${remotelocation}/mc/game/version_manifest.json" | jq -r --arg branch ${branch} --arg mcversion ${remotebuild} '.versions | .[] | select(.type==$branch and .id==$mcversion) | .url') + # Generate link to server.jar + remotebuildurl=$(curl -s "${remotebuildlink}" | jq -r '.downloads.server.url') - latestmcbuildurl=$(curl -s "${latestmcreleaselink}" | jq -r '.downloads.server.url') - fn_fetch_file "${latestmcbuildurl}" "" "" "" "${tmpdir}" "minecraft_server.${remotebuild}.jar" "" "norun" "noforce" "nomd5" + fn_fetch_file "${remotebuildurl}" "" "" "" "${tmpdir}" "minecraft_server.${remotebuild}.jar" "" "norun" "noforce" "nomd5" echo -e "copying to ${serverfiles}...\c" cp "${tmpdir}/minecraft_server.${remotebuild}.jar" "${serverfiles}/minecraft_server.jar" local exitcode=$? @@ -34,53 +32,30 @@ fn_update_minecraft_dl(){ fn_update_minecraft_localbuild(){ # Gets local build info. fn_print_dots "Checking local build: ${remotelocation}" - # Uses log file to gather info. - localbuild=$(grep -i version "${consolelogdir}"/* | tail -1 | sed 's/.*[Vv]ersion //' | sed 's/\r//g' 2>/dev/null) - if [ -z "${localbuild}" ]; then - fn_print_error "Checking local build: ${remotelocation}" - fn_print_error_nl "Checking local build: ${remotelocation}: no log files containing version info" - fn_print_info_nl "Checking local build: ${remotelocation}: forcing server restart" - fn_script_log_error "No log files containing version info" - fn_script_log_info "Forcing server restart" - exitbypass=1 - command_stop.sh - fn_firstcommand_reset - exitbypass=1 - command_start.sh - fn_firstcommand_reset - totalseconds=0 - localbuild=$(grep -i version "${consolelogdir}"/* | tail -1 | sed 's/.*[Vv]ersion //' | sed 's/\r//g' 2>/dev/null) - while [ -z "${localbuild}" ]; do - sleep 1 - fn_print_info "Checking local build: ${remotelocation}: waiting for log file: ${totalseconds}" - if [ -v "${loopignore}" ]; then - loopignore=1 - fn_script_log_info "Waiting for log file to generate" - fi - - localbuild=$(grep -i version "${consolelogdir}"/* | tail -1 | sed 's/.*[Vv]ersion //' | sed 's/\r//g' 2>/dev/null) - if [ "${totalseconds}" -gt "120" ]; then - localbuild="0" - fn_print_error "Checking local build: ${remotelocation}: waiting for log file" - fn_script_log_error "Local build did not generate" - fn_script_log_error "Required log file may be missing" - fn_script_log_error "Local build set to 0" - fi - totalseconds=$((totalseconds + 1)) - done - fi - if [ "${localbuild}" != "0" ]; then + # Uses executable to find local build. + cd "${executabledir}" || exit + if [ -f "minecraft_server.jar" ]; then + localbuild=$(unzip -p "minecraft_server.jar" version.json | jq -r '.id') fn_print_ok "Checking local build: ${remotelocation}" fn_script_log_pass "Checking local build" + else + localbuild="0" + fn_print_error "Checking local build: ${remotelocation}" + fn_script_log_error "Checking local build" fi } fn_update_minecraft_remotebuild(){ # Gets remote build info. - if [ "${branch}" == "release" ]; then + # Latest release. + if [ "${branch}" == "release" ] && [ "${mcversion}" == "latest" ]; then remotebuild=$(curl -s "https://launchermeta.${remotelocation}/mc/game/version_manifest.json" | jq -r '.latest.release') + # Latest snapshot. + elif [ "${branch}" == "snapshot" ] && [ "${mcversion}" == "latest" ]; then + remotebuild=$(curl -s "https://launchermeta.${remotelocation}/mc/game/version_manifest.json" | jq -r '.latest.snapshot') + # Specific release/snapshot. else - remotebuild=$(curl -s "https://launchermeta.${remotelocation}/mc/game/version_manifest.json" | jq -r '.versions[0].id') + remotebuild=$(curl -s "https://launchermeta.${remotelocation}/mc/game/version_manifest.json" | jq -r --arg branch ${branch} --arg mcversion ${mcversion} '.versions | .[] | select(.type==$branch and .id==$mcversion) | .id') fi if [ "${firstcommandname}" != "INSTALL" ]; then From 269bf6e491fba066f22318668c90d5bbe0692fdc Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 29 Nov 2020 14:20:56 +0100 Subject: [PATCH 32/70] fix: add connect timeout to core curl functions (#3117) --- lgsm/functions/alert_discord.sh | 2 +- lgsm/functions/alert_ifttt.sh | 2 +- lgsm/functions/alert_mailgun.sh | 2 +- lgsm/functions/alert_pushbullet.sh | 2 +- lgsm/functions/alert_pushover.sh | 2 +- lgsm/functions/alert_rocketchat.sh | 2 +- lgsm/functions/alert_slack.sh | 2 +- lgsm/functions/alert_telegram.sh | 2 +- lgsm/functions/command_update_linuxgsm.sh | 28 +++++++++++------------ lgsm/functions/core_dl.sh | 4 ++-- lgsm/functions/info_distro.sh | 6 ++--- lgsm/functions/mods_list.sh | 14 ++++++------ linuxgsm.sh | 2 +- 13 files changed, 35 insertions(+), 35 deletions(-) diff --git a/lgsm/functions/alert_discord.sh b/lgsm/functions/alert_discord.sh index b9512bbe7..a8ce373f0 100755 --- a/lgsm/functions/alert_discord.sh +++ b/lgsm/functions/alert_discord.sh @@ -52,7 +52,7 @@ EOF fn_print_dots "Sending Discord alert" -discordsend=$(curl -sSL -H "Content-Type: application/json" -X POST -d "$(echo -n "$json" | jq -c .)" "${discordwebhook}") +discordsend=$(curl --connect-timeout 10 -sSL -H "Content-Type: application/json" -X POST -d "$(echo -n "$json" | jq -c .)" "${discordwebhook}") if [ -n "${discordsend}" ]; then fn_print_fail_nl "Sending Discord alert: ${discordsend}" diff --git a/lgsm/functions/alert_ifttt.sh b/lgsm/functions/alert_ifttt.sh index 7a75050a4..faef505a5 100755 --- a/lgsm/functions/alert_ifttt.sh +++ b/lgsm/functions/alert_ifttt.sh @@ -16,7 +16,7 @@ EOF ) fn_print_dots "Sending IFTTT alert" -iftttsend=$(curl -sSL -H "Content-Type: application/json" -X POST -d """${json}""" "https://maker.ifttt.com/trigger/${iftttevent}/with/key/${ifttttoken}" | grep "Bad Request") +iftttsend=$(curl --connect-timeout 10 -sSL -H "Content-Type: application/json" -X POST -d """${json}""" "https://maker.ifttt.com/trigger/${iftttevent}/with/key/${ifttttoken}" | grep "Bad Request") if [ -n "${iftttsend}" ]; then fn_print_fail_nl "Sending IFTTT alert: ${pushbulletsend}" diff --git a/lgsm/functions/alert_mailgun.sh b/lgsm/functions/alert_mailgun.sh index 0c5aef4b6..5694bd595 100755 --- a/lgsm/functions/alert_mailgun.sh +++ b/lgsm/functions/alert_mailgun.sh @@ -14,7 +14,7 @@ fi fn_print_dots "Sending Email alert: Mailgun: ${email}" -mailgunsend=$(curl -s --user "api:${mailguntoken}" \ +mailgunsend=$(curl --connect-timeout 10 -s --user "api:${mailguntoken}" \ -F from="LinuxGSM <${mailgunemailfrom}>" \ -F to="LinuxGSM Admin <${mailgunemail}>" \ -F subject="${alertemoji} ${alertsubject} ${alertemoji}" \ diff --git a/lgsm/functions/alert_pushbullet.sh b/lgsm/functions/alert_pushbullet.sh index 7a0117a0a..42a9b7d5d 100755 --- a/lgsm/functions/alert_pushbullet.sh +++ b/lgsm/functions/alert_pushbullet.sh @@ -17,7 +17,7 @@ EOF ) fn_print_dots "Sending Pushbullet alert" -pushbulletsend=$(curl -sSL -u """${pushbullettoken}"":" -H "Content-Type: application/json" -X POST -d """${json}""" "https://api.pushbullet.com/v2/pushes" | grep "error_code") +pushbulletsend=$(curl --connect-timeout 10 -sSL -u """${pushbullettoken}"":" -H "Content-Type: application/json" -X POST -d """${json}""" "https://api.pushbullet.com/v2/pushes" | grep "error_code") if [ -n "${pushbulletsend}" ]; then fn_print_fail_nl "Sending Pushbullet alert: ${pushbulletsend}" diff --git a/lgsm/functions/alert_pushover.sh b/lgsm/functions/alert_pushover.sh index 82ba0af05..848a2eea5 100755 --- a/lgsm/functions/alert_pushover.sh +++ b/lgsm/functions/alert_pushover.sh @@ -21,7 +21,7 @@ else alertpriority="0" fi -pushoversend=$(curl -sS -F token="${pushovertoken}" -F user="${pushoveruserkey}" -F html="1" -F sound="${alertsound}" -F priority="${alertpriority}" -F title="${alertemoji} ${alertsubject} ${alertemoji}" -F message=" Server name
${servername}

Message
${alertbody}

Game
${gamename}

Server IP
${alertip}:${port}

Hostname
${HOSTNAME}

More info
${alerturl}" "https://api.pushover.net/1/messages.json" | grep errors) +pushoversend=$(curl --connect-timeout 10 -sS -F token="${pushovertoken}" -F user="${pushoveruserkey}" -F html="1" -F sound="${alertsound}" -F priority="${alertpriority}" -F title="${alertemoji} ${alertsubject} ${alertemoji}" -F message=" Server name
${servername}

Message
${alertbody}

Game
${gamename}

Server IP
${alertip}:${port}

Hostname
${HOSTNAME}

More info
${alerturl}" "https://api.pushover.net/1/messages.json" | grep errors) if [ -n "${pushoversend}" ]; then fn_print_fail_nl "Sending Pushover alert: ${pushoversend}" diff --git a/lgsm/functions/alert_rocketchat.sh b/lgsm/functions/alert_rocketchat.sh index 505113918..e6d4cf5ce 100755 --- a/lgsm/functions/alert_rocketchat.sh +++ b/lgsm/functions/alert_rocketchat.sh @@ -42,7 +42,7 @@ EOF fn_print_dots "Sending Rocketchat alert" -rocketchatsend=$(curl -sSL -H "Content-Type:application/json" -X POST -d "$(echo -n "$json" | jq -c .)" "${rocketchatwebhook}") +rocketchatsend=$(curl --connect-timeout 10 -sSL -H "Content-Type:application/json" -X POST -d "$(echo -n "$json" | jq -c .)" "${rocketchatwebhook}") if [ -n "${rocketchatsend}" ]; then fn_print_ok_nl "Sending Rocketchat alert" diff --git a/lgsm/functions/alert_slack.sh b/lgsm/functions/alert_slack.sh index 0ea5a41f8..c3a82d529 100755 --- a/lgsm/functions/alert_slack.sh +++ b/lgsm/functions/alert_slack.sh @@ -67,7 +67,7 @@ EOF fn_print_dots "Sending Slack alert" -slacksend=$(curl -sSL -H "Content-Type: application/json" -X POST -d "$(echo -n "$json" | jq -c .)" "${slackwebhook}") +slacksend=$(curl --connect-timeout 10 -sSL -H "Content-Type: application/json" -X POST -d "$(echo -n "$json" | jq -c .)" "${slackwebhook}") if [ "${slacksend}" == "ok" ]; then fn_print_ok_nl "Sending Slack alert" diff --git a/lgsm/functions/alert_telegram.sh b/lgsm/functions/alert_telegram.sh index 64e5fcbb3..7b812246c 100755 --- a/lgsm/functions/alert_telegram.sh +++ b/lgsm/functions/alert_telegram.sh @@ -16,7 +16,7 @@ EOF ) fn_print_dots "Sending Telegram alert" -telegramsend=$(curl -sSL -H "Content-Type: application/json" -X POST -d """${json}""" ${curlcustomstring} "https://api.telegram.org/bot${telegramtoken}/sendMessage" | grep "error_code") +telegramsend=$(curl --connect-timeout 10 -sSL -H "Content-Type: application/json" -X POST -d """${json}""" ${curlcustomstring} "https://api.telegram.org/bot${telegramtoken}/sendMessage" | grep "error_code") if [ -n "${telegramsend}" ]; then fn_print_fail_nl "Sending Telegram alert: ${telegramsend}" diff --git a/lgsm/functions/command_update_linuxgsm.sh b/lgsm/functions/command_update_linuxgsm.sh index 37918be2d..7e0ec57b6 100755 --- a/lgsm/functions/command_update_linuxgsm.sh +++ b/lgsm/functions/command_update_linuxgsm.sh @@ -17,9 +17,9 @@ fn_script_log_info "Updating LinuxGSM" fn_print_dots "Selecting repo" fn_script_log_info "Selecting repo" # Select remotereponame -curl -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/linuxgsm.sh" 1>/dev/null +curl --connect-timeout 10 -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/linuxgsm.sh" 1>/dev/null if [ $? != "0" ]; then - curl -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/linuxgsm.sh" 1>/dev/null + curl --connect-timeout 10 -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/linuxgsm.sh" 1>/dev/null if [ $? != "0" ]; then fn_print_fail_nl "Selecting repo: Unable to to access GitHub or Bitbucket repositories" fn_script_log_fatal "Selecting repo: Unable to to access GitHub or Bitbucket repositories" @@ -36,9 +36,9 @@ fi # Check linuxsm.sh echo -en "checking ${remotereponame} linuxgsm.sh...\c" if [ "${remotereponame}" == "GitHub" ]; then - curl -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/linuxgsm.sh" 1>/dev/null + curl --connect-timeout 10 -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/linuxgsm.sh" 1>/dev/null else - curl -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/linuxgsm.sh" 1>/dev/null + curl --connect-timeout 10 -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/linuxgsm.sh" 1>/dev/null fi if [ $? != "0" ]; then fn_print_fail_eol_nl @@ -48,9 +48,9 @@ if [ $? != "0" ]; then fi if [ "${remotereponame}" == "GitHub" ]; then - tmp_script_diff=$(diff "${tmpdir}/linuxgsm.sh" <(curl -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/linuxgsm.sh")) + tmp_script_diff=$(diff "${tmpdir}/linuxgsm.sh" <(curl --connect-timeout 10 -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/linuxgsm.sh")) else - tmp_script_diff=$(diff "${tmpdir}/linuxgsm.sh" <(curl -s "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/linuxgsm.sh")) + tmp_script_diff=$(diff "${tmpdir}/linuxgsm.sh" <(curl --connect-timeout 10 -s "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/linuxgsm.sh")) fi if [ "${tmp_script_diff}" != "" ]; then @@ -116,9 +116,9 @@ fi echo -en "checking ${remotereponame} config _default.cfg...\c" fn_script_log_info "Checking ${remotereponame} config _default.cfg" if [ "${remotereponame}" == "GitHub" ]; then - curl -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg" 1>/dev/null + curl --connect-timeout 10 -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg" 1>/dev/null else - curl -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg" 1>/dev/null + curl --connect-timeout 10 -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg" 1>/dev/null fi if [ $? != "0" ]; then fn_print_fail_eol_nl @@ -128,9 +128,9 @@ if [ $? != "0" ]; then fi if [ "${remotereponame}" == "GitHub" ]; then - config_file_diff=$(diff "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" <(curl -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg")) + config_file_diff=$(diff "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" <(curl --connect-timeout 10 -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg")) else - config_file_diff=$(diff "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" <(curl -s "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg")) + config_file_diff=$(diff "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" <(curl --connect-timeout 10 -s "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg")) fi if [ "${config_file_diff}" != "" ]; then @@ -155,9 +155,9 @@ if [ -n "${functionsdir}" ]; then echo -en "checking ${remotereponame} module ${functionfile}...\c" github_file_url_dir="lgsm/functions" if [ "${remotereponame}" == "GitHub" ]; then - curl -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${functionfile}" 1>/dev/null + curl --connect-timeout 10 -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${functionfile}" 1>/dev/null else - curl -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/${github_file_url_dir}/${functionfile}" 1>/dev/null + curl --connect-timeout 10 -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/${github_file_url_dir}/${functionfile}" 1>/dev/null fi if [ $? != 0 ]; then fn_print_error_eol_nl @@ -174,9 +174,9 @@ if [ -n "${functionsdir}" ]; then else # compare file if [ "${remotereponame}" == "GitHub" ]; then - function_file_diff=$(diff "${functionsdir}/${functionfile}" <(curl -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${functionfile}")) + function_file_diff=$(diff "${functionsdir}/${functionfile}" <(curl --connect-timeout 10 -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${functionfile}")) else - function_file_diff=$(diff "${functionsdir}/${functionfile}" <(curl -s "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/${github_file_url_dir}/${functionfile}")) + function_file_diff=$(diff "${functionsdir}/${functionfile}" <(curl --connect-timeout 10 -s "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/${github_file_url_dir}/${functionfile}")) fi # results diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh index b5c92b3c1..ea20002a8 100755 --- a/lgsm/functions/core_dl.sh +++ b/lgsm/functions/core_dl.sh @@ -267,11 +267,11 @@ fn_fetch_file(){ echo -en "downloading ${local_filename}..." fn_sleep_time echo -en "\033[1K" - curlcmd=$(curl --progress-bar --fail -L -o "${local_filedir}/${local_filename}" "${fileurl}") + curlcmd=$(curl --connect-timeout 10 --progress-bar --fail -L -o "${local_filedir}/${local_filename}" "${fileurl}") echo -en "downloading ${local_filename}..." else echo -en "fetching ${fileurl_name} ${local_filename}...\c" - curlcmd=$(curl -s --fail -L -o "${local_filedir}/${local_filename}" "${fileurl}" 2>&1) + curlcmd=$(curl --connect-timeout 10 -s --fail -L -o "${local_filedir}/${local_filename}" "${fileurl}" 2>&1) fi local exitcode=$? diff --git a/lgsm/functions/info_distro.sh b/lgsm/functions/info_distro.sh index 725748311..53e8f4943 100755 --- a/lgsm/functions/info_distro.sh +++ b/lgsm/functions/info_distro.sh @@ -227,7 +227,7 @@ netlink=$(ethtool "${netint}" 2>/dev/null| grep Speed | awk '{print $2}') # External IP address if [ -z "${extip}" ]; then - extip=$(curl -s https://api.ipify.org 2>/dev/null) + extip=$(curl --connect-timeout 10 -s https://api.ipify.org 2>/dev/null) exitcode=$? # Should ifconfig.co return an error will use last known IP. if [ ${exitcode} -eq 0 ]; then @@ -264,11 +264,11 @@ if [ "$(command -v jq 2>/dev/null)" ]; then if [ "${steammaster}" == "true" ]; then # Will query server IP addresses first. for queryip in "${queryips[@]}"; do - masterserver="$(curl -m 3 -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${queryip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l 2>/dev/null)" + masterserver="$(curl --connect-timeout 10 -m 3 -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${queryip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l 2>/dev/null)" done # Should that not work it will try the external IP. if [ "${masterserver}" == "0" ]; then - masterserver="$(curl -m 3 -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${extip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l 2>/dev/null)" + masterserver="$(curl --connect-timeout 10 -m 3 -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${extip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l 2>/dev/null)" fi if [ "${masterserver}" == "0" ]; then displaymasterserver="false" diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh index 2e7e35cb2..f60d9b30f 100755 --- a/lgsm/functions/mods_list.sh +++ b/lgsm/functions/mods_list.sh @@ -68,21 +68,21 @@ sourcemoddownloadurl="https://www.sourcemod.net/latest.php?os=linux&version=${so sourcemodurl="${sourcemoddownloadurl}" # Steamworks steamworksscrapeurl="https://users.alliedmods.net/~kyles/builds/SteamWorks" -steamworkslatestfile=$(curl -sL ${steamworksscrapeurl} | grep -m 1 linux | cut -d '"' -f 4) +steamworkslatestfile=$(curl --connect-timeout 10 -sL ${steamworksscrapeurl} | grep -m 1 linux | cut -d '"' -f 4) steamworksdownloadurl="${steamworksscrapeurl}/${steamworkslatestfile}" steamworksurl="${steamworksdownloadurl}" # CS:GO Mods -get5lastbuild=$(curl -sL https://ci.splewis.net/job/get5/lastSuccessfulBuild/api/json | jq -r '.artifacts[]') +get5lastbuild=$(curl --connect-timeout 10 -sL https://ci.splewis.net/job/get5/lastSuccessfulBuild/api/json | jq -r '.artifacts[]') get5latestfile=$(echo -e "${get5lastbuild}" | jq -r '.fileName') get5latestfilepath=$(echo -e "${get5lastbuild}" | jq -r '.relativePath') get5url="https://ci.splewis.net/job/get5/lastSuccessfulBuild/artifact/${get5latestfilepath}" -csgopuglatest=$(curl -sL https://api.github.com/repos/splewis/csgo-pug-setup/releases/latest | jq '.assets[]') +csgopuglatest=$(curl --connect-timeout 10 -sL https://api.github.com/repos/splewis/csgo-pug-setup/releases/latest | jq '.assets[]') csgopuglatestfile=$(echo -e "${csgopuglatest}" | jq -r '.name') csgopuglatestlink=$(echo -e "${csgopuglatest}" | jq -r '.browser_download_url') # Oxide -oxiderustlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Rust/releases/latest | jq -r '.assets[]|select(.browser_download_url | contains("linux")) | .browser_download_url') -oxidehurtworldlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Hurtworld/releases/latest | jq -r '.assets[].browser_download_url') -oxidesdtdlatestlink=$(curl -sL https://api.github.com/repos/OxideMod/Oxide.SevenDaysToDie/releases/latest | jq -r '.assets[]|select(.browser_download_url | contains("linux")) | .browser_download_url' ) +oxiderustlatestlink=$(curl --connect-timeout 10 -sL https://api.github.com/repos/OxideMod/Oxide.Rust/releases/latest | jq -r '.assets[]|select(.browser_download_url | contains("linux")) | .browser_download_url') +oxidehurtworldlatestlink=$(curl --connect-timeout 10 -sL https://api.github.com/repos/OxideMod/Oxide.Hurtworld/releases/latest | jq -r '.assets[].browser_download_url') +oxidesdtdlatestlink=$(curl --connect-timeout 10 -sL https://api.github.com/repos/OxideMod/Oxide.SevenDaysToDie/releases/latest | jq -r '.assets[]|select(.browser_download_url | contains("linux")) | .browser_download_url' ) # Define mods information (required) @@ -160,4 +160,4 @@ mod_info_hwoxide=( MOD "hwoxide" "Oxide for Hurtworld" "${oxidehurtworldlatestli mod_info_sdtdoxide=( MOD "sdtdoxide" "Oxide for 7 Days To Die" "${oxidesdtdlatestlink}" "Oxide.SevenDaysToDie.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "7 Days To Die;" "NOTGAMES" "https://umod.org/games/7-days-to-die" "Allows for the use of plugins" ) # REQUIRED: Set all mods info into the global array -mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_base_amxx[@]}" "${mod_info_cs_amxx[@]}" "${mod_info_dod_amxx[@]}" "${mod_info_tfc_amxx[@]}" "${mod_info_ns_amxx[@]}" "${mod_info_ts_amxx[@]}" "${mod_info_metamodsource[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_pug[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" ) \ No newline at end of file +mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_base_amxx[@]}" "${mod_info_cs_amxx[@]}" "${mod_info_dod_amxx[@]}" "${mod_info_tfc_amxx[@]}" "${mod_info_ns_amxx[@]}" "${mod_info_ts_amxx[@]}" "${mod_info_metamodsource[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_pug[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" ) diff --git a/linuxgsm.sh b/linuxgsm.sh index 70a280a32..6c63b1244 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -99,7 +99,7 @@ fn_bootstrap_fetch_file(){ # Larger files show a progress bar. echo -en "fetching ${fileurl_name} ${local_filename}...\c" - curlcmd=$(curl -s --fail -L -o "${local_filedir}/${local_filename}" "${fileurl}" 2>&1) + curlcmd=$(curl --connect-timeout 10 -s --fail -L -o "${local_filedir}/${local_filename}" "${fileurl}" 2>&1) local exitcode=$? From b1d866d02371555731461558e10b581958150874 Mon Sep 17 00:00:00 2001 From: Christian Date: Mon, 30 Nov 2020 21:40:14 +0100 Subject: [PATCH 33/70] fix(samp): fix config change after installation (#3119) --- lgsm/functions/core_functions.sh | 5 +++++ lgsm/functions/fix.sh | 4 +++- lgsm/functions/fix_samp.sh | 33 ++++++++++++++++++++++++++++++++ lgsm/functions/install_config.sh | 7 ------- 4 files changed, 41 insertions(+), 8 deletions(-) create mode 100644 lgsm/functions/fix_samp.sh diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index 21ef3cbd1..2fc75f02f 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -430,6 +430,11 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } +fix_samp.sh(){ +functionfile="${FUNCNAME[0]}" +fn_fetch_function +} + fix_sdtd.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function diff --git a/lgsm/functions/fix.sh b/lgsm/functions/fix.sh index f92709f56..2e2931e41 100755 --- a/lgsm/functions/fix.sh +++ b/lgsm/functions/fix.sh @@ -91,7 +91,7 @@ fi # Fixes that are run on install only. if [ "${commandname}" == "INSTALL" ]; then - if [ "${shortname}" == "av" ]||[ "${shortname}" == "cmw" ]||[ "${shortname}" == "kf" ]||[ "${shortname}" == "kf2" ]||[ "${shortname}" == "onset" ]||[ "${shortname}" == "ro" ]||[ "${shortname}" == "ut2k4" ]||[ "${shortname}" == "ut" ]||[ "${shortname}" == "ut3" ]; then + if [ "${shortname}" == "av" ]||[ "${shortname}" == "cmw" ]||[ "${shortname}" == "kf" ]||[ "${shortname}" == "kf2" ]||[ "${shortname}" == "onset" ]||[ "${shortname}" == "ro" ]||[ "${shortname}" == "samp" ]||[ "${shortname}" == "ut2k4" ]||[ "${shortname}" == "ut" ]||[ "${shortname}" == "ut3" ]; then echo -e "" echo -e "Applying Post-Install Fixes" echo -e "=================================" @@ -105,6 +105,8 @@ if [ "${commandname}" == "INSTALL" ]; then fix_kf2.sh elif [ "${shortname}" == "ro" ]; then fix_ro.sh + elif [ "${shortname}" == "samp" ]; then + fix_samp.sh elif [ "${shortname}" == "ut2k4" ]; then fix_ut2k4.sh elif [ "${shortname}" == "ut" ]; then diff --git a/lgsm/functions/fix_samp.sh b/lgsm/functions/fix_samp.sh new file mode 100644 index 000000000..b69779019 --- /dev/null +++ b/lgsm/functions/fix_samp.sh @@ -0,0 +1,33 @@ +#!/bin/bash +# LinuxGSM fix_sfc.sh function +# Author: Christian Birk +# Website: https://linuxgsm.com +# Description: Resolves issue that the default rcon password is not changed + +functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" + +if [ -f "${servercfgfullpath}" ]; then + # check if default password is set "changeme" + currentpass=$(grep -E "^rcon_password" "${servercfgfullpath}" | sed 's/^rcon_password //' ) + defaultpass="changeme" + # check if default password is set + if [ "${currentpass}" == "${defaultpass}" ]; then + fixname="change default rcon password" + fn_fix_msg_start + fn_script_log_info "changing rcon/admin password." + random=$(tr -dc A-Za-z0-9_ < /dev/urandom | head -c 8 | xargs) + rconpass="admin${random}" + sed -i "s/rcon_password changeme/rcon_password ${rconpass}/g" "${servercfgfullpath}" + fn_fix_msg_end + fi + # check if the hostname is the default name + currenthostname=$(grep -E "^hostname" "${servercfgfullpath}" | sed 's/^hostname //') + defaulthostname="SA-MP 0.3 Server" + if [ "${currenthostname}" == "${defaulthostname}" ]; then + fixname="change default hostname" + fn_fix_msg_start + fn_script_log_info "changing default hostname to LinuxGSM" + sed -i "s/hostname ${defaulthostname}/hostname LinuxGSM/g" "${servercfgfullpath}" + fn_fix_msg_end + fi +fi diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index d512f5b68..bf701ebf1 100755 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -660,13 +660,6 @@ elif [ "${shortname}" == "rust" ]; then fn_fetch_default_config fn_default_config_remote fn_list_config_locations -elif [ "${shortname}" == "samp" ]; then - gamedirname="SanAndreasMultiplayer" - array_configs+=( server.cfg ) - fn_fetch_default_config - fn_default_config_remote - fn_set_config_vars - fn_list_config_locations elif [ "${shortname}" == "sol" ]; then gamedirname="Soldat" array_configs+=( soldat.ini ) From b513e8c8b81f7522bc568cfb425a9fdd23c428f6 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Tue, 1 Dec 2020 20:13:28 +0000 Subject: [PATCH 34/70] codacy changes --- lgsm/functions/mods_core.sh | 94 ++++++++++++++++++------------------- 1 file changed, 47 insertions(+), 47 deletions(-) diff --git a/lgsm/functions/mods_core.sh b/lgsm/functions/mods_core.sh index 535703430..66cc71d71 100755 --- a/lgsm/functions/mods_core.sh +++ b/lgsm/functions/mods_core.sh @@ -512,10 +512,10 @@ fn_mod_exist(){ fn_mod_required_fail_exist(){ modreq=$1 - # requires one parameter, the mod + # requires one parameter, the mod fn_script_log_fatal "${modreq}-files.txt is empty: unable to find ${modreq} installed" echo -en "* Unable to find '${modreq}' which is required prior to installing this mod..." - fn_print_fail_eol_nl + fn_print_fail_eol_nl core_exit.sh } @@ -527,32 +527,32 @@ fn_mod_liblist_gam_filenames(){ # default libraries case ${gamename} in - "Counter-Strike 1.6") + "Counter-Strike 1.6") moddll="mp.dll" modso="cs.so" moddylib="cs.dylib" ;; - "Day of Defeat") + "Day of Defeat") moddll="dod.dll" modso="dod.so" moddylib="dod.dylib" ;; - "Team Fortress Classic") + "Team Fortress Classic") moddll="tfc.dll" modso="tfc.so" moddylib="tfc.dylib" ;; - "Natural Selection") + "Natural Selection") moddll="ns.dll" modso="ns_i386.so" moddylib="" ;; - "The Specialists") + "The Specialists") moddll="mp.dll" modso="ts_i386.so" moddylib="" ;; - "Half-Life: Deathmatch") + "Half-Life: Deathmatch") moddll="hl.dll" modso="hl.so" moddylib="hl.dylib" @@ -570,32 +570,32 @@ fn_mod_install_liblist_gam_file(){ logentry="sed replace (dlls\\${moddll}) ${modinstalldir}/liblist.gam" echo -en "modifying gamedll in liblist.gam..." rpldll="s/dlls\\\\${moddll}/addons\/metamod\/dlls\/metamod.dll/g" - sed -i $rpldll ${modinstalldir}/liblist.gam - grep -q "addons/metamod/dlls/metamod.dll" ${modinstalldir}/liblist.gam + sed -i $rpldll "${modinstalldir}/liblist.gam" + grep -q "addons/metamod/dlls/metamod.dll" "${modinstalldir}/liblist.gam" exitcode=$? # if replacement back didn't happen, error out. if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl else - fn_script_log_pass $logentry - fn_print_ok_eol_nl + fn_script_log_pass ${logentry} + fn_print_ok_eol_nl fi # modify the liblist.gam file to initialize metamod logentry="sed replace (dlls\\${modso}) ${modinstalldir}/liblist.gam" echo -en "modifying gamedll_linux in liblist.gam..." rplso="s/dlls\/${modso}/addons\/metamod\/dlls\/metamod.so/g" - sed -i $rplso ${modinstalldir}/liblist.gam - grep -q "addons/metamod/dlls/metamod.so" ${modinstalldir}/liblist.gam + sed -i $rplso "${modinstalldir}/liblist.gam" + grep -q "addons/metamod/dlls/metamod.so" "${modinstalldir}/liblist.gam" exitcode=$? # if replacement back didn't happen, error out if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl else - fn_script_log_pass $logentry - fn_print_ok_eol_nl + fn_script_log_pass ${logentry} + fn_print_ok_eol_nl fi # mac os needs to be checked not all mods support mac os @@ -605,14 +605,14 @@ fn_mod_install_liblist_gam_file(){ echo -en "modifying gamedll_osx in liblist.gam..." rpldylib="s/dlls\/${moddylib}/addons\/metamod\/dlls\/metamod.dylib/g" sed -i $rpldylib ${modinstalldir}/liblist.gam - grep -q "addons/metamod/dlls/metamod.dylib" ${modinstalldir}/liblist.gam + grep -q "addons/metamod/dlls/metamod.dylib" "${modinstalldir}/liblist.gam" exitcode=$? # if replacement back didn't happen, error out. if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl else - fn_script_log_pass $logentry + fn_script_log_pass ${logentry} fn_print_ok_eol_nl fi fi @@ -628,15 +628,15 @@ fn_mod_remove_liblist_gam_file(){ logentry="sed replace (addons/metamod/dlls/metamod.dll) ${modinstalldir}/liblist.gam" echo -en "modifying gamedll in liblist.gam..." rpldll="s/addons\/metamod\/dlls\/metamod.dll/dlls\\\\${moddll}/g" - sed -i $rpldll ${modinstalldir}/liblist.gam - grep -q "${moddll}" ${modinstalldir}/liblist.gam + sed -i $rpldll "${modinstalldir}/liblist.gam" + grep -q "${moddll}" "${modinstalldir}/liblist.gam" exitcode=$? # if replacement back didn't happen, error out. if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl else - fn_script_log_pass $logentry + fn_script_log_pass ${logentry} fn_print_ok_eol_nl fi @@ -644,15 +644,15 @@ fn_mod_remove_liblist_gam_file(){ logentry="sed replace (addons/metamod/dlls/metamod.so) ${modinstalldir}/liblist.gam" echo -en "modifying gamedll_linux in liblist.gam..." rplso="s/addons\/metamod\/dlls\/metamod.so/dlls\/${modso}/g" - sed -i $rplso ${modinstalldir}/liblist.gam - grep -q "${modso}" ${modinstalldir}/liblist.gam + sed -i $rplso "${modinstalldir}/liblist.gam" + grep -q "${modso}" "${modinstalldir}/liblist.gam" exitcode=$? # if replacement back didn't happen, error out if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl else - fn_script_log_pass $logentry + fn_script_log_pass ${logentry} fn_print_ok_eol_nl fi @@ -662,15 +662,15 @@ fn_mod_remove_liblist_gam_file(){ logentry="sed replace (addons/metamod/dlls/metamod.dylib) ${modinstalldir}/liblist.gam" echo -en "modifying gamedll_osx in liblist.gam..." rpldylib="s/addons\/metamod\/dlls\/metamod.dylib/dlls\/${moddylib}/g" - sed -i $rpldylib ${modinstalldir}/liblist.gam - grep -q "${moddylib}" ${modinstalldir}/liblist.gam + sed -i $rpldylib "${modinstalldir}/liblist.gam" + grep -q "${moddylib}" "${modinstalldir}/liblist.gam" # if replacement back didn't happen, error out. exitcode=$? if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl else - fn_script_log_pass $logentry + fn_script_log_pass ${logentry} fn_print_ok_eol_nl fi fi @@ -683,30 +683,30 @@ fn_mod_install_amxmodx_file(){ # since it does exist, is the entry already in plugins.ini logentry="line (linux addons/amxmodx/dlls/amxmodx_mm_i386.so) inserted into ${modinstalldir}/addons/metamod/plugins.ini" echo -en "adding amxmodx_mm_i386.so in plugins.ini..." - grep -q "amxmodx_mm_i386.so" ${modinstalldir}/addons/metamod/plugins.ini + grep -q "amxmodx_mm_i386.so" "${modinstalldir}/addons/metamod/plugins.ini" exitcode=$? if [ "${exitcode}" != 0 ]; then # file exists but the entry does not, let's add it - echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" >> ${modinstalldir}/addons/metamod/plugins.ini + echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" >> "${modinstalldir}/addons/metamod/plugins.ini" exitcode=$? if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl else - fn_script_log_pass $logentry + fn_script_log_pass ${logentry} fn_print_ok_eol_nl fi fi - else + else # create new file and add the mod to it - echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" > ${modinstalldir}/addons/metamod/plugins.ini + echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" > "${modinstalldir}/addons/metamod/plugins.ini" exitcode=$? if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl core_exit.sh else - fn_script_log_pass $logentry + fn_script_log_pass ${logentry} fn_print_ok_eol_nl fi fi @@ -717,26 +717,26 @@ fn_mod_remove_amxmodx_file(){ # since it does exist, is the entry already in plugins.ini logentry="line (linux addons/amxmodx/dlls/amxmodx_mm_i386.so) removed from ${modinstalldir}/addons/metamod/plugins.ini" echo -en "removing amxmodx_mm_i386.so in plugins.ini..." - grep -q "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" ${modinstalldir}/addons/metamod/plugins.ini + grep -q "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" "${modinstalldir}/addons/metamod/plugins.ini" # iIs it found? If so remove it and clean up exitcode=$? if [ "${exitcode}" == 0 ]; then # delete the line we inserted - sed -i '/linux addons\/amxmodx\/dlls\/amxmodx_mm_i386.so/d' ${modinstalldir}/addons/metamod/plugins.ini + sed -i '/linux addons\/amxmodx\/dlls\/amxmodx_mm_i386.so/d' "${modinstalldir}/addons/metamod/plugins.ini" # remove empty lines - sed -i '/^$/d' ${modinstalldir}/addons/metamod/plugins.ini + sed -i '/^$/d' "${modinstalldir}/addons/metamod/plugins.ini" exitcode=$? if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal $logentry + fn_script_log_fatal ${logentry} fn_print_fail_eol_nl else - fn_script_log_pass $logentry + fn_script_log_pass ${logentry} fn_print_ok_eol_nl fi # if file is empty, remove it. if [ -f "${modinstalldir}/addons/metamod/plugins.ini" ]; then - rm ${modinstalldir}/addons/metamod/plugins.ini + rm "${modinstalldir}/addons/metamod/plugins.ini" fn_script_log_pass "file removed ${modinstalldir}/addons/metamod/plugins.ini because it was empty" fi fi From b19c9a0a4a29eda2db27546519d53b7ade15048e Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 4 Dec 2020 13:33:45 +0000 Subject: [PATCH 35/70] Revert "feat: improve uniqueness tmux session name (#3081)" This reverts commit 990edfd775ec0b3dcd091b3017d94cdb2b88ce6b. --- lgsm/functions/check_status.sh | 6 +----- lgsm/functions/command_console.sh | 2 +- lgsm/functions/command_start.sh | 6 +++--- lgsm/functions/command_stop.sh | 2 +- lgsm/functions/info_distro.sh | 2 +- 5 files changed, 7 insertions(+), 11 deletions(-) diff --git a/lgsm/functions/check_status.sh b/lgsm/functions/check_status.sh index a473aff73..178adcf6b 100755 --- a/lgsm/functions/check_status.sh +++ b/lgsm/functions/check_status.sh @@ -7,8 +7,4 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -if [ "$(tmux list-sessions -F "#{session_name}" 2>/dev/null)" == "${sessionname}${port}" ]; then - status=1; -else - status=0; -fi +status=$(tmux list-sessions -F "#{session_name}" 2>/dev/null | grep -Ecx "^${sessionname}") diff --git a/lgsm/functions/command_console.sh b/lgsm/functions/command_console.sh index 36ca7e092..0de924ea6 100755 --- a/lgsm/functions/command_console.sh +++ b/lgsm/functions/command_console.sh @@ -41,7 +41,7 @@ check_status.sh if [ "${status}" != "0" ]; then fn_print_ok_nl "Accessing console" fn_script_log_pass "Console accessed" - tmux attach-session -t "${sessionname}${port}" + tmux attach-session -t "${sessionname}" fn_print_ok_nl "Closing console" fn_script_log_pass "Console closed" else diff --git a/lgsm/functions/command_start.sh b/lgsm/functions/command_start.sh index 3ebbc8871..62160e187 100755 --- a/lgsm/functions/command_start.sh +++ b/lgsm/functions/command_start.sh @@ -36,7 +36,7 @@ fn_start_teamspeak3(){ # Used to allow update to detect JK2MV server version. fn_start_jk2(){ fn_start_tmux - tmux send -t "${sessionname}${port}" version ENTER > /dev/null 2>&1 + tmux send -t "${sessionname}" version ENTER > /dev/null 2>&1 } fn_start_tmux(){ @@ -72,7 +72,7 @@ fn_start_tmux(){ # Create lockfile date '+%s' > "${lockdir}/${selfname}.lock" cd "${executabledir}" || exit - tmux new-session -d -x "${sessionwidth}" -y "${sessionheight}" -s "${sessionname}${port}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${selfname}-tmux-error.tmp" + tmux new-session -d -x "${sessionwidth}" -y "${sessionheight}" -s "${sessionname}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${selfname}-tmux-error.tmp" # Create logfile. touch "${consolelog}" @@ -130,7 +130,7 @@ fn_start_tmux(){ echo -e "" echo -e "Command" echo -e "=================================" - echo -e "tmux new-session -d -s \"${sessionname} ${port}\" \"${executable} ${parms}\"" | tee -a "${lgsmlog}" + echo -e "tmux new-session -d -s \"${sessionname}\" \"${executable} ${parms}\"" | tee -a "${lgsmlog}" echo -e "" echo -e "Error" echo -e "=================================" diff --git a/lgsm/functions/command_stop.sh b/lgsm/functions/command_stop.sh index bde89dd13..439967fd0 100644 --- a/lgsm/functions/command_stop.sh +++ b/lgsm/functions/command_stop.sh @@ -15,7 +15,7 @@ fn_stop_graceful_ctrlc(){ fn_print_dots "Graceful: CTRL+c" fn_script_log_info "Graceful: CTRL+c" # Sends quit. - tmux send-keys -t "${sessionname}${port}" C-c > /dev/null 2>&1 + tmux send-keys -t "${sessionname}" C-c > /dev/null 2>&1 # Waits up to 30 seconds giving the server time to shutdown gracefuly. for seconds in {1..30}; do check_status.sh diff --git a/lgsm/functions/info_distro.sh b/lgsm/functions/info_distro.sh index 53e8f4943..11da3cc63 100755 --- a/lgsm/functions/info_distro.sh +++ b/lgsm/functions/info_distro.sh @@ -9,7 +9,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" ### Game Server pid if [ "${status}" == "1" ]; then - gameserverpid=$(tmux list-sessions -F "#{session_name} #{pane_pid}" | grep "^${sessionname}${port}" | awk '{print $NF}') + gameserverpid=$(tmux list-sessions -F "#{session_name} #{pane_pid}" | grep "^${sessionname} " | awk '{print $NF}') fi ### Distro information From 4659f9894170887bb72b2c5ff6a76c14210eefaf Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 4 Dec 2020 14:01:56 +0000 Subject: [PATCH 36/70] codacy codacy --- lgsm/functions/mods_core.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lgsm/functions/mods_core.sh b/lgsm/functions/mods_core.sh index 66cc71d71..47dac4b78 100755 --- a/lgsm/functions/mods_core.sh +++ b/lgsm/functions/mods_core.sh @@ -575,10 +575,10 @@ fn_mod_install_liblist_gam_file(){ exitcode=$? # if replacement back didn't happen, error out. if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl else - fn_script_log_pass ${logentry} + fn_script_log_pass "${logentry}" fn_print_ok_eol_nl fi @@ -591,10 +591,10 @@ fn_mod_install_liblist_gam_file(){ exitcode=$? # if replacement back didn't happen, error out if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl else - fn_script_log_pass ${logentry} + fn_script_log_pass "${logentry}" fn_print_ok_eol_nl fi @@ -604,7 +604,7 @@ fn_mod_install_liblist_gam_file(){ logentry="sed replace (dlls\\${moddylib}) ${modinstalldir}/liblist.gam" echo -en "modifying gamedll_osx in liblist.gam..." rpldylib="s/dlls\/${moddylib}/addons\/metamod\/dlls\/metamod.dylib/g" - sed -i $rpldylib ${modinstalldir}/liblist.gam + sed -i $rpldylib "${modinstalldir}/liblist.gam" grep -q "addons/metamod/dlls/metamod.dylib" "${modinstalldir}/liblist.gam" exitcode=$? # if replacement back didn't happen, error out. From b7c8f9e5485fdafa6828ee1340ac469785dc4071 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 4 Dec 2020 14:21:06 +0000 Subject: [PATCH 37/70] v20.6.0 --- lgsm/functions/core_functions.sh | 2 +- linuxgsm.sh | 2 +- tests/tests_fctrserver.sh | 2 +- tests/tests_jc2server.sh | 2 +- tests/tests_mcserver.sh | 2 +- tests/tests_ts3server.sh | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index 2fc75f02f..5250e7080 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -7,7 +7,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -modulesversion="v20.5.1" +modulesversion="v20.6.0" # Core diff --git a/linuxgsm.sh b/linuxgsm.sh index 6c63b1244..3c105f4a5 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.1" +version="v20.6.0" shortname="core" gameservername="core" commandname="CORE" diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh index afb2f8ded..450c2bcf7 100644 --- a/tests/tests_fctrserver.sh +++ b/tests/tests_fctrserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.1" +version="v20.6.0" shortname="fctr" gameservername="fctrserver" commandname="CORE" diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh index 34cea40e4..15261bf33 100644 --- a/tests/tests_jc2server.sh +++ b/tests/tests_jc2server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.1" +version="v20.6.0" shortname="jc2" gameservername="jc2server" commandname="CORE" diff --git a/tests/tests_mcserver.sh b/tests/tests_mcserver.sh index f253df31a..e501772fb 100644 --- a/tests/tests_mcserver.sh +++ b/tests/tests_mcserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.1" +version="v20.6.0" shortname="mc" gameservername="mcserver" commandname="CORE" diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh index cf5d5ebd1..0243bf580 100644 --- a/tests/tests_ts3server.sh +++ b/tests/tests_ts3server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.5.1" +version="v20.6.0" shortname="ts3" gameservername="ts3server" commandname="CORE" From 0b38915f03eb6284654bf360fcc3a19ee10310dd Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 4 Dec 2020 14:28:25 +0000 Subject: [PATCH 38/70] feat:add version and port details to lockfile --- lgsm/functions/command_debug.sh | 2 ++ lgsm/functions/command_monitor.sh | 6 ++++-- lgsm/functions/command_start.sh | 2 ++ tests/tests_fctrserver.sh | 2 ++ tests/tests_jc2server.sh | 2 ++ tests/tests_mcserver.sh | 2 ++ tests/tests_ts3server.sh | 2 ++ 7 files changed, 16 insertions(+), 2 deletions(-) diff --git a/lgsm/functions/command_debug.sh b/lgsm/functions/command_debug.sh index 059cf539a..fe2e8a38e 100755 --- a/lgsm/functions/command_debug.sh +++ b/lgsm/functions/command_debug.sh @@ -95,6 +95,8 @@ fn_print_ok_nl "Starting debug" # Create lockfile. date '+%s' > "${lockdir}/${selfname}.lock" +echo "${version}" >> "${lockdir}/${selfname}.lock" +echo "${port}" >> "${lockdir}/${selfname}.lock" fn_script_log_info "Lockfile generated" fn_script_log_info "${lockdir}/${selfname}.lock" diff --git a/lgsm/functions/command_monitor.sh b/lgsm/functions/command_monitor.sh index 80d3f43f0..28cc70fab 100755 --- a/lgsm/functions/command_monitor.sh +++ b/lgsm/functions/command_monitor.sh @@ -25,8 +25,10 @@ fn_monitor_check_lockfile(){ fi # Fix if lockfile is not unix time or contains letters - if [ -f "${lockdir}/${selfname}.lock" ]&&[[ "$(cat "${lockdir}/${selfname}.lock")" =~ [A-Za-z] ]]; then - date '+%s' > "${lockdir}/${selfname}.lock" + if [ -f "${lockdir}/${selfname}.lock" ]&&[[ "$(head -n 1 "${lockdir}/${selfname}.lock")" =~ [A-Za-z] ]]; then + date '+%s' > "${lockdir}/${selfname}.lock" + echo "${version}" >> "${lockdir}/${selfname}.lock" + echo "${port}" >> "${lockdir}/${selfname}.lock" fi } diff --git a/lgsm/functions/command_start.sh b/lgsm/functions/command_start.sh index 62160e187..897cc90aa 100755 --- a/lgsm/functions/command_start.sh +++ b/lgsm/functions/command_start.sh @@ -71,6 +71,8 @@ fn_start_tmux(){ # Create lockfile date '+%s' > "${lockdir}/${selfname}.lock" + echo "${version}" >> "${lockdir}/${selfname}.lock" + echo "${port}" >> "${lockdir}/${selfname}.lock" cd "${executabledir}" || exit tmux new-session -d -x "${sessionwidth}" -y "${sessionheight}" -s "${sessionname}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${selfname}-tmux-error.tmp" diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh index 450c2bcf7..2c08922c2 100644 --- a/tests/tests_fctrserver.sh +++ b/tests/tests_fctrserver.sh @@ -938,6 +938,8 @@ requiredstatus="OFFLINE" fn_setstatus fn_print_info_nl "creating lockfile." date '+%s' > "${lockdir}/${selfname}.lock" +echo "${version}" >> "${lockdir}/${selfname}.lock" +echo "${port}" >> "${lockdir}/${selfname}.lock" ( exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log" BASH_XTRACEFD="5" diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh index 15261bf33..39746de57 100644 --- a/tests/tests_jc2server.sh +++ b/tests/tests_jc2server.sh @@ -1097,6 +1097,8 @@ requiredstatus="OFFLINE" fn_setstatus fn_print_info_nl "creating lockfile." date '+%s' > "${lockdir}/${selfname}.lock" +echo "${version}" >> "${lockdir}/${selfname}.lock" +echo "${port}" >> "${lockdir}/${selfname}.lock" ( exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log" BASH_XTRACEFD="5" diff --git a/tests/tests_mcserver.sh b/tests/tests_mcserver.sh index e501772fb..221e11856 100644 --- a/tests/tests_mcserver.sh +++ b/tests/tests_mcserver.sh @@ -970,6 +970,8 @@ requiredstatus="OFFLINE" fn_setstatus fn_print_info_nl "creating lockfile." date '+%s' > "${lockdir}/${selfname}.lock" +echo "${version}" >> "${lockdir}/${selfname}.lock" +echo "${port}" >> "${lockdir}/${selfname}.lock" ( exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log" BASH_XTRACEFD="5" diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh index 0243bf580..be72227f1 100644 --- a/tests/tests_ts3server.sh +++ b/tests/tests_ts3server.sh @@ -937,6 +937,8 @@ requiredstatus="OFFLINE" fn_setstatus fn_print_info_nl "creating lockfile." date '+%s' > "${lockdir}/${selfname}.lock" +echo "${version}" >> "${lockdir}/${selfname}.lock" +echo "${port}" >> "${lockdir}/${selfname}.lock" ( exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log" BASH_XTRACEFD="5" From e405e84b0f6e90a11b3ee8e00a2559a13177d401 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 4 Dec 2020 20:56:14 +0000 Subject: [PATCH 39/70] updated PVR _default.cfg --- .../config-lgsm/pvrserver/_default.cfg | 45 +++++++++++-------- 1 file changed, 27 insertions(+), 18 deletions(-) diff --git a/lgsm/config-default/config-lgsm/pvrserver/_default.cfg b/lgsm/config-default/config-lgsm/pvrserver/_default.cfg index f51bd9ea4..0177b2a95 100644 --- a/lgsm/config-default/config-lgsm/pvrserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pvrserver/_default.cfg @@ -1,27 +1,33 @@ ################################## ######## Default Settings ######## ################################## -# DO NOT EDIT WILL BE OVERWRITTEN! -# Copy settings from here and use them in either -# common.cfg - applies settings to every instance -# [instance].cfg - applies settings to a specific instance +# DO NOT EDIT, ANY CHANGES WILL BE OVERWRITTEN! +# Copy settings from here and use them in either: +# common.cfg - applies settings to every instance. +# [instance].cfg - applies settings to a specific instance. -#### Server Settings #### +#### Game Server Settings #### -## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters +## Predefined Parameters | https://docs.linuxgsm.com/configuration/start-parameters ip="0.0.0.0" port="7777" # Maps: bridge, datacenter, sand defaultmap="datacenter" -## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters +## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters fn_parms(){ parms="${defaultmap} -log -MultiHome=${ip} -Port=${port}" } #### LinuxGSM Settings #### +## LinuxGSM Stats +# Send useful stats to LinuxGSM developers. +# https://docs.linuxgsm.com/configuration/linuxgsm-stats +# (on|off) +stats="off" + ## Notification Alerts # (on|off) @@ -30,8 +36,6 @@ displayip="" # More info | https://docs.linuxgsm.com/alerts#more-info postalert="off" -postdays="7" -posttarget="https://hastebin.com" # Discord Alerts | https://docs.linuxgsm.com/alerts/discord discordalert="off" @@ -63,6 +67,7 @@ channeltag="" # Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover pushoveralert="off" pushovertoken="accesstoken" +pushoveruserkey="userkey" # Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat rocketchatalert="off" @@ -74,8 +79,8 @@ slackalert="off" slackwebhook="webhook" # Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram -# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". -# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". telegramalert="off" telegramtoken="accesstoken" telegramchatid="" @@ -97,12 +102,12 @@ logdays="7" # Query delay time querydelay="1" -#### LinuxGSM Advanced Settings #### - -# ANSI Colors +## ANSI Colors | https://docs.linuxgsm.com/features/ansi-colors ansi="on" -# Message Display Time +#### Advanced Settings #### + +## Message Display Time | https://docs.linuxgsm.com/features/message-display-time sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd @@ -130,14 +135,18 @@ stopmode="2" ## Query mode # 1: session only -# 2: gamedig + gsquery +# 2: gamedig (gsquery fallback) # 3: gamedig # 4: gsquery # 5: tcp querymode="1" querytype="" -## LinuxGSM Server Details +## Console type +consoleverbose="no" +consoleinteract="no" + +## Game Server Details # Do not edit gamename="Pavlov VR" engine="unreal4" @@ -146,7 +155,7 @@ glibc="2.17" #### Directories #### # Edit with care -## Server Specific Directories +## Game Server Directories systemdir="${serverfiles}/Pavlov" executabledir="${systemdir}/Binaries/Linux" executable="./PavlovServer" From 6bf2351a77953dd7b9730419e2a7128cb514da35 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 4 Dec 2020 21:24:01 +0000 Subject: [PATCH 40/70] code tidy codacy --- lgsm/functions/core_dl.sh | 4 ++-- lgsm/functions/install_config.sh | 2 +- lgsm/functions/mods_core.sh | 14 +++++++------- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh index ea20002a8..03ff54383 100755 --- a/lgsm/functions/core_dl.sh +++ b/lgsm/functions/core_dl.sh @@ -377,7 +377,7 @@ fn_fetch_file_github(){ fn_fetch_config(){ github_file_url_dir="${1}" github_file_url_name="${2}" - # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" @@ -425,7 +425,7 @@ fn_fetch_function(){ fn_update_function(){ github_file_url_dir="lgsm/functions" github_file_url_name="${functionfile}" - # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. + # If master branch will currently running LinuxGSM version to prevent "version mixing". This is ignored if a fork. if [ "${githubbranch}" == "master" ]&&[ "${githubuser}" == "GameServerManager" ]&&[ "${commandname}" != "UPDATE-LGSM" ]; then remote_fileurl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${version}/${github_file_url_dir}/${github_file_url_name}" remote_fileurl_backup="https://bitbucket.org/${githubuser}/${githubrepo}/raw/${version}/${github_file_url_dir}/${github_file_url_name}" diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index bf701ebf1..fbff9dbbb 100755 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -576,7 +576,7 @@ elif [ "${shortname}" == "mumble" ]; then fn_fetch_default_config fn_default_config_remote fn_list_config_locations -elif [ "${gamename}" == "Pavlov VR" ]; then +elif [ "${shortname}" == "pvr" ]; then gamedirname="PavlovVR" fn_check_cfgdir array_configs+=( Game.ini ) diff --git a/lgsm/functions/mods_core.sh b/lgsm/functions/mods_core.sh index 47dac4b78..010ff109e 100755 --- a/lgsm/functions/mods_core.sh +++ b/lgsm/functions/mods_core.sh @@ -609,7 +609,7 @@ fn_mod_install_liblist_gam_file(){ exitcode=$? # if replacement back didn't happen, error out. if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl else fn_script_log_pass ${logentry} @@ -633,7 +633,7 @@ fn_mod_remove_liblist_gam_file(){ exitcode=$? # if replacement back didn't happen, error out. if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl else fn_script_log_pass ${logentry} @@ -649,7 +649,7 @@ fn_mod_remove_liblist_gam_file(){ exitcode=$? # if replacement back didn't happen, error out if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl else fn_script_log_pass ${logentry} @@ -667,7 +667,7 @@ fn_mod_remove_liblist_gam_file(){ # if replacement back didn't happen, error out. exitcode=$? if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl else fn_script_log_pass ${logentry} @@ -690,7 +690,7 @@ fn_mod_install_amxmodx_file(){ echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" >> "${modinstalldir}/addons/metamod/plugins.ini" exitcode=$? if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl else fn_script_log_pass ${logentry} @@ -702,7 +702,7 @@ fn_mod_install_amxmodx_file(){ echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" > "${modinstalldir}/addons/metamod/plugins.ini" exitcode=$? if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl core_exit.sh else @@ -727,7 +727,7 @@ fn_mod_remove_amxmodx_file(){ sed -i '/^$/d' "${modinstalldir}/addons/metamod/plugins.ini" exitcode=$? if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal ${logentry} + fn_script_log_fatal "${logentry}" fn_print_fail_eol_nl else fn_script_log_pass ${logentry} From 9254d820b0144d9d2199c6cc8d76bbc1780daae7 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sat, 5 Dec 2020 11:17:14 +0000 Subject: [PATCH 41/70] fix(monitor):correct monitor not picking up date from lock file --- lgsm/functions/command_monitor.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lgsm/functions/command_monitor.sh b/lgsm/functions/command_monitor.sh index 28cc70fab..edc101012 100755 --- a/lgsm/functions/command_monitor.sh +++ b/lgsm/functions/command_monitor.sh @@ -108,12 +108,12 @@ for queryattempt in {1..5}; do fn_print_querying_eol fn_script_log_info "Querying port: ${querymethod}: ${queryip}:${queryport} : ${queryattempt} : QUERYING" # querydelay - if [ "$(cat "${lockdir}/${selfname}.lock")" -gt "$(date "+%s" -d "${querydelay} mins ago")" ]; then + if [ "$(head -n 1 "${lockdir}/${selfname}.lock")" -gt "$(date "+%s" -d "${querydelay} mins ago")" ]; then fn_print_ok "Querying port: ${querymethod}: ${ip}:${queryport} : ${totalseconds}/${queryattempt}: " fn_print_delay_eol_nl fn_script_log_info "Querying port: ${querymethod}: ${ip}:${queryport} : ${queryattempt} : DELAY" fn_script_log_info "Query bypassed: ${gameservername} started less than ${querydelay} minutes ago" - fn_script_log_info "Server started: $(date -d @$(cat "${lockdir}/${selfname}.lock"))" + fn_script_log_info "Server started: $(date -d @$(head -n 1 "${lockdir}/${selfname}.lock"))" fn_script_log_info "Current time: $(date)" monitorpass=1 core_exit.sh From db559aabe0ed1d2e97cb1a7ac2bc99d028b9d4d0 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sat, 5 Dec 2020 11:17:54 +0000 Subject: [PATCH 42/70] v20.6.1 --- lgsm/functions/core_functions.sh | 2 +- linuxgsm.sh | 2 +- tests/tests_fctrserver.sh | 2 +- tests/tests_jc2server.sh | 2 +- tests/tests_mcserver.sh | 2 +- tests/tests_ts3server.sh | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index 5250e7080..b02084256 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -7,7 +7,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -modulesversion="v20.6.0" +modulesversion="v20.6.1" # Core diff --git a/linuxgsm.sh b/linuxgsm.sh index 3c105f4a5..18cd88326 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.0" +version="v20.6.1" shortname="core" gameservername="core" commandname="CORE" diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh index 2c08922c2..1730f7ba1 100644 --- a/tests/tests_fctrserver.sh +++ b/tests/tests_fctrserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.0" +version="v20.6.1" shortname="fctr" gameservername="fctrserver" commandname="CORE" diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh index 39746de57..18e5f964b 100644 --- a/tests/tests_jc2server.sh +++ b/tests/tests_jc2server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.0" +version="v20.6.1" shortname="jc2" gameservername="jc2server" commandname="CORE" diff --git a/tests/tests_mcserver.sh b/tests/tests_mcserver.sh index 221e11856..8aa7f73c3 100644 --- a/tests/tests_mcserver.sh +++ b/tests/tests_mcserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.0" +version="v20.6.1" shortname="mc" gameservername="mcserver" commandname="CORE" diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh index be72227f1..7c5212f40 100644 --- a/tests/tests_ts3server.sh +++ b/tests/tests_ts3server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.0" +version="v20.6.1" shortname="ts3" gameservername="ts3server" commandname="CORE" From 67e08ba84ffa300dfa9974bd6f62f66d6d0e4d75 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 18 Dec 2020 22:10:18 +0000 Subject: [PATCH 43/70] fix(update): fix broken branch selection. (#3130) This change fixes the update command for those on public branches. add fix to core_dl.sh --- lgsm/functions/core_dl.sh | 6 +++--- lgsm/functions/update_steamcmd.sh | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh index 03ff54383..35b5e008b 100755 --- a/lgsm/functions/core_dl.sh +++ b/lgsm/functions/core_dl.sh @@ -61,7 +61,7 @@ fn_dl_steamcmd(){ # If using a specific branch. if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" -beta "${branch}" -betapassword "${betapassword}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" - elif [ -n "${branch}" ]; then + elif [ -n "${branch}" ]&&[ "${branch}" != "public" ]; then ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" -beta "${branch}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" else ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" @@ -70,7 +70,7 @@ fn_dl_steamcmd(){ elif [ "${shortname}" == "ac" ]||[ "${shortname}" == "jk2" ]; then if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then ${unbuffer} ${steamcmdcommand} +@sSteamCmdForcePlatformType windows +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" -betapassword "${betapassword}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" - elif [ -n "${branch}" ]; then + elif [ -n "${branch}" ]&&[ "${branch}" != "public" ]; then ${unbuffer} ${steamcmdcommand} +@sSteamCmdForcePlatformType windows +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" else ${unbuffer} ${steamcmdcommand} +@sSteamCmdForcePlatformType windows +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" @@ -79,7 +79,7 @@ fn_dl_steamcmd(){ else if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" -betapassword "${betapassword}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" - elif [ -n "${branch}" ]; then + elif [ -n "${branch}" ]&&[ "${branch}" != "public" ]; then ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" else ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" diff --git a/lgsm/functions/update_steamcmd.sh b/lgsm/functions/update_steamcmd.sh index 28496f7d7..8df7b0563 100644 --- a/lgsm/functions/update_steamcmd.sh +++ b/lgsm/functions/update_steamcmd.sh @@ -42,7 +42,7 @@ fn_update_steamcmd_remotebuild(){ if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" -beta "${branch}" -betapassword "${betapassword}" +quit | sed '1,/branches/d' | sed "1,/${branch}/d" | grep -m 1 buildid | tr -cd '[:digit:]') - elif [ -n "${branch}" ]; then + elif [ -n "${branch}" ]&&[ "${branch}" != "public" ]; then remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" -beta "${branch}" +quit | sed '1,/branches/d' | sed "1,/${branch}/d" | grep -m 1 buildid | tr -cd '[:digit:]') else remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" +quit | sed '1,/branches/d' | sed "1,/${branch}/d" | grep -m 1 buildid | tr -cd '[:digit:]') From 871af8adc99b98acfbf6f437868fe662517f4de8 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 18 Dec 2020 22:14:04 +0000 Subject: [PATCH 44/70] release v20.6.2 --- lgsm/functions/core_functions.sh | 2 +- tests/tests_fctrserver.sh | 2 +- tests/tests_jc2server.sh | 2 +- tests/tests_mcserver.sh | 2 +- tests/tests_ts3server.sh | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index b02084256..e4da9830f 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -7,7 +7,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -modulesversion="v20.6.1" +modulesversion="v20.6.2" # Core diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh index 1730f7ba1..1afa2f60a 100644 --- a/tests/tests_fctrserver.sh +++ b/tests/tests_fctrserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.1" +version="v20.6.2" shortname="fctr" gameservername="fctrserver" commandname="CORE" diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh index 18e5f964b..aab73228d 100644 --- a/tests/tests_jc2server.sh +++ b/tests/tests_jc2server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.1" +version="v20.6.2" shortname="jc2" gameservername="jc2server" commandname="CORE" diff --git a/tests/tests_mcserver.sh b/tests/tests_mcserver.sh index 8aa7f73c3..edfc620b3 100644 --- a/tests/tests_mcserver.sh +++ b/tests/tests_mcserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.1" +version="v20.6.2" shortname="mc" gameservername="mcserver" commandname="CORE" diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh index 7c5212f40..620eb43ee 100644 --- a/tests/tests_ts3server.sh +++ b/tests/tests_ts3server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.1" +version="v20.6.2" shortname="ts3" gameservername="ts3server" commandname="CORE" From 37d9d8e748809bc876fb16ac319d7145f00cc604 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 18 Dec 2020 22:15:31 +0000 Subject: [PATCH 45/70] release v20.6.2 --- linuxgsm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linuxgsm.sh b/linuxgsm.sh index 18cd88326..4815e86e3 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v20.6.1" +version="v20.6.2" shortname="core" gameservername="core" commandname="CORE" From 05e236f27ff16ac754f909af4226b533b771f2f7 Mon Sep 17 00:00:00 2001 From: unknowntrojan <14975032+unknowntrojan@users.noreply.github.com> Date: Fri, 25 Dec 2020 15:13:51 +0100 Subject: [PATCH 46/70] fix(stop) stop will clear tmux text before entering stop command (#3142) Tmux will ENTER before using stop command to clear any text entered in teh console --- lgsm/functions/command_stop.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/command_stop.sh b/lgsm/functions/command_stop.sh index 439967fd0..6fe06e4ef 100644 --- a/lgsm/functions/command_stop.sh +++ b/lgsm/functions/command_stop.sh @@ -43,7 +43,7 @@ fn_stop_graceful_cmd(){ fn_print_dots "Graceful: sending \"${1}\"" fn_script_log_info "Graceful: sending \"${1}\"" # Sends specific stop command. - tmux send -t "${sessionname}" "${1}" ENTER > /dev/null 2>&1 + tmux send -t "${sessionname}" ENTER "${1}" ENTER > /dev/null 2>&1 # Waits up to ${seconds} seconds giving the server time to shutdown gracefully. for ((seconds=1; seconds<=${2}; seconds++)); do check_status.sh From dc6b0378bccea31b576922b243a58349bccfc069 Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 27 Dec 2020 00:32:00 +0100 Subject: [PATCH 47/70] fix(update): redo steamcmd update part for new behavoir (#3139) Co-authored-by: Daniel Gibbs --- lgsm/functions/update_steamcmd.sh | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/lgsm/functions/update_steamcmd.sh b/lgsm/functions/update_steamcmd.sh index 8df7b0563..b7238daf3 100644 --- a/lgsm/functions/update_steamcmd.sh +++ b/lgsm/functions/update_steamcmd.sh @@ -40,13 +40,8 @@ fn_update_steamcmd_remotebuild(){ find "${HOME}" -type f -name "appinfo.vdf" -exec rm -f {} \; fi - if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then - remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" -beta "${branch}" -betapassword "${betapassword}" +quit | sed '1,/branches/d' | sed "1,/${branch}/d" | grep -m 1 buildid | tr -cd '[:digit:]') - elif [ -n "${branch}" ]&&[ "${branch}" != "public" ]; then - remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" -beta "${branch}" +quit | sed '1,/branches/d' | sed "1,/${branch}/d" | grep -m 1 buildid | tr -cd '[:digit:]') - else - remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" +quit | sed '1,/branches/d' | sed "1,/${branch}/d" | grep -m 1 buildid | tr -cd '[:digit:]') - fi + # password for branch not needed to check the buildid + remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" +quit | sed -e '/"branches"/,/^}/!d' | sed -n "/\"${branch}\"/,/}/p" | grep -m 1 buildid | tr -cd '[:digit:]') if [ "${firstcommandname}" != "INSTALL" ]; then fn_print_dots "Checking remote build: ${remotelocation}" From 55b3bbec6e4072cb56fa729212145d977dcbbe12 Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 27 Dec 2020 00:33:37 +0100 Subject: [PATCH 48/70] fix(bmdm): add missing dependency ncurses libs (#3138) Co-authored-by: Daniel Gibbs --- lgsm/functions/check_deps.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 7a43e2f3a..80d33cad9 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -385,6 +385,9 @@ fn_deps_build_debian(){ # Battlefield 1942 elif [ "${shortname}" == "bf1942" ]; then array_deps_required+=( libncurses5:i386 libtinfo5:i386 ) + # Black Mesa: Death Match + elif [ "${shortname}" == "bmdm" ]; then + array_deps_required+=( libncurses5:i386 ) # Counter-Strike: Source, Garry's Mod, No More Room in Hell, Source Forts Classic, Zombie Master Reborn and Zombie Panic: Source elif [ "${shortname}" == "css" ]||[ "${shortname}" == "gmod" ]||[ "${shortname}" == "nmrih" ]||[ "${shortname}" == "sfc" ]||[ "${shortname}" == "zmr" ]||[ "${shortname}" == "zps" ]; then if [ "${arch}" == "x86_64" ]; then @@ -501,8 +504,8 @@ fn_deps_build_redhat(){ # Battlefield: Vietnam elif [ "${shortname}" == "bfv" ]; then array_deps_required+=( compat-libstdc++-33.i686 glibc.i686 ) - # Battlefield 1942, Counter-Strike: Source, Garry's Mod, No More Room in Hell, Source Forts Classic, Zombie Master Reborn and Zombie Panic: Source - elif [ "${shortname}" == "bf1942" ]||[ "${shortname}" == "css" ]||[ "${shortname}" == "gmod" ]||[ "${shortname}" == "nmrih" ]||[ "${shortname}" == "sfc" ]||[ "${shortname}" == "zmr" ]||[ "${shortname}" == "zps" ]; then + # Battlefield 1942, Black Mesa: Deathmatch, Counter-Strike: Source, Garry's Mod, No More Room in Hell, Source Forts Classic, Zombie Master Reborn and Zombie Panic: Source + elif [ "${shortname}" == "bf1942" ]||[ "${shortname}" == "bmdm" ]||[ "${shortname}" == "css" ]||[ "${shortname}" == "gmod" ]||[ "${shortname}" == "nmrih" ]||[ "${shortname}" == "sfc" ]||[ "${shortname}" == "zmr" ]||[ "${shortname}" == "zps" ]; then array_deps_required+=( ncurses-libs.i686 ) # Brainbread 2, Don't Starve Together & Team Fortress 2 elif [ "${shortname}" == "bb2" ]||[ "${shortname}" == "dst" ]||[ "${shortname}" == "tf2" ]; then From 5d58dcf8e70eae0c18a82d75f6797da613dce00e Mon Sep 17 00:00:00 2001 From: Christian Date: Tue, 29 Dec 2020 11:46:08 +0100 Subject: [PATCH 49/70] fix(minecraft): fix java ram assignment (#3147) --- lgsm/config-default/config-lgsm/mcserver/_default.cfg | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/mcserver/_default.cfg b/lgsm/config-default/config-lgsm/mcserver/_default.cfg index b78195e3e..81e833d6e 100644 --- a/lgsm/config-default/config-lgsm/mcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mcserver/_default.cfg @@ -14,6 +14,7 @@ javaram="1024" # -Xmx$1024M ## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters fn_parms(){ parms="nogui" +executable="java -Xmx${javaram}M -jar ${jarfile}" } ## Release Settings | https://docs.linuxgsm.com/game-servers/minecraft#release-settings @@ -151,7 +152,8 @@ glibc="null" ## Game Server Directories systemdir="${serverfiles}" executabledir="${serverfiles}" -executable="java -Xmx${javaram}M -jar ${serverfiles}/minecraft_server.jar" +jarfile="${serverfiles}/minecraft_server.jar" +executable="${jarfile}" servercfgdir="${systemdir}" servercfg="server.properties" servercfgdefault="server.properties" From d0ecddfcbb6b76b5af42d501c082cc4dbe5e255c Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Tue, 29 Dec 2020 14:48:22 +0000 Subject: [PATCH 50/70] feat(config): add secrets config to store sensitive settings (#3080) * feat(config): add secrets.cfg * changed name of config * updated wording --- .../config-lgsm/secrets-common-template.cfg | 5 +++++ .../config-lgsm/secrets-instance-template.cfg | 5 +++++ linuxgsm.sh | 18 ++++++++++++++++++ tests/tests_fctrserver.sh | 18 ++++++++++++++++++ tests/tests_jc2server.sh | 18 ++++++++++++++++++ tests/tests_mcserver.sh | 18 ++++++++++++++++++ tests/tests_ts3server.sh | 18 ++++++++++++++++++ 7 files changed, 100 insertions(+) create mode 100644 lgsm/config-default/config-lgsm/secrets-common-template.cfg create mode 100644 lgsm/config-default/config-lgsm/secrets-instance-template.cfg diff --git a/lgsm/config-default/config-lgsm/secrets-common-template.cfg b/lgsm/config-default/config-lgsm/secrets-common-template.cfg new file mode 100644 index 000000000..d8ded6aa9 --- /dev/null +++ b/lgsm/config-default/config-lgsm/secrets-common-template.cfg @@ -0,0 +1,5 @@ +################################## +######## Common Secrets ########## +################################## +# PLACE GLOBAL SECRET SETTINGS HERE +## These settings will apply to all instances. diff --git a/lgsm/config-default/config-lgsm/secrets-instance-template.cfg b/lgsm/config-default/config-lgsm/secrets-instance-template.cfg new file mode 100644 index 000000000..5446d3718 --- /dev/null +++ b/lgsm/config-default/config-lgsm/secrets-instance-template.cfg @@ -0,0 +1,5 @@ +################################## +####### Instance Secrets ######### +################################## +# PLACE INSTANCE SECRET SETTINGS HERE +## These settings will apply to a specific instance. diff --git a/linuxgsm.sh b/linuxgsm.sh index 4815e86e3..cb767a770 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -412,6 +412,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/common.cfg" fi + # Load the secrets-common.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-common.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-common-template.cfg" "${configdirserver}" "secrets-common.cfg" "${chmodx}" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + fi # Load the instance.cfg config. If missing download it. if [ ! -f "${configdirserver}/${selfname}.cfg" ]; then fn_fetch_config "lgsm/config-default/config-lgsm" "instance-template.cfg" "${configdirserver}" "${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" @@ -421,6 +430,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/${selfname}.cfg" fi + # Load the secrets-instance.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-${selfname}.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-instance-template.cfg" "${configdirserver}" "secrets-${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + fi # Load the linuxgsm.sh in to tmpdir. If missing download it. if [ ! -f "${tmpdir}/linuxgsm.sh" ]; then diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh index 1afa2f60a..55a05f99f 100644 --- a/tests/tests_fctrserver.sh +++ b/tests/tests_fctrserver.sh @@ -421,6 +421,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/common.cfg" fi + # Load the secrets-common.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-common.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-common-template.cfg" "${configdirserver}" "secrets-common.cfg" "${chmodx}" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + fi # Load the instance.cfg config. If missing download it. if [ ! -f "${configdirserver}/${selfname}.cfg" ]; then fn_fetch_config "lgsm/config-default/config-lgsm" "instance-template.cfg" "${configdirserver}" "${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" @@ -430,6 +439,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/${selfname}.cfg" fi + # Load the secrets-instance.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-${selfname}.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-instance-template.cfg" "${configdirserver}" "secrets-${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + fi # Load the linuxgsm.sh in to tmpdir. If missing download it. if [ ! -f "${tmpdir}/linuxgsm.sh" ]; then diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh index aab73228d..2eb1815f3 100644 --- a/tests/tests_jc2server.sh +++ b/tests/tests_jc2server.sh @@ -422,6 +422,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/common.cfg" fi + # Load the secrets-common.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-common.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-common-template.cfg" "${configdirserver}" "secrets-common.cfg" "${chmodx}" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + fi # Load the instance.cfg config. If missing download it. if [ ! -f "${configdirserver}/${selfname}.cfg" ]; then fn_fetch_config "lgsm/config-default/config-lgsm" "instance-template.cfg" "${configdirserver}" "${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" @@ -431,6 +440,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/${selfname}.cfg" fi + # Load the secrets-instance.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-${selfname}.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-instance-template.cfg" "${configdirserver}" "secrets-${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + fi # Load the linuxgsm.sh in to tmpdir. If missing download it. if [ ! -f "${tmpdir}/linuxgsm.sh" ]; then diff --git a/tests/tests_mcserver.sh b/tests/tests_mcserver.sh index edfc620b3..8797e78e8 100644 --- a/tests/tests_mcserver.sh +++ b/tests/tests_mcserver.sh @@ -422,6 +422,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/common.cfg" fi + # Load the secrets-common.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-common.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-common.cfg" "${configdirserver}" "secrets-common.cfg" "${chmodx}" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + fi # Load the instance.cfg config. If missing download it. if [ ! -f "${configdirserver}/${selfname}.cfg" ]; then fn_fetch_config "lgsm/config-default/config-lgsm" "instance-template.cfg" "${configdirserver}" "${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" @@ -431,6 +440,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/${selfname}.cfg" fi + # Load the secrets-instance.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-${selfname}.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-instance-template.cfg" "${configdirserver}" "secrets-${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + fi # Load the linuxgsm.sh in to tmpdir. If missing download it. if [ ! -f "${tmpdir}/linuxgsm.sh" ]; then diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh index 620eb43ee..3883d8dc2 100644 --- a/tests/tests_ts3server.sh +++ b/tests/tests_ts3server.sh @@ -422,6 +422,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/common.cfg" fi + # Load the secrets-common.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-common.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-common-template.cfg" "${configdirserver}" "secrets-common.cfg" "${chmodx}" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-common.cfg" + fi # Load the instance.cfg config. If missing download it. if [ ! -f "${configdirserver}/${selfname}.cfg" ]; then fn_fetch_config "lgsm/config-default/config-lgsm" "instance-template.cfg" "${configdirserver}" "${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" @@ -431,6 +440,15 @@ else # shellcheck source=/dev/null source "${configdirserver}/${selfname}.cfg" fi + # Load the secrets-instance.cfg config. If missing download it. + if [ ! -f "${configdirserver}/secrets-${selfname}.cfg" ]; then + fn_fetch_config "lgsm/config-default/config-lgsm" "secrets-instance-template.cfg" "${configdirserver}" "secrets-${selfname}.cfg" "nochmodx" "norun" "noforcedl" "nomd5" + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + else + # shellcheck source=/dev/null + source "${configdirserver}/secrets-${selfname}.cfg" + fi # Load the linuxgsm.sh in to tmpdir. If missing download it. if [ ! -f "${tmpdir}/linuxgsm.sh" ]; then From 9a8506387a1deed35077b53c064c14123eab3ba6 Mon Sep 17 00:00:00 2001 From: Christian Date: Wed, 30 Dec 2020 11:14:05 +0100 Subject: [PATCH 51/70] feat(newserver): Colony Survival (#3075) --- .../config-lgsm/colserver/_default.cfg | 178 ++++++++++++++++++ lgsm/data/serverlist.csv | 1 + lgsm/functions/check_deps.sh | 6 + lgsm/functions/fix_steamcmd.sh | 2 + lgsm/functions/info_config.sh | 25 +++ lgsm/functions/info_messages.sh | 14 +- lgsm/functions/install_config.sh | 7 + 7 files changed, 232 insertions(+), 1 deletion(-) create mode 100644 lgsm/config-default/config-lgsm/colserver/_default.cfg diff --git a/lgsm/config-default/config-lgsm/colserver/_default.cfg b/lgsm/config-default/config-lgsm/colserver/_default.cfg new file mode 100644 index 000000000..5be0776cf --- /dev/null +++ b/lgsm/config-default/config-lgsm/colserver/_default.cfg @@ -0,0 +1,178 @@ +################################## +######## Default Settings ######## +################################## +# DO NOT EDIT, ANY CHANGES WILL BE OVERWRITTEN! +# Copy settings from here and use them in either: +# common.cfg - applies settings to every instance. +# [instance].cfg - applies settings to a specific instance. + +#### Game Server Settings #### + +## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters +# Edit with care | https://colonysurvival.gamepedia.com/Dedicated_Server#Installation_.28Linux.29 +fn_parms(){ +parms="-batchmode -nographics +server.config ${servercfgfullpath}" +} + +#### LinuxGSM Settings #### + +## LinuxGSM Stats +# Send useful stats to LinuxGSM developers. +# https://docs.linuxgsm.com/configuration/linuxgsm-stats +# (on|off) +stats="off" + +## Notification Alerts +# (on|off) + +# Display IP | https://docs.linuxgsm.com/alerts#display-ip +displayip="" + +# More info | https://docs.linuxgsm.com/alerts#more-info +postalert="off" + +# Discord Alerts | https://docs.linuxgsm.com/alerts/discord +discordalert="off" +discordwebhook="webhook" + +# Email Alerts | https://docs.linuxgsm.com/alerts/email +emailalert="off" +email="email@example.com" +emailfrom="" + +# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt +iftttalert="off" +ifttttoken="accesstoken" +iftttevent="linuxgsm_alert" + +# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun +mailgunalert="off" +mailgunapiregion="us" +mailguntoken="accesstoken" +mailgundomain="example.com" +mailgunemailfrom="alert@example.com" +mailgunemail="email@myemail.com" + +# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet +pushbulletalert="off" +pushbullettoken="accesstoken" +channeltag="" + +# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover +pushoveralert="off" +pushovertoken="accesstoken" +pushoveruserkey="userkey" + +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + +# Slack Alerts | https://docs.linuxgsm.com/alerts/slack +slackalert="off" +slackwebhook="webhook" + +# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". +telegramalert="off" +telegramtoken="accesstoken" +telegramchatid="" +curlcustomstring="" + +## Updating | https://docs.linuxgsm.com/commands/update +updateonstart="off" + +## Backup | https://docs.linuxgsm.com/commands/backup +maxbackups="4" +maxbackupdays="30" +stoponbackup="on" + +## Logging | https://docs.linuxgsm.com/features/logging +consolelogging="on" +logdays="7" + +## Monitor | https://docs.linuxgsm.com/commands/monitor +# Query delay time +querydelay="1" + +## ANSI Colors | https://docs.linuxgsm.com/features/ansi-colors +ansi="on" + +#### Advanced Settings #### + +## Message Display Time | https://docs.linuxgsm.com/features/message-display-time +sleeptime="0.5" + +## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd +# Server appid +appid="748090" +# SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch +branch="" +betapassword="" +# Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server +steammaster="false" + +## Stop Mode | https://docs.linuxgsm.com/features/stop-mode +# 1: tmux kill +# 2: CTRL+c +# 3: quit +# 4: quit 120s +# 5: stop +# 6: q +# 7: exit +# 8: 7 Days to Die +# 9: GoldSrc +# 10: Avorion +# 11: end +stopmode="2" + +## Query mode +# 1: session only +# 2: gamedig (gsquery fallback) +# 3: gamedig +# 4: gsquery +# 5: tcp +querymode="2" +querytype="protocol-valve" + +## Console type +consoleverbose="no" +consoleinteract="no" + +## Game Server Details +# Do not edit +gamename="Colony Survival" +engine="unity3d" +glibc="2.15" + +#### Directories #### +# Edit with care + +## Game Server Directories +systemdir="${serverfiles}" +executabledir="${serverfiles}" +executable="./colonyserver.x86_64" +servercfgdir="${systemdir}/gamedata/settings" +servercfg="${selfname}.json" +servercfgdefault="colserver.json" +servercfgfullpath="${servercfgdir}/${servercfg}" + +## Backup Directory +backupdir="${lgsmdir}/backup" + +## Logging Directories +logdir="${rootdir}/log" +gamelogdir="${serverfiles}/gamedata/logs/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" +postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log" + +## Logs Naming +gamelogdate="${gamelogdir}/${selfname}-game-$(date '+%Y-%m-%d-%H:%M:%S').log" +lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" +consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" diff --git a/lgsm/data/serverlist.csv b/lgsm/data/serverlist.csv index ad3bc9a19..7786158f1 100644 --- a/lgsm/data/serverlist.csv +++ b/lgsm/data/serverlist.csv @@ -21,6 +21,7 @@ cod2,cod2server,Call of Duty 2 cod4,cod4server,Call of Duty 4 coduo,coduoserver,Call of Duty: United Offensive codwaw,codwawserver,Call of Duty: World at War +col,colserver,Colony Survival cs,csserver,Counter-Strike 1.6 cscz,csczserver,Counter-Strike: Condition Zero csgo,csgoserver,Counter-Strike: Global Offensive diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 80d33cad9..29c1c4548 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -404,6 +404,9 @@ fn_deps_build_debian(){ # Barotrauma elif [ "${shortname}" == "bt" ]; then array_deps_required+=( libicu-dev ) + # Colony Survival + elif [ "${shortname}" == "col" ]; then + array_deps_required+=( coreutils ) # Ecoserver elif [ "${shortname}" == "eco" ]; then array_deps_required+=( libgdiplus ) @@ -513,6 +516,9 @@ fn_deps_build_redhat(){ # Call of Duty & Medal of Honor: Allied Assault elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]||[ "${shortname}" == "cod2" ]||[ "${shortname}" == "mohaa" ]; then array_deps_required+=( compat-libstdc++-33.i686 ) + # Colony Survival + elif [ "${shortname}" == "col" ]; then + array_deps_required+=( coreutils ) # Ecoserver elif [ "${shortname}" == "eco" ]; then array_deps_required+=( libgdiplus ) diff --git a/lgsm/functions/fix_steamcmd.sh b/lgsm/functions/fix_steamcmd.sh index 41d31e263..01465b45e 100755 --- a/lgsm/functions/fix_steamcmd.sh +++ b/lgsm/functions/fix_steamcmd.sh @@ -79,6 +79,8 @@ elif [ "${shortname}" == "cmw" ]; then fn_fix_steamclient_so "32" "${executabledir}/lib" elif [ "${shortname}" == "cs" ]; then fn_fix_steamclient_so "32" "${serverfiles}" +elif [ "${shortname}" == "col" ]; then + fn_fix_steamclient_so "64" "${serverfiles}" elif [ "${shortname}" == "ins" ]; then fn_fix_steamclient_so "32" "${serverfiles}/bin" elif [ "${shortname}" == "pz" ]; then diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index d13e000d9..99eed24c4 100755 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -1525,6 +1525,29 @@ fn_info_config_pavlovvr(){ fi } +fn_info_config_col(){ + if [ -f "${servercfgfullpath}" ]; then + servername=$(jq -r '.ServerSettings.ServerName' "${servercfgfullpath}") + serverpassword=$(jq -r '.ServerSettings.ServerPassword' "${servercfgfullpath}") + maxplayers=$(jq -r '.ServerSettings.MaxPlayerCount' "${servercfgfullpath}") + port=$(jq -r '.ServerSettings.ServerGamePort' "${servercfgfullpath}") + steamport=$(jq -r '.ServerSettings.ServerSteamPort' "${servercfgfullpath}") + rconpassword=$(jq -r '.ServerSettings.RCONPassword' "${servercfgfullpath}") + configip=$(jq -r '.ServerSettings.ServerIP' "${servercfgfullpath}") + + # password not set + serverpassword=${serverpassword:-"NOT SET"} + queryport=${port:-"0"} + else + servername=${servername:-"NOT SET"} + serverpassword=${serverpassword:-"NOT SET"} + maxplayers=${maxplayers:-"0"} + port=${port:-"27004"} + steamport=${steamport:-"27005"} + rconpassword=${rconpassword:-"NOT SET"} + fi +} + if [ "${shortname}" == "ac" ]; then fn_info_config_assettocorsa elif [ "${shortname}" == "ark" ]; then @@ -1551,6 +1574,8 @@ elif [ "${shortname}" == "cod4" ]; then fn_info_config_cod4 elif [ "${shortname}" == "codwaw" ]; then fn_info_config_codwaw +elif [ "${shortname}" == "col" ]; then + fn_info_config_col elif [ "${shortname}" == "dst" ]; then fn_info_config_dontstarve elif [ "${shortname}" == "eco" ]; then diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index dde3a2585..c6a1b996f 100755 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -583,7 +583,7 @@ fn_info_message_ports(){ fi done # engines/games that require editing the parms. - local ports_edit_array=( "Avorion" "goldsrc" "Factorio" "Hurtworld" "iw3.0" "ioquake3" "qfusion" "Rust" "Soldat" "spark" "source" "starbound" "unreal4" "realvirtuality" "Unturned" ) + local ports_edit_array=( "Avorion" "col" "goldsrc" "Factorio" "Hurtworld" "iw3.0" "ioquake3" "qfusion" "Rust" "Soldat" "spark" "source" "starbound" "unreal4" "realvirtuality" "Unturned" ) for port_edit in "${ports_edit_array[@]}"; do if [ "${engine}" == "${port_edit}" ]||[ "${gamename}" == "${port_edit}" ]||[ "${shortname}" == "${port_edit}" ]; then parmslocation="${configdirserver}" @@ -1445,6 +1445,16 @@ fn_info_message_pavlovvr(){ } | column -s $'\t' -t } +fn_info_message_colony(){ + echo -e "netstat -atunp | grep colonyserver" + echo -e "" + { + echo -e "${lightblue}DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL${default}" + echo -e "> Game\tINBOUND\t${port}\tudp" + echo -e "> Steam\tINBOUND\t${steamport}\tudp" + } | column -s $'\t' -t +} + fn_info_message_select_engine(){ # Display details depending on game or engine. if [ "${shortname}" == "ac" ]; then @@ -1473,6 +1483,8 @@ fn_info_message_select_engine(){ fn_info_message_cod4 elif [ "${shortname}" == "codwaw" ]; then fn_info_message_codwaw + elif [ "${shortname}" == "col" ]; then + fn_info_message_colony elif [ "${shortname}" == "dst" ]; then fn_info_message_dst elif [ "${shortname}" == "eco" ]; then diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index fbff9dbbb..052e535d2 100755 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -316,6 +316,13 @@ elif [ "${shortname}" == "cc" ]; then fn_default_config_remote fn_set_config_vars fn_list_config_locations +elif [ "${shortname}" == "col" ]; then + gamedirname="ColonySurvival" + array_configs+=( colserver.json ) + fn_fetch_default_config + fn_default_config_remote + fn_set_config_vars + fn_list_config_locations elif [ "${shortname}" == "cs" ]; then gamedirname="CounterStrike" array_configs+=( server.cfg ) From efa159d8ab9f3e8883f9323f1cf4b937d7e64e62 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 30 Dec 2020 22:33:47 +0000 Subject: [PATCH 52/70] feat(skeleton): New command skeleton (#3152) * initial commit of skel * getopt * getopt * getopt * cpio * adding messages * exit * message * shellcheck * truncate netstat for colserver * added cpio dependency * tabs --- lgsm/functions/check_deps.sh | 12 ++++++------ lgsm/functions/command_skeleton.sh | 21 +++++++++++++++++++++ lgsm/functions/core_functions.sh | 5 +++++ lgsm/functions/core_getopt.sh | 5 +++-- lgsm/functions/info_messages.sh | 2 +- 5 files changed, 36 insertions(+), 9 deletions(-) create mode 100644 lgsm/functions/command_skeleton.sh diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 29c1c4548..621b12eae 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -343,7 +343,7 @@ fn_deps_build_debian(){ array_deps_missing=() # LinuxGSM requirements. - array_deps_required=( curl wget ca-certificates file bsdmainutils util-linux python3 tar bzip2 gzip unzip binutils bc jq tmux netcat ) + array_deps_required=( curl wget ca-certificates file bsdmainutils util-linux python3 tar bzip2 gzip unzip binutils bc jq tmux netcat cpio ) # All servers except ts3, mumble, GTA and minecraft servers require lib32stdc++6 and lib32gcc1. if [ "${shortname}" != "ts3" ]&&[ "${shortname}" != "mumble" ]&&[ "${shortname}" != "mc" ]&&[ "${engine}" != "renderware" ]; then @@ -470,15 +470,15 @@ fn_deps_build_redhat(){ # LinuxGSM requirements. # CentOS if [ "${distroversion}" == "7" ]; then - array_deps_required=( epel-release curl wget util-linux python3 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat ) + array_deps_required=( epel-release curl wget util-linux python3 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat cpio ) elif [ "${distroversion}" == "8" ]; then - array_deps_required=( epel-release curl wget util-linux python36 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat ) + array_deps_required=( epel-release curl wget util-linux python36 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat cpio ) elif [ "${distroid}" == "fedora" ]; then - array_deps_required=( curl wget util-linux python3 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat ) + array_deps_required=( curl wget util-linux python3 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat cpio ) elif [[ "${distroname}" == *"Amazon Linux AMI"* ]]; then - array_deps_required=( curl wget util-linux python3 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat ) + array_deps_required=( curl wget util-linux python3 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat cpio ) else - array_deps_required=( curl wget util-linux python3 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat ) + array_deps_required=( curl wget util-linux python3 file tar gzip bzip2 unzip binutils bc jq tmux nmap-ncat cpio ) fi # All servers except ts3, mumble, multi theft auto and minecraft servers require glibc.i686 and libstdc++.i686. diff --git a/lgsm/functions/command_skeleton.sh b/lgsm/functions/command_skeleton.sh new file mode 100644 index 000000000..cb1136915 --- /dev/null +++ b/lgsm/functions/command_skeleton.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# LinuxGSM command_skeleton.sh function +# Author: Daniel Gibbs +# Website: https://linuxgsm.com +# Description: Creates an copy of a game servers directorys. + + +fn_print_dots "Creating skeleton directory" +check.sh + +# Find all directorys and create them in the skel directory +find "${rootdir}" -type d -not \( -path ./skel -prune \) | cpio -pdvm skel 2>/dev/null +exitcode=$? +if [ "${exitcode}" != 0 ]; then + fn_print_fail_nl "Creating skeleton directory" + fn_script_log_fatal "Creating skeleton directory" +else + fn_print_ok_nl "Creating skeleton directory: ./skel" + fn_script_log_pass "Creating skeleton directory: ./skel" +fi +core_exit.sh diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index e4da9830f..942eb6bda 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -155,6 +155,11 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } +command_skeleton.sh(){ +functionfile="${FUNCNAME[0]}" +fn_fetch_function +} + command_wipe.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function diff --git a/lgsm/functions/core_getopt.sh b/lgsm/functions/core_getopt.sh index e20b32b57..ecfba09b3 100755 --- a/lgsm/functions/core_getopt.sh +++ b/lgsm/functions/core_getopt.sh @@ -20,6 +20,7 @@ cmd_backup=( "b;backup" "command_backup.sh" "Create backup archives of the serve cmd_update_linuxgsm=( "ul;update-lgsm;uf;update-functions" "command_update_linuxgsm.sh" "Check and apply any LinuxGSM updates." ) cmd_test_alert=( "ta;test-alert" "command_test_alert.sh" "Send a test alert." ) cmd_monitor=( "m;monitor" "command_monitor.sh" "Check server status and restart if crashed." ) +cmd_skeleton=( "sk;skeleton" "command_skeleton.sh" "Create a skeleton directory." ) cmd_donate=( "do;donate" "command_donate.sh" "Donation options." ) # Console servers only. cmd_console=( "c;console" "command_console.sh" "Access server console." ) @@ -55,9 +56,9 @@ cmd_dev_clear_functions=( "cf;clear-functions" "command_dev_clear_functions.sh" ### Set specific opt here. -currentopt=( "${cmd_start[@]}" "${cmd_stop[@]}" "${cmd_restart[@]}" "${cmd_monitor[@]}" "${cmd_test_alert[@]}" "${cmd_details[@]}" "${cmd_postdetails[@]}" ) +currentopt=( "${cmd_start[@]}" "${cmd_stop[@]}" "${cmd_restart[@]}" "${cmd_monitor[@]}" "${cmd_test_alert[@]}" "${cmd_details[@]}" "${cmd_postdetails[@]}" "${cmd_skeleton[@]}" ) -# Update LGSM. +# Update LinuxGSM. currentopt+=( "${cmd_update_linuxgsm[@]}" ) # Exclude noupdate games here. diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index c6a1b996f..177129bfd 100755 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -1446,7 +1446,7 @@ fn_info_message_pavlovvr(){ } fn_info_message_colony(){ - echo -e "netstat -atunp | grep colonyserver" + echo -e "netstat -atunp | grep colonyserv" echo -e "" { echo -e "${lightblue}DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL${default}" From a075300589ffe88c9fe31eda9cf82db7347f0a41 Mon Sep 17 00:00:00 2001 From: Christian Date: Thu, 31 Dec 2020 11:33:33 +0100 Subject: [PATCH 53/70] feat(check-update): add new command check-update for steamcmd game servers (#3146) --- lgsm/functions/alert.sh | 11 + lgsm/functions/check_steamcmd.sh | 141 +---------- lgsm/functions/command_check_update.sh | 24 ++ lgsm/functions/core_functions.sh | 10 + lgsm/functions/core_getopt.sh | 5 +- lgsm/functions/core_steamcmd.sh | 332 +++++++++++++++++++++++++ lgsm/functions/update_steamcmd.sh | 182 +------------- 7 files changed, 384 insertions(+), 321 deletions(-) create mode 100755 lgsm/functions/command_check_update.sh create mode 100755 lgsm/functions/core_steamcmd.sh diff --git a/lgsm/functions/alert.sh b/lgsm/functions/alert.sh index 3b54230eb..484c0c1e2 100755 --- a/lgsm/functions/alert.sh +++ b/lgsm/functions/alert.sh @@ -60,6 +60,15 @@ fn_alert_update(){ alertbody="${gamename} received update" } +fn_alert_check_update(){ + fn_script_log_info "Sending alert: Update available" + alertsubject="Alert - ${selfname} - Update available" + alertemoji="🎮" + alertsound="1" + alerturl="not enabled" + alertbody="${gamename} update available" +} + fn_alert_permissions(){ fn_script_log_info "Sending alert: Permissions error" alertsubject="Alert - ${selfname}: Permissions error" @@ -88,6 +97,8 @@ elif [ "${alert}" == "test" ]; then fn_alert_test elif [ "${alert}" == "update" ]; then fn_alert_update +elif [ "${alert}" == "check-update" ]; then + fn_alert_check_update elif [ "${alert}" == "config" ]; then fn_alert_config fi diff --git a/lgsm/functions/check_steamcmd.sh b/lgsm/functions/check_steamcmd.sh index 647ee7525..9141acd0d 100755 --- a/lgsm/functions/check_steamcmd.sh +++ b/lgsm/functions/check_steamcmd.sh @@ -6,145 +6,8 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -fn_install_steamcmd(){ - if [ "${shortname}" == "ark" ]&&[ "${installsteamcmd}" == "1" ]; then - steamcmddir="${serverfiles}/Engine/Binaries/ThirdParty/SteamCMD/Linux" - fi - if [ ! -d "${steamcmddir}" ]; then - mkdir -p "${steamcmddir}" - fi - remote_fileurl="${1}" - remote_fileurl_backup="${2}" - remote_fileurl_name="${3}" - remote_fileurl_backup_name="${4}" - local_filedir="${5}" - local_filename="${6}" - chmodx="${7:-0}" - run="${8:-0}" - forcedl="${9:-0}" - md5="${10:-0}" - fn_fetch_file "http://media.steampowered.com/client/steamcmd_linux.tar.gz" "" "" "" "${tmpdir}" "steamcmd_linux.tar.gz" "" "norun" "noforce" "nomd5" - fn_dl_extract "${tmpdir}" "steamcmd_linux.tar.gz" "${steamcmddir}" - chmod +x "${steamcmddir}/steamcmd.sh" -} - -fn_check_steamcmd_user(){ - # Checks if steamuser is setup. - if [ "${steamuser}" == "username" ]; then - fn_print_fail_nl "Steam login not set. Update steamuser in ${configdirserver}" - echo -e " * Change steamuser=\"username\" to a valid steam login." - if [ -d "${lgsmlogdir}" ]; then - fn_script_log_fatal "Steam login not set. Update steamuser in ${configdirserver}" - fi - core_exit.sh - fi - # Anonymous user is set if steamuser is missing. - if [ -z "${steamuser}" ]; then - if [ -d "${lgsmlogdir}" ]; then - fn_script_log_info "Using anonymous Steam login" - fi - steamuser="anonymous" - steampass='' - fi -} - -fn_check_steamcmd(){ - # Checks if SteamCMD exists when starting or updating a server. - # Only install if steamcmd package is missing or steamcmd dir is missing. - if [ ! -f "${steamcmddir}/steamcmd.sh" ]&&[ -z "$(command -v steamcmd 2>/dev/null)" ]; then - if [ "${commandname}" == "INSTALL" ]; then - fn_install_steamcmd - else - fn_print_warn_nl "SteamCMD is missing" - fn_script_log_warn "SteamCMD is missing" - fn_install_steamcmd - fi - elif [ "${commandname}" == "INSTALL" ]; then - fn_print_information "SteamCMD is already installed..." - fn_print_ok_eol_nl - fi -} - -fn_check_steamcmd_dir(){ - # Worksround that pre-installs the correct steam directories to ensure all packages use the correct Standard. - # https://github.com/ValveSoftware/steam-for-linux/issues/6976#issuecomment-610446347 - - # Create Steam installation directory. - if [ ! -d "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" ]; then - mkdir -p "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" - fi - - # Create common Steam directory. - if [ ! -d "${HOME}/.steam" ]; then - mkdir -p "${HOME}/.steam" - fi - - # Symbolic links to Steam installation directory. - if [ ! -L "${HOME}/.steam/root" ]; then - if [ -d "${HOME}/.steam/root" ]; then - rm "${HOME}/.steam/root" - fi - ln -s "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" "${HOME}/.steam/root" - fi - - if [ ! -L "${HOME}/.steam/steam" ]; then - if [ -d "${HOME}/.steam/steam" ]; then - rm -rf "${HOME}/.steam/steam" - fi - ln -s "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" "${HOME}/.steam/steam" - fi -} - -fn_check_steamcmd_dir_legacy(){ - # Remove old Steam installation directories ~/Steam and ${rootdir}/steamcmd - if [ -d "${rootdir}/steamcmd" ]&&[ "${steamcmddir}" == "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" ]; then - rm -rf "${rootdir:?}/steamcmd" - fi - - if [ -d "${HOME}/Steam" ]&&[ "${steamcmddir}" == "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" ]; then - rm -rf "${HOME}/Steam" - fi -} - -fn_check_steamcmd_ark(){ - # Checks if SteamCMD exists in - # Engine/Binaries/ThirdParty/SteamCMD/Linux - # to allow ark mods to work - if [ ! -f "${serverfiles}/Engine/Binaries/ThirdParty/SteamCMD/Linux/steamcmd.sh" ]; then - installsteamcmd=1 - if [ "${commandname}" == "INSTALL" ]; then - fn_install_steamcmd - else - fn_print_warn_nl "ARK mods SteamCMD is missing" - fn_script_log_warn "ARK mods SteamCMD is missing" - fn_install_steamcmd - fi - elif [ "${commandname}" == "INSTALL" ]; then - fn_print_information "ARK mods SteamCMD is already installed..." - fn_print_ok_eol_nl - fi -} - -fn_check_steamcmd_clear(){ -# Will remove steamcmd dir if steamcmd package is installed. -if [ "$(command -v steamcmd 2>/dev/null)" ]&&[ -d "${rootdir}/steamcmd" ]; then - rm -rf "${steamcmddir:?}" - exitcode=$? - if [ "${exitcode}" != 0 ]; then - fn_script_log_fatal "Removing ${rootdir}/steamcmd" - else - fn_script_log_pass "Removing ${rootdir}/steamcmd" - fi -fi -} - -fn_check_steamcmd_exec(){ - if [ "$(command -v steamcmd 2>/dev/null)" ]; then - steamcmdcommand="steamcmd" - else - steamcmdcommand="./steamcmd.sh" - fi -} +# init steamcmd functions +core_steamcmd.sh fn_check_steamcmd_clear fn_check_steamcmd diff --git a/lgsm/functions/command_check_update.sh b/lgsm/functions/command_check_update.sh new file mode 100755 index 000000000..5bda55469 --- /dev/null +++ b/lgsm/functions/command_check_update.sh @@ -0,0 +1,24 @@ +#!/bin/bash +# LinuxGSM command_check_update.sh function +# Author: Daniel Gibbs +# Website: https://linuxgsm.com +# Description: Handles updating of servers. + +commandname="CHECK-UPDATE" +commandaction="check for Update" +functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" +fn_firstcommand_set + +fn_print_dots "" +check.sh +core_logs.sh + +core_steamcmd.sh + +check_steamcmd.sh + +fn_update_steamcmd_localbuild +fn_update_steamcmd_remotebuild +fn_update_steamcmd_compare + +core_exit.sh diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index 942eb6bda..ce8458b5d 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -53,6 +53,11 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } +core_steamcmd.sh(){ +functionfile="${FUNCNAME[0]}" +fn_fetch_function +} + # Commands command_backup.sh(){ @@ -599,6 +604,11 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } +command_check_update.sh(){ +functionfile="${FUNCNAME[0]}" +fn_fetch_function +} + update_ts3.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function diff --git a/lgsm/functions/core_getopt.sh b/lgsm/functions/core_getopt.sh index ecfba09b3..5fae3fb9f 100755 --- a/lgsm/functions/core_getopt.sh +++ b/lgsm/functions/core_getopt.sh @@ -27,6 +27,7 @@ cmd_console=( "c;console" "command_console.sh" "Access server console." ) cmd_debug=( "d;debug" "command_debug.sh" "Start server directly in your terminal." ) # Update servers only. cmd_update=( "u;update" "command_update.sh" "Check and apply any server updates." ) +cmd_check_update=( "cu;check-update" "command_check_update.sh" "Check if a gameserver update is available" ) cmd_force_update=( "fu;force-update;update-restart;ur" "forceupdate=1; command_update.sh" "Apply server updates bypassing check." ) # SteamCMD servers only. cmd_validate=( "v;validate" "command_validate.sh" "Validate server files with SteamCMD." ) @@ -72,9 +73,9 @@ if [ "${shortname}" == "jk2" ]||[ "${engine}" != "idtech3" ];then fi fi -# Validate command. +# Validate and check-update command. if [ "${appid}" ]; then - currentopt+=( "${cmd_validate[@]}" ) + currentopt+=( "${cmd_validate[@]}" "${cmd_check_update[@]}" ) fi # Backup. diff --git a/lgsm/functions/core_steamcmd.sh b/lgsm/functions/core_steamcmd.sh new file mode 100755 index 000000000..582eb93b6 --- /dev/null +++ b/lgsm/functions/core_steamcmd.sh @@ -0,0 +1,332 @@ +#!/bin/bash +# LinuxGSM core_steamcmd.sh function +# Author: Daniel Gibbs +# Website: https://linuxgsm.com +# Description: Core functions for SteamCMD + +functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" + +fn_install_steamcmd(){ + if [ "${shortname}" == "ark" ]&&[ "${installsteamcmd}" == "1" ]; then + steamcmddir="${serverfiles}/Engine/Binaries/ThirdParty/SteamCMD/Linux" + fi + if [ ! -d "${steamcmddir}" ]; then + mkdir -p "${steamcmddir}" + fi + remote_fileurl="${1}" + remote_fileurl_backup="${2}" + remote_fileurl_name="${3}" + remote_fileurl_backup_name="${4}" + local_filedir="${5}" + local_filename="${6}" + chmodx="${7:-0}" + run="${8:-0}" + forcedl="${9:-0}" + md5="${10:-0}" + fn_fetch_file "http://media.steampowered.com/client/steamcmd_linux.tar.gz" "" "" "" "${tmpdir}" "steamcmd_linux.tar.gz" "" "norun" "noforce" "nomd5" + fn_dl_extract "${tmpdir}" "steamcmd_linux.tar.gz" "${steamcmddir}" + chmod +x "${steamcmddir}/steamcmd.sh" +} + +fn_check_steamcmd_user(){ + # Checks if steamuser is setup. + if [ "${steamuser}" == "username" ]; then + fn_print_fail_nl "Steam login not set. Update steamuser in ${configdirserver}" + echo -e " * Change steamuser=\"username\" to a valid steam login." + if [ -d "${lgsmlogdir}" ]; then + fn_script_log_fatal "Steam login not set. Update steamuser in ${configdirserver}" + fi + core_exit.sh + fi + # Anonymous user is set if steamuser is missing. + if [ -z "${steamuser}" ]; then + if [ -d "${lgsmlogdir}" ]; then + fn_script_log_info "Using anonymous Steam login" + fi + steamuser="anonymous" + steampass='' + fi +} + +fn_check_steamcmd(){ + # Checks if SteamCMD exists when starting or updating a server. + # Only install if steamcmd package is missing or steamcmd dir is missing. + if [ ! -f "${steamcmddir}/steamcmd.sh" ]&&[ -z "$(command -v steamcmd 2>/dev/null)" ]; then + if [ "${commandname}" == "INSTALL" ]; then + fn_install_steamcmd + else + fn_print_warn_nl "SteamCMD is missing" + fn_script_log_warn "SteamCMD is missing" + fn_install_steamcmd + fi + elif [ "${commandname}" == "INSTALL" ]; then + fn_print_information "SteamCMD is already installed..." + fn_print_ok_eol_nl + fi +} + +fn_check_steamcmd_dir(){ + # Worksround that pre-installs the correct steam directories to ensure all packages use the correct Standard. + # https://github.com/ValveSoftware/steam-for-linux/issues/6976#issuecomment-610446347 + + # Create Steam installation directory. + if [ ! -d "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" ]; then + mkdir -p "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" + fi + + # Create common Steam directory. + if [ ! -d "${HOME}/.steam" ]; then + mkdir -p "${HOME}/.steam" + fi + + # Symbolic links to Steam installation directory. + if [ ! -L "${HOME}/.steam/root" ]; then + if [ -d "${HOME}/.steam/root" ]; then + rm "${HOME}/.steam/root" + fi + ln -s "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" "${HOME}/.steam/root" + fi + + if [ ! -L "${HOME}/.steam/steam" ]; then + if [ -d "${HOME}/.steam/steam" ]; then + rm -rf "${HOME}/.steam/steam" + fi + ln -s "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" "${HOME}/.steam/steam" + fi +} + +fn_check_steamcmd_dir_legacy(){ + # Remove old Steam installation directories ~/Steam and ${rootdir}/steamcmd + if [ -d "${rootdir}/steamcmd" ]&&[ "${steamcmddir}" == "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" ]; then + rm -rf "${rootdir:?}/steamcmd" + fi + + if [ -d "${HOME}/Steam" ]&&[ "${steamcmddir}" == "${XDG_DATA_HOME:="${HOME}/.local/share"}/Steam" ]; then + rm -rf "${HOME}/Steam" + fi +} + +fn_check_steamcmd_ark(){ + # Checks if SteamCMD exists in + # Engine/Binaries/ThirdParty/SteamCMD/Linux + # to allow ark mods to work + if [ ! -f "${serverfiles}/Engine/Binaries/ThirdParty/SteamCMD/Linux/steamcmd.sh" ]; then + installsteamcmd=1 + if [ "${commandname}" == "INSTALL" ]; then + fn_install_steamcmd + else + fn_print_warn_nl "ARK mods SteamCMD is missing" + fn_script_log_warn "ARK mods SteamCMD is missing" + fn_install_steamcmd + fi + elif [ "${commandname}" == "INSTALL" ]; then + fn_print_information "ARK mods SteamCMD is already installed..." + fn_print_ok_eol_nl + fi +} + +fn_check_steamcmd_clear(){ + # Will remove steamcmd dir if steamcmd package is installed. + if [ "$(command -v steamcmd 2>/dev/null)" ]&&[ -d "${rootdir}/steamcmd" ]; then + rm -rf "${steamcmddir:?}" + exitcode=$? + if [ "${exitcode}" != 0 ]; then + fn_script_log_fatal "Removing ${rootdir}/steamcmd" + else + fn_script_log_pass "Removing ${rootdir}/steamcmd" + fi + fi +} + +fn_check_steamcmd_exec(){ + if [ "$(command -v steamcmd 2>/dev/null)" ]; then + steamcmdcommand="steamcmd" + else + steamcmdcommand="./steamcmd.sh" + fi +} + +fn_update_steamcmd_localbuild(){ + # Gets local build info. + fn_print_dots "Checking local build: ${remotelocation}" + fn_appmanifest_check + # Uses appmanifest to find local build. + localbuild=$(grep buildid "${appmanifestfile}" | tr '[:blank:]"' ' ' | tr -s ' ' | cut -d\ -f3) + + # Set branch to public if no custom branch. + if [ -z "${branch}" ]; then + branch="public" + fi + + # Checks if localbuild variable has been set. + if [ -z "${localbuild}" ]||[ "${localbuild}" == "null" ]; then + fn_print_fail "Checking local build: ${remotelocation}" + fn_script_log_fatal "Checking local build" + core_exit.sh + else + fn_print_ok "Checking local build: ${remotelocation}" + fn_script_log_pass "Checking local build" + fi +} + +fn_update_steamcmd_remotebuild(){ + # Gets remote build info. + if [ -d "${steamcmddir}" ]; then + cd "${steamcmddir}" || exit + fi + + # Removes appinfo.vdf as a fix for not always getting up to date version info from SteamCMD. + if [ "$(find "${HOME}" -type f -name "appinfo.vdf" | wc -l)" -ne "0" ]; then + find "${HOME}" -type f -name "appinfo.vdf" -exec rm -f {} \; + fi + + # password for branch not needed to check the buildid + remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" +quit | sed -e '/"branches"/,/^}/!d' | sed -n "/\"${branch}\"/,/}/p" | grep -m 1 buildid | tr -cd '[:digit:]') + + if [ "${firstcommandname}" != "INSTALL" ]; then + fn_print_dots "Checking remote build: ${remotelocation}" + # Checks if remotebuild variable has been set. + if [ -z "${remotebuild}" ]||[ "${remotebuild}" == "null" ]; then + fn_print_fail "Checking remote build: ${remotelocation}" + fn_script_log_fatal "Checking remote build" + core_exit.sh + else + fn_print_ok "Checking remote build: ${remotelocation}" + fn_script_log_pass "Checking remote build" + fi + else + # Checks if remotebuild variable has been set. + if [ -z "${remotebuild}" ]||[ "${remotebuild}" == "null" ]; then + fn_print_failure "Unable to get remote build" + fn_script_log_fatal "Unable to get remote build" + core_exit.sh + fi + fi +} + +fn_update_steamcmd_compare(){ + fn_print_dots "Checking for update: ${remotelocation}" + if [ "${localbuild}" != "${remotebuild}" ]; then + fn_print_ok_nl "Checking for update: ${remotelocation}" + echo -en "\n" + echo -e "Update available" + echo -e "* Local build: ${red}${localbuild}${default}" + echo -e "* Remote build: ${green}${remotebuild}${default}" + if [ -n "${branch}" ]; then + echo -e "* Branch: ${branch}" + fi + if [ -n "${betapassword}" ]; then + echo -e "* Branch password: ${betapassword}" + fi + echo -e "https://steamdb.info/app/${appid}/" + echo -en "\n" + fn_script_log_info "Update available" + fn_script_log_info "Local build: ${localbuild}" + fn_script_log_info "Remote build: ${remotebuild}" + if [ -n "${branch}" ]; then + fn_script_log_info "Branch: ${branch}" + fi + if [ -n "${betapassword}" ]; then + fn_script_log_info "Branch password: ${betapassword}" + fi + fn_script_log_info "${localbuild} > ${remotebuild}" + + if [ "${commandname}" == "UPDATE" ]; then + unset updateonstart + check_status.sh + # If server stopped. + if [ "${status}" == "0" ]; then + fn_dl_steamcmd + # If server started. + else + fn_print_restart_warning + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + exitbypass=1 + fn_dl_steamcmd + exitbypass=1 + command_start.sh + fn_firstcommand_reset + fi + unset exitbypass + date +%s > "${lockdir}/lastupdate.lock" + alert="update" + elif [ "${commandname}" == "CHECK-UPDATE" ]; then + alert="check-update" + fi + alert.sh + else + fn_print_ok_nl "Checking for update: ${remotelocation}" + echo -en "\n" + echo -e "No update available" + echo -e "* Local build: ${green}${localbuild}${default}" + echo -e "* Remote build: ${green}${remotebuild}${default}" + if [ -n "${branch}" ]; then + echo -e "* Branch: ${branch}" + fi + if [ -n "${betapassword}" ]; then + echo -e "* Branch password: ${betapassword}" + fi + echo -e "https://steamdb.info/app/${appid}/" + echo -en "\n" + fn_script_log_info "No update available" + fn_script_log_info "Local build: ${localbuild}" + fn_script_log_info "Remote build: ${remotebuild}" + if [ -n "${branch}" ]; then + fn_script_log_info "Branch: ${branch}" + fi + if [ -n "${betapassword}" ]; then + fn_script_log_info "Branch password: ${betapassword}" + fi + fi +} + +fn_appmanifest_info(){ + appmanifestfile=$(find "${serverfiles}" -type f -name "appmanifest_${appid}.acf") + appmanifestfilewc=$(find "${serverfiles}" -type f -name "appmanifest_${appid}.acf" | wc -l) +} + +fn_appmanifest_check(){ + fn_appmanifest_info + # Multiple or no matching appmanifest files may sometimes be present. + # This error is corrected if required. + if [ "${appmanifestfilewc}" -ge "2" ]; then + fn_print_error "Multiple appmanifest_${appid}.acf files found" + fn_script_log_error "Multiple appmanifest_${appid}.acf files found" + fn_print_dots "Removing x${appmanifestfilewc} appmanifest_${appid}.acf files" + for appfile in ${appmanifestfile}; do + rm -f "${appfile:?}" + done + appmanifestfilewc1="${appmanifestfilewc}" + fn_appmanifest_info + # if error can not be resolved. + if [ "${appmanifestfilewc}" -ge "2" ]; then + fn_print_fail "Unable to remove x${appmanifestfilewc} appmanifest_${appid}.acf files" + fn_script_log_fatal "Unable to remove x${appmanifestfilewc} appmanifest_${appid}.acf files" + echo -e "* Check user permissions" + for appfile in ${appmanifestfile}; do + echo -e " ${appfile}" + done + core_exit.sh + else + fn_print_ok "Removed x${appmanifestfilewc1} appmanifest_${appid}.acf files" + fn_script_log_pass "Removed x${appmanifestfilewc1} appmanifest_${appid}.acf files" + fn_print_info_nl "Forcing update to correct issue" + fn_script_log_info "Forcing update to correct issue" + fn_dl_steamcmd + fi + elif [ "${appmanifestfilewc}" -eq "0" ]; then + fn_print_error_nl "No appmanifest_${appid}.acf found" + fn_script_log_error "No appmanifest_${appid}.acf found" + fn_print_info_nl "Forcing update to correct issue" + fn_script_log_info "Forcing update to correct issue" + fn_dl_steamcmd + fn_appmanifest_info + if [ "${appmanifestfilewc}" -eq "0" ]; then + fn_print_fail_nl "Still no appmanifest_${appid}.acf found" + fn_script_log_fatal "Still no appmanifest_${appid}.acf found" + core_exit.sh + fi + fi +} diff --git a/lgsm/functions/update_steamcmd.sh b/lgsm/functions/update_steamcmd.sh index b7238daf3..0733a57d2 100644 --- a/lgsm/functions/update_steamcmd.sh +++ b/lgsm/functions/update_steamcmd.sh @@ -6,186 +6,8 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -fn_update_steamcmd_localbuild(){ - # Gets local build info. - fn_print_dots "Checking local build: ${remotelocation}" - fn_appmanifest_check - # Uses appmanifest to find local build. - localbuild=$(grep buildid "${appmanifestfile}" | tr '[:blank:]"' ' ' | tr -s ' ' | cut -d\ -f3) - - # Set branch to public if no custom branch. - if [ -z "${branch}" ]; then - branch="public" - fi - - # Checks if localbuild variable has been set. - if [ -z "${localbuild}" ]||[ "${localbuild}" == "null" ]; then - fn_print_fail "Checking local build: ${remotelocation}" - fn_script_log_fatal "Checking local build" - core_exit.sh - else - fn_print_ok "Checking local build: ${remotelocation}" - fn_script_log_pass "Checking local build" - fi -} - -fn_update_steamcmd_remotebuild(){ - # Gets remote build info. - if [ -d "${steamcmddir}" ]; then - cd "${steamcmddir}" || exit - fi - - # Removes appinfo.vdf as a fix for not always getting up to date version info from SteamCMD. - if [ "$(find "${HOME}" -type f -name "appinfo.vdf" | wc -l)" -ne "0" ]; then - find "${HOME}" -type f -name "appinfo.vdf" -exec rm -f {} \; - fi - - # password for branch not needed to check the buildid - remotebuild=$(${steamcmdcommand} +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" +quit | sed -e '/"branches"/,/^}/!d' | sed -n "/\"${branch}\"/,/}/p" | grep -m 1 buildid | tr -cd '[:digit:]') - - if [ "${firstcommandname}" != "INSTALL" ]; then - fn_print_dots "Checking remote build: ${remotelocation}" - # Checks if remotebuild variable has been set. - if [ -z "${remotebuild}" ]||[ "${remotebuild}" == "null" ]; then - fn_print_fail "Checking remote build: ${remotelocation}" - fn_script_log_fatal "Checking remote build" - core_exit.sh - else - fn_print_ok "Checking remote build: ${remotelocation}" - fn_script_log_pass "Checking remote build" - fi - else - # Checks if remotebuild variable has been set. - if [ -z "${remotebuild}" ]||[ "${remotebuild}" == "null" ]; then - fn_print_failure "Unable to get remote build" - fn_script_log_fatal "Unable to get remote build" - core_exit.sh - fi - fi -} - -fn_update_steamcmd_compare(){ - fn_print_dots "Checking for update: ${remotelocation}" - if [ "${localbuild}" != "${remotebuild}" ]; then - fn_print_ok_nl "Checking for update: ${remotelocation}" - echo -en "\n" - echo -e "Update available" - echo -e "* Local build: ${red}${localbuild}${default}" - echo -e "* Remote build: ${green}${remotebuild}${default}" - if [ -n "${branch}" ]; then - echo -e "* Branch: ${branch}" - fi - if [ -n "${betapassword}" ]; then - echo -e "* Branch password: ${betapassword}" - fi - echo -e "https://steamdb.info/app/${appid}/" - echo -en "\n" - fn_script_log_info "Update available" - fn_script_log_info "Local build: ${localbuild}" - fn_script_log_info "Remote build: ${remotebuild}" - if [ -n "${branch}" ]; then - fn_script_log_info "Branch: ${branch}" - fi - if [ -n "${betapassword}" ]; then - fn_script_log_info "Branch password: ${betapassword}" - fi - fn_script_log_info "${localbuild} > ${remotebuild}" - - unset updateonstart - check_status.sh - # If server stopped. - if [ "${status}" == "0" ]; then - fn_dl_steamcmd - # If server started. - else - fn_print_restart_warning - exitbypass=1 - command_stop.sh - fn_firstcommand_reset - exitbypass=1 - fn_dl_steamcmd - exitbypass=1 - command_start.sh - fn_firstcommand_reset - fi - unset exitbypass - date +%s > "${lockdir}/lastupdate.lock" - alert="update" - alert.sh - else - fn_print_ok_nl "Checking for update: ${remotelocation}" - echo -en "\n" - echo -e "No update available" - echo -e "* Local build: ${green}${localbuild}${default}" - echo -e "* Remote build: ${green}${remotebuild}${default}" - if [ -n "${branch}" ]; then - echo -e "* Branch: ${branch}" - fi - if [ -n "${betapassword}" ]; then - echo -e "* Branch password: ${betapassword}" - fi - echo -e "https://steamdb.info/app/${appid}/" - echo -en "\n" - fn_script_log_info "No update available" - fn_script_log_info "Local build: ${localbuild}" - fn_script_log_info "Remote build: ${remotebuild}" - if [ -n "${branch}" ]; then - fn_script_log_info "Branch: ${branch}" - fi - if [ -n "${betapassword}" ]; then - fn_script_log_info "Branch password: ${betapassword}" - fi - fi -} - -fn_appmanifest_info(){ - appmanifestfile=$(find "${serverfiles}" -type f -name "appmanifest_${appid}.acf") - appmanifestfilewc=$(find "${serverfiles}" -type f -name "appmanifest_${appid}.acf" | wc -l) -} - -fn_appmanifest_check(){ - fn_appmanifest_info - # Multiple or no matching appmanifest files may sometimes be present. - # This error is corrected if required. - if [ "${appmanifestfilewc}" -ge "2" ]; then - fn_print_error "Multiple appmanifest_${appid}.acf files found" - fn_script_log_error "Multiple appmanifest_${appid}.acf files found" - fn_print_dots "Removing x${appmanifestfilewc} appmanifest_${appid}.acf files" - for appfile in ${appmanifestfile}; do - rm -f "${appfile:?}" - done - appmanifestfilewc1="${appmanifestfilewc}" - fn_appmanifest_info - # if error can not be resolved. - if [ "${appmanifestfilewc}" -ge "2" ]; then - fn_print_fail "Unable to remove x${appmanifestfilewc} appmanifest_${appid}.acf files" - fn_script_log_fatal "Unable to remove x${appmanifestfilewc} appmanifest_${appid}.acf files" - echo -e "* Check user permissions" - for appfile in ${appmanifestfile}; do - echo -e " ${appfile}" - done - core_exit.sh - else - fn_print_ok "Removed x${appmanifestfilewc1} appmanifest_${appid}.acf files" - fn_script_log_pass "Removed x${appmanifestfilewc1} appmanifest_${appid}.acf files" - fn_print_info_nl "Forcing update to correct issue" - fn_script_log_info "Forcing update to correct issue" - fn_dl_steamcmd - fi - elif [ "${appmanifestfilewc}" -eq "0" ]; then - fn_print_error_nl "No appmanifest_${appid}.acf found" - fn_script_log_error "No appmanifest_${appid}.acf found" - fn_print_info_nl "Forcing update to correct issue" - fn_script_log_info "Forcing update to correct issue" - fn_dl_steamcmd - fn_appmanifest_info - if [ "${appmanifestfilewc}" -eq "0" ]; then - fn_print_fail_nl "Still no appmanifest_${appid}.acf found" - fn_script_log_fatal "Still no appmanifest_${appid}.acf found" - core_exit.sh - fi - fi -} +# init steamcmd functions +core_steamcmd.sh # The location where the builds are checked and downloaded. remotelocation="SteamCMD" From e9dbda748e85392a3fc8a73d09dce97aeb35d7c3 Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 3 Jan 2021 00:12:19 +0100 Subject: [PATCH 54/70] fix(steamcmd): retries are not honored if install succeeds (#3155) --- lgsm/functions/core_dl.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh index 35b5e008b..01ffcfbc3 100755 --- a/lgsm/functions/core_dl.sh +++ b/lgsm/functions/core_dl.sh @@ -87,8 +87,9 @@ fn_dl_steamcmd(){ fi # Error checking for SteamCMD. Some errors will loop to try again and some will just exit. + # Check also if we have more errors than retries to be sure that we do not loop to many times and error out. exitcode=$? - if [ -n "$(grep "Error!" "${steamcmdlog}" | tail -1)" ]||[ -n "$(grep "ERROR!" "${steamcmdlog}" | tail -1)" ]; then + if [ -n "$(grep -i "Error!" "${steamcmdlog}" | tail -1)" ]&&[ "$(grep -ic "Error!" "${steamcmdlog}")" -ge "${counter}" ] ; then # Not enough space. if [ -n "$(grep "0x202" "${steamcmdlog}" | tail -1)" ]; then fn_print_failure_nl "${commandaction} ${selfname}: ${remotelocation}: Not enough space to download server files" From ede205ad6bb4af90a4c7db0c3c06683e70b024a7 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Thu, 7 Jan 2021 16:11:30 +0000 Subject: [PATCH 55/70] feat: refactor check_config removing some game specific code (#3160) --- lgsm/functions/check_config.sh | 35 +++++++++++++++------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/lgsm/functions/check_config.sh b/lgsm/functions/check_config.sh index 2b4443cb3..ce9035744 100755 --- a/lgsm/functions/check_config.sh +++ b/lgsm/functions/check_config.sh @@ -6,26 +6,21 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -if [ ! -f "${servercfgfullpath}" ]; then - if [ "${shortname}" != "hw" ]&&[ "${shortname}" != "ut3" ]&&[ "${shortname}" != "kf2" ]; then - fn_print_dots "" - fn_print_warn_nl "Configuration file missing!" - echo -e "${servercfgfullpath}" - fn_script_log_warn "Configuration file missing!" - fn_script_log_warn "${servercfgfullpath}" - install_config.sh - fi +if [ -n "${servercfgfullpath}" ]&&[ ! -f "${servercfgfullpath}" ]; then + fn_print_dots "" + fn_print_warn_nl "Configuration file missing!" + echo -e "${servercfgfullpath}" + fn_script_log_warn "Configuration file missing!" + fn_script_log_warn "${servercfgfullpath}" + install_config.sh fi -if [ "${shortname}" == "rust" ]; then - if [ -z "${rconpassword}" ]; then - fn_print_dots "" - fn_print_fail_nl "RCON password is not set" - fn_script_log_fatal "RCON password is not set" - core_exit.sh - elif [ "${rconpassword}" == "CHANGE_ME" ]; then - fn_print_dots "" - fn_print_warn_nl "Default RCON Password detected" - fn_script_log_warn "Default RCON Password detected" - fi +if [ "${shortname}" == "rust" ]&&[ -v rconpassword ]&&[ -z "${rconpassword}" ]; then + fn_print_dots "" + fn_print_fail_nl "RCON password is not set" + fn_script_log_warn "RCON password is not set" +elif [ -v rconpassword ]&&[ "${rconpassword}" == "CHANGE_ME" ]; then + fn_print_dots "" + fn_print_warn_nl "Default RCON Password detected" + fn_script_log_warn "Default RCON Password detected" fi From 16e58f1d327b8c6818dd31114733f1c8dcbfafee Mon Sep 17 00:00:00 2001 From: Christian Date: Sat, 9 Jan 2021 00:10:57 +0100 Subject: [PATCH 56/70] fix(gmod): update link for wiki page (#3165) --- lgsm/config-default/config-lgsm/gmodserver/_default.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/gmodserver/_default.cfg b/lgsm/config-default/config-lgsm/gmodserver/_default.cfg index 1e8fb92aa..4bac3995c 100644 --- a/lgsm/config-default/config-lgsm/gmodserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/gmodserver/_default.cfg @@ -18,7 +18,7 @@ maxplayers="16" tickrate="66" gamemode="sandbox" -## Workshop Parameters | https://wiki.garrysmod.com/page/Workshop_for_Dedicated_Servers +## Workshop Parameters | https://wiki.facepunch.com/gmod/Workshop_for_Dedicated_Servers # To get an API key visit - https://steamcommunity.com/dev/apikey wsapikey="" wscollectionid="" From 681d878e9270eb6c442998b144af73e4b9ee19fe Mon Sep 17 00:00:00 2001 From: Christian Date: Sat, 9 Jan 2021 22:01:15 +0100 Subject: [PATCH 57/70] fix(steamcmd): fix branch switch (#3168) --- lgsm/functions/core_dl.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh index 01ffcfbc3..7bb346a85 100755 --- a/lgsm/functions/core_dl.sh +++ b/lgsm/functions/core_dl.sh @@ -61,7 +61,7 @@ fn_dl_steamcmd(){ # If using a specific branch. if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" -beta "${branch}" -betapassword "${betapassword}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" - elif [ -n "${branch}" ]&&[ "${branch}" != "public" ]; then + elif [ -n "${branch}" ]; then ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" -beta "${branch}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" else ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" @@ -70,7 +70,7 @@ fn_dl_steamcmd(){ elif [ "${shortname}" == "ac" ]||[ "${shortname}" == "jk2" ]; then if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then ${unbuffer} ${steamcmdcommand} +@sSteamCmdForcePlatformType windows +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" -betapassword "${betapassword}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" - elif [ -n "${branch}" ]&&[ "${branch}" != "public" ]; then + elif [ -n "${branch}" ]; then ${unbuffer} ${steamcmdcommand} +@sSteamCmdForcePlatformType windows +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" else ${unbuffer} ${steamcmdcommand} +@sSteamCmdForcePlatformType windows +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" @@ -79,7 +79,7 @@ fn_dl_steamcmd(){ else if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" -betapassword "${betapassword}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" - elif [ -n "${branch}" ]&&[ "${branch}" != "public" ]; then + elif [ -n "${branch}" ]; then ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" else ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" From 223b076cdd9186f488d651f52a597cca10ee391b Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 10 Jan 2021 01:22:04 +0100 Subject: [PATCH 58/70] feat(newserver): Vintage Story (#3156) Co-authored-by: Daniel Gibbs --- .../config-lgsm/vintsserver/_default.cfg | 171 ++++++++++++++++++ lgsm/data/serverlist.csv | 1 + lgsm/functions/check_deps.sh | 6 + lgsm/functions/command_update.sh | 2 + lgsm/functions/core_functions.sh | 5 + lgsm/functions/info_config.sh | 23 +++ lgsm/functions/info_messages.sh | 13 +- lgsm/functions/install_config.sh | 7 + lgsm/functions/install_server_files.sh | 2 + lgsm/functions/update_minecraft.sh | 2 +- lgsm/functions/update_vintagestory.sh | 145 +++++++++++++++ 11 files changed, 375 insertions(+), 2 deletions(-) create mode 100644 lgsm/config-default/config-lgsm/vintsserver/_default.cfg create mode 100755 lgsm/functions/update_vintagestory.sh diff --git a/lgsm/config-default/config-lgsm/vintsserver/_default.cfg b/lgsm/config-default/config-lgsm/vintsserver/_default.cfg new file mode 100644 index 000000000..e23baf8af --- /dev/null +++ b/lgsm/config-default/config-lgsm/vintsserver/_default.cfg @@ -0,0 +1,171 @@ +################################## +######## Default Settings ######## +################################## +# DO NOT EDIT, ANY CHANGES WILL BE OVERWRITTEN! +# Copy settings from here and use them in either: +# common.cfg - applies settings to every instance. +# [instance].cfg - applies settings to a specific instance. + +#### Game Server Settings #### + +## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters +fn_parms(){ +parms="--datapath ${servercfgdir}" +} + +## Release Settings | https://docs.linuxgsm.com/game-servers/vintagestory#release-settings +# Branch (stable|unstable) +branch="stable" + +#### LinuxGSM Settings #### + +## LinuxGSM Stats +# Send useful stats to LinuxGSM developers. +# https://docs.linuxgsm.com/configuration/linuxgsm-stats +# (on|off) +stats="off" + +## Notification Alerts +# (on|off) + +# Display IP | https://docs.linuxgsm.com/alerts#display-ip +displayip="" + +# More info | https://docs.linuxgsm.com/alerts#more-info +postalert="off" + +# Discord Alerts | https://docs.linuxgsm.com/alerts/discord +discordalert="off" +discordwebhook="webhook" + +# Email Alerts | https://docs.linuxgsm.com/alerts/email +emailalert="off" +email="email@example.com" +emailfrom="" + +# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt +iftttalert="off" +ifttttoken="accesstoken" +iftttevent="linuxgsm_alert" + +# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun +mailgunalert="off" +mailgunapiregion="us" +mailguntoken="accesstoken" +mailgundomain="example.com" +mailgunemailfrom="alert@example.com" +mailgunemail="email@myemail.com" + +# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet +pushbulletalert="off" +pushbullettoken="accesstoken" +channeltag="" + +# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover +pushoveralert="off" +pushovertoken="accesstoken" +pushoveruserkey="userkey" + +# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat +rocketchatalert="off" +rocketchatwebhook="webhook" +rocketchattoken="" + +# Slack Alerts | https://docs.linuxgsm.com/alerts/slack +slackalert="off" +slackwebhook="webhook" + +# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram +# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring". +# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help". +telegramalert="off" +telegramtoken="accesstoken" +telegramchatid="" +curlcustomstring="" + +## Updating | https://docs.linuxgsm.com/commands/update +updateonstart="off" + +## Backup | https://docs.linuxgsm.com/commands/backup +maxbackups="4" +maxbackupdays="30" +stoponbackup="on" + +## Logging | https://docs.linuxgsm.com/features/logging +consolelogging="on" +logdays="7" + +## Monitor | https://docs.linuxgsm.com/commands/monitor +# Query delay time +querydelay="1" + +## ANSI Colors | https://docs.linuxgsm.com/features/ansi-colors +ansi="on" + +#### Advanced Settings #### + +## Message Display Time | https://docs.linuxgsm.com/features/message-display-time +sleeptime="0.5" + +## Stop Mode | https://docs.linuxgsm.com/features/stop-mode +# 1: tmux kill +# 2: CTRL+c +# 3: quit +# 4: quit 120s +# 5: stop +# 6: q +# 7: exit +# 8: 7 Days to Die +# 9: GoldSrc +# 10: Avorion +# 11: end +stopmode="2" + +## Query mode +# 1: session only +# 2: gamedig (gsquery fallback) +# 3: gamedig +# 4: gsquery +# 5: tcp +querymode="5" +querytype="" + +## Console type +consoleverbose="yes" +consoleinteract="yes" + +## Game Server Details +# Do not edit +gamename="Vintage Story" +engine="vintagestory" +glibc="2.17" + +#### Directories #### +# Edit with care + +## Game Server Directories +systemdir="${serverfiles}" +executabledir="${systemdir}" +preexecutable="mono" +executable="./VintagestoryServer.exe" +servercfgdir="${serverfiles}/data/${selfname}" +servercfg="serverconfig.json" +servercfgdefault="serverconfig.json" +servercfgfullpath="${servercfgdir}/${servercfg}" + +## Backup Directory +backupdir="${lgsmdir}/backup" + +## Logging Directories +logdir="${rootdir}/log" +gamelogdir="${vsdataworld}/Logs" +lgsmlogdir="${logdir}/script" +consolelogdir="${logdir}/console" +lgsmlog="${lgsmlogdir}/${selfname}-script.log" +consolelog="${consolelogdir}/${selfname}-console.log" +alertlog="${lgsmlogdir}/${selfname}-alert.log" +postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log" + +## Logs Naming +lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" +consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" diff --git a/lgsm/data/serverlist.csv b/lgsm/data/serverlist.csv index 7786158f1..92f194046 100644 --- a/lgsm/data/serverlist.csv +++ b/lgsm/data/serverlist.csv @@ -104,6 +104,7 @@ ut2k4,ut2k4server,Unreal Tournament 2004 ut3,ut3server,Unreal Tournament 3 ut99,ut99server,Unreal Tournament 99 vs,vsserver,Vampire Slayer +vints,vintsserver,Vintage Story wet,wetserver,Wolfenstein: Enemy Territory wf,wfserver,Warfork wurm,wurmserver,Wurm Unlimited diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 621b12eae..5a9b34be8 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -452,6 +452,9 @@ fn_deps_build_debian(){ # Unreal Tournament elif [ "${shortname}" == "ut" ]; then array_deps_required+=( unzip ) + # Vintage Story + elif [ "${shortname}" == "vints" ]; then + array_deps_required+=( mono-complete ) # Wurm: Unlimited elif [ "${shortname}" == "wurm" ]; then array_deps_required+=( xvfb ) @@ -564,6 +567,9 @@ fn_deps_build_redhat(){ # Unreal Tournament elif [ "${shortname}" == "ut" ]; then array_deps_required+=( unzip ) + # Vintage Story + elif [ "${shortname}" == "vints" ]; then + array_deps_required+=( mono-complete ) # Wurm: Unlimited elif [ "${shortname}" == "wurm" ]; then array_deps_required+=( xorg-x11-server-Xvfb ) diff --git a/lgsm/functions/command_update.sh b/lgsm/functions/command_update.sh index b117cbec5..718f5d490 100755 --- a/lgsm/functions/command_update.sh +++ b/lgsm/functions/command_update.sh @@ -28,6 +28,8 @@ elif [ "${shortname}" == "mta" ]; then update_mta.sh elif [ "${shortname}" == "jk2" ]; then update_jediknight2.sh +elif [ "${shortname}" == "vints" ]; then + update_vintagestory.sh else update_steamcmd.sh fi diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index ce8458b5d..3a8c77def 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -649,6 +649,11 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } +update_vintagestory.sh(){ +functionfile="${FUNCNAME[0]}" +fn_fetch_function +} + fn_update_functions.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index 99eed24c4..3720c421e 100755 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -1548,6 +1548,27 @@ fn_info_config_col(){ fi } +fn_info_config_vintagestory(){ + if [ ! -f "${servercfgfullpath}" ]; then + servername="${unavailable}" + maxplayers="${unavailable}" + serverpassword="${unavailable}" + port="${unavailable}" + queryport="${unavailable}" + configip="${unavailable}" + else + servername=$(jq -r '.ServerName' "${servercfgfullpath}") + maxplayers=$(jq -r '.MaxClients' "${servercfgfullpath}") + serverpassword=$(jq -r 'select(.Password != null) | .Password' "${servercfgfullpath}") + port=$(jq -r '.Port' "${servercfgfullpath}") + queryport=${port:-"0"} + configip=$(jq -r 'select(.Ip != null) | .Ip' "${servercfgfullpath}") + + serverpassword=${serverpassword:-"NOT SET"} + configip=${configip:-"0.0.0.0"} + fi +} + if [ "${shortname}" == "ac" ]; then fn_info_config_assettocorsa elif [ "${shortname}" == "ark" ]; then @@ -1672,4 +1693,6 @@ elif [ "${shortname}" == "mh" ]; then fn_info_config_mordhau elif [ "${shortname}" == "pvr" ];then fn_info_config_pavlovvr +elif [ "${shortname}" == "vints" ]; then + fn_info_config_vintagestory fi diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index 177129bfd..93dbea45b 100755 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -572,7 +572,7 @@ fn_info_message_ports(){ parmslocation="${red}UNKNOWN${default}" # engines/games that require editing in the config file. - local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "Barotrauma" "dontstarve" "Eco" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Minecraft Bedrock" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" "wurm") + local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "Barotrauma" "dontstarve" "Eco" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Minecraft Bedrock" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" "Vintage Story" "wurm") for port_edit in "${ports_edit_array[@]}"; do if [ "${shortname}" == "ut3" ]; then parmslocation="${servercfgdir}/UTWeb.ini" @@ -1455,6 +1455,15 @@ fn_info_message_colony(){ } | column -s $'\t' -t } +fn_info_message_vintagestory(){ + echo "netstat -atunp | grep cli" + echo -e "" + { + echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" + echo -e "> Game\tINBOUND\t${port}\tTCP" + } | column -s $'\t' -t +} + fn_info_message_select_engine(){ # Display details depending on game or engine. if [ "${shortname}" == "ac" ]; then @@ -1573,6 +1582,8 @@ fn_info_message_select_engine(){ fn_info_message_pavlovvr elif [ "${shortname}" == "rust" ]; then fn_info_message_rust + elif [ "${shortname}" == "vints" ]; then + fn_info_message_vintagestory elif [ "${shortname}" == "wf" ]; then fn_info_message_warfork elif [ "${shortname}" == "wurm" ]; then diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index 052e535d2..3efb46a65 100755 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -793,6 +793,13 @@ elif [ "${shortname}" == "unt" ]; then fn_default_config_remote fn_set_config_vars fn_list_config_locations +elif [ "${shortname}" == "vints" ]; then + gamedirname="VintageStory" + array_configs+=( serverconfig.json ) + fn_fetch_default_config + fn_default_config_remote + fn_set_config_vars + fn_list_config_locations elif [ "${shortname}" == "vs" ]; then gamedirname="VampireSlayer" array_configs+=( server.cfg ) diff --git a/lgsm/functions/install_server_files.sh b/lgsm/functions/install_server_files.sh index f8b6be4f0..a3c40da37 100755 --- a/lgsm/functions/install_server_files.sh +++ b/lgsm/functions/install_server_files.sh @@ -91,6 +91,8 @@ elif [ "${shortname}" == "fctr" ]; then install_factorio_save.sh elif [ "${shortname}" == "jk2" ]; then update_jediknight2.sh +elif [ "${shortname}" == "vints" ]; then + update_vintagestory.sh elif [ -z "${appid}" ]||[ "${shortname}" == "ahl" ]||[ "${shortname}" == "bd" ]||[ "${shortname}" == "bb" ]||[ "${shortname}" == "ns" ]||[ "${shortname}" == "sfc" ]||[ "${shortname}" == "ts" ]||[ "${shortname}" == "vs" ]||[ "${shortname}" == "zmr" ]; then if [ "${shortname}" == "ut" ]; then install_eula.sh diff --git a/lgsm/functions/update_minecraft.sh b/lgsm/functions/update_minecraft.sh index e33840f3e..34adf43fc 100755 --- a/lgsm/functions/update_minecraft.sh +++ b/lgsm/functions/update_minecraft.sh @@ -88,10 +88,10 @@ fn_update_minecraft_compare(){ echo -e "Update available" echo -e "* Local build: ${red}${localbuild}${default}" echo -e "* Remote build: ${green}${remotebuild}${default}" - echo -en "\n" if [ -n "${branch}" ]; then echo -e "* Branch: ${branch}" fi + echo -en "\n" fn_script_log_info "Update available" fn_script_log_info "Local build: ${localbuild}" fn_script_log_info "Remote build: ${remotebuild}" diff --git a/lgsm/functions/update_vintagestory.sh b/lgsm/functions/update_vintagestory.sh new file mode 100755 index 000000000..98568f3ca --- /dev/null +++ b/lgsm/functions/update_vintagestory.sh @@ -0,0 +1,145 @@ +#!/bin/bash +# LinuxGSM update_vintagestory.sh function +# Author: Christian Birk +# Website: https://linuxgsm.com +# Description: Handles updating of Vintage Story servers. + +functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" + +fn_update_vs_dl(){ + # get version info for download + remotebuildresponse=$(curl -s "${apiurl}" | jq --arg version "${remotebuild}" '.[$version].server') + remotebuildfile=$(echo -e "${remotebuildresponse}" | jq -r '.filename') + remotebuildlink=$(echo -e "${remotebuildresponse}" | jq -r '.urls.cdn') + remotebuildmd5=$(echo -e "${remotebuildresponse}" | jq -r '.md5') + + # Download and extract files to serverfiles + fn_fetch_file "${remotebuildlink}" "" "" "" "${tmpdir}" "${remotebuildfile}" "nochmodx" "norun" "force" "${remotebuildmd5}" + fn_dl_extract "${tmpdir}" "${remotebuildfile}" "${serverfiles}" + fn_clear_tmp +} + +fn_update_vs_localbuild(){ + # Gets local build info. + fn_print_dots "Checking local build: ${remotelocation}" + # Uses executable to find local build. + cd "${executabledir}" || exit + if [ -f "${executable}" ]; then + localbuild="$(${preexecutable} ${executable} --version | sed '/^[[:space:]]*$/d')" + fn_print_ok "Checking local build: ${remotelocation}" + fn_script_log_pass "Checking local build" + else + localbuild="0" + fn_print_error "Checking local build: ${remotelocation}" + fn_script_log_error "Checking local build" + fi +} + +fn_update_vs_remotebuild(){ + if [ "${branch}" == "stable" ]; then + remotebuild=$(curl -s "${apiurl}" | jq -r '[ to_entries[] ] | .[].key' | grep -Ev "\-rc|\-pre" | sort -r -V | head -1) + else + remotebuild=$(curl -s "${apiurl}" | jq -r '[ to_entries[] ] | .[].key' | grep -E "\-rc|\-pre" | sort -r -V | head -1) + fi + + if [ "${firstcommandname}" != "INSTALL" ]; then + fn_print_dots "Checking remote build: ${remotelocation}" + # Checks if remotebuild variable has been set. + if [ -z "${remotebuild}" ]||[ "${remotebuild}" == "null" ]; then + fn_print_fail "Checking remote build: ${remotelocation}" + fn_script_log_fatal "Checking remote build" + core_exit.sh + else + fn_print_ok "Checking remote build: ${remotelocation}" + fn_script_log_pass "Checking remote build" + fi + else + # Checks if remotebuild variable has been set. + if [ -z "${remotebuild}" ]||[ "${remotebuild}" == "null" ]; then + fn_print_failure "Unable to get remote build" + fn_script_log_fatal "Unable to get remote build" + core_exit.sh + fi + fi +} + +fn_update_vs_compare(){ + # Removes dots so if statement can compare version numbers. + fn_print_dots "Checking for update: ${remotelocation}" + if [ "${localbuild}" != "${remotebuild}" ]||[ "${forceupdate}" == "1" ]; then + fn_print_ok_nl "Checking for update: ${remotelocation}" + echo -en "\n" + echo -e "Update available" + echo -e "* Local build: ${red}${localbuild}${default}" + echo -e "* Remote build: ${green}${remotebuild}${default}" + if [ -n "${branch}" ]; then + echo -e "* Branch: ${branch}" + fi + echo -en "\n" + fn_script_log_info "Update available" + fn_script_log_info "Local build: ${localbuild}" + fn_script_log_info "Remote build: ${remotebuild}" + fn_script_log_info "${localbuild} > ${remotebuild}" + + unset updateonstart + check_status.sh + # If server stopped. + if [ "${status}" == "0" ]; then + exitbypass=1 + fn_update_vs_dl + exitbypass=1 + command_start.sh + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + # If server started. + else + fn_print_restart_warning + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + exitbypass=1 + fn_update_vs_dl + exitbypass=1 + command_start.sh + fn_firstcommand_reset + fi + unset exitbypass + date +%s > "${lockdir}/lastupdate.lock" + alert="update" + alert.sh + else + fn_print_ok_nl "Checking for update: ${remotelocation}" + echo -en "\n" + echo -e "No update available" + echo -e "* Local build: ${green}${localbuild}${default}" + echo -e "* Remote build: ${green}${remotebuild}${default}" + if [ -n "${branch}" ]; then + echo -e "* Branch: ${branch}" + fi + echo -en "\n" + fn_script_log_info "No update available" + fn_script_log_info "Local build: ${localbuild}" + fn_script_log_info "Remote build: ${remotebuild}" + if [ -n "${branch}" ]; then + fn_script_log_info "Branch: ${branch}" + fi + fi +} + +# The location where the builds are checked and downloaded. +remotelocation="vintagestory.at" +apiurl="http://api.${remotelocation}/stable-unstable.json" +localversionfile="${datadir}/vintagestoryversion" + +if [ "${firstcommandname}" == "INSTALL" ]; then + fn_update_vs_remotebuild + fn_update_vs_dl +else + fn_print_dots "Checking for update" + fn_print_dots "Checking for update: ${remotelocation}" + fn_script_log_info "Checking for update: ${remotelocation}" + fn_update_vs_localbuild + fn_update_vs_remotebuild + fn_update_vs_compare +fi From 05e45700e7b2b2c87ac0840630c3da2be96c1dc5 Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 10 Jan 2021 23:26:22 +0100 Subject: [PATCH 59/70] feat(newserver): SCP: Secret Laboratory (#3163) --- .../config-lgsm/scpslserver/_default.cfg | 168 ++++++++++++++++++ .../config-lgsm/scpslsmserver/_default.cfg | 168 ++++++++++++++++++ lgsm/data/serverlist.csv | 2 + lgsm/functions/check_deps.sh | 3 + lgsm/functions/info_config.sh | 22 +++ lgsm/functions/info_messages.sh | 13 +- lgsm/functions/info_parms.sh | 7 + lgsm/functions/install_config.sh | 7 + 8 files changed, 389 insertions(+), 1 deletion(-) create mode 100644 lgsm/config-default/config-lgsm/scpslserver/_default.cfg create mode 100644 lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg diff --git a/lgsm/config-default/config-lgsm/scpslserver/_default.cfg b/lgsm/config-default/config-lgsm/scpslserver/_default.cfg new file mode 100644 index 000000000..4a706ae40 --- /dev/null +++ b/lgsm/config-default/config-lgsm/scpslserver/_default.cfg @@ -0,0 +1,168 @@ +################################## +######## Default Settings ######## +################################## +# DO NOT EDIT WILL BE OVERWRITTEN! +# Copy settings from here and use them in either +# common.cfg - applies settings to every instance +# [instance].cfg - applies settings to a specific instance + +#### Server Settings #### + +## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters +## All server settings except the server port are done in the config file: +## Docs: https://en.scpslgame.com/index.php?title=Docs:Server_Config +port="7777" + +## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters +fn_parms(){ +parms="${port}" +} + +#### LinuxGSM Settings #### + +## Notification Alerts +# (on|off) + +# Display IP | https://docs.linuxgsm.com/alerts#display-ip +displayip="" + +# More info | https://docs.linuxgsm.com/alerts#more-info +postalert="off" +postdays="7" +posttarget="https://hastebin.com" + +# Discord Alerts | https://docs.linuxgsm.com/alerts/discord +discordalert="off" +discordwebhook="webhook" + +# Slack Alerts | https://docs.linuxgsm.com/alerts/slack +slackalert="off" +slackwebhook="webhook" + +# Email Alerts | https://docs.linuxgsm.com/alerts/email +emailalert="off" +email="email@example.com" +emailfrom="" + +# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt +iftttalert="off" +ifttttoken="accesstoken" +iftttevent="linuxgsm_alert" + +# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun +mailgunalert="off" +mailguntoken="accesstoken" +mailgundomain="example.com" +mailgunemailfrom="alert@example.com" +mailgunemail="email@myemail.com" + +# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet +pushbulletalert="off" +pushbullettoken="accesstoken" +channeltag="" + +# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover +pushoveralert="off" +pushovertoken="accesstoken" + +# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram +# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". +# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need +# any custom string in curl - simple ignore this parameter. +telegramalert="off" +telegramtoken="accesstoken" +telegramchatid="" +curlcustomstring="" + +## Updating | https://docs.linuxgsm.com/commands/update +updateonstart="off" + +## Backup | https://docs.linuxgsm.com/commands/backup +maxbackups="4" +maxbackupdays="30" +stoponbackup="on" + +## Logging | https://docs.linuxgsm.com/features/logging +consolelogging="on" +logdays="7" + +## Monitor | https://docs.linuxgsm.com/commands/monitor +# Query delay time +querydelay="1" + +#### LinuxGSM Advanced Settings #### + +# ANSI Colors +ansi="on" + +# Message Display Time +sleeptime="0.5" + +# Stop Mode | https://docs.linuxgsm.com/steamcmd/stopmode +# 1: tmux kill +# 2: CTRL+c +# 3: quit +# 4: quit 120s +# 5: stop +# 6: q +# 7: exit +# 8: 7 Days to Die +# 9: Gold Source +# 10: Teamspeak 3 +stopmode="7" + +## Query mode +# 1: session only +# 2: gamedig + gsquery +# 3: gamedig +# 4: gsquery +# 5: tcp +querymode="1" +querytype="" + +## Console type +consoleverbose="yes" +consoleinteract="yes" + +## SteamCMD Settings +# Server appid +appid="996560" +# SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch +branch="" +# Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server +steammaster="" + +## LinuxGSM Server Details +# Do not edit +gamename="SCP: Secret Laboratory" +engine="unity3d" +glibc="2.27" + +#### Directories #### +# Edit with care + +## Server Specific Directories +systemdir="${serverfiles}" +executabledir="${systemdir}" +executable="./LocalAdmin" +servercfg="config_gameplay.txt" +servercfgdefault="config_gameplay.txt" +servercfgdir="${HOME}/.config/SCP Secret Laboratory/config/${port}" +servercfgfullpath="${servercfgdir}/${servercfg}" + +## Backup Directory +backupdir="${rootdir}/backups" + +## Logging Directories +logdir="${rootdir}/log" +gamelogdir="${HOME}/.config/SCP Secret Laboratory/LocalAdminLogs/${port}" +lgsmlogdir="${logdir}/script" +consolelogdir="${logdir}/console" +lgsmlog="${lgsmlogdir}/${selfname}-script.log" +consolelog="${consolelogdir}/${selfname}-console.log" +alertlog="${lgsmlogdir}/${selfname}-alert.log" +postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log" + +## Logs Naming +lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" +consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" diff --git a/lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg b/lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg new file mode 100644 index 000000000..4ac830f21 --- /dev/null +++ b/lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg @@ -0,0 +1,168 @@ +################################## +######## Default Settings ######## +################################## +# DO NOT EDIT WILL BE OVERWRITTEN! +# Copy settings from here and use them in either +# common.cfg - applies settings to every instance +# [instance].cfg - applies settings to a specific instance + +#### Server Settings #### + +## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters +## All server settings except the server port are done in the config file: +## Docs: https://en.scpslgame.com/index.php?title=Docs:Server_Config +port="7777" + +## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters +fn_parms(){ +parms="${port}" +} + +#### LinuxGSM Settings #### + +## Notification Alerts +# (on|off) + +# Display IP | https://docs.linuxgsm.com/alerts#display-ip +displayip="" + +# More info | https://docs.linuxgsm.com/alerts#more-info +postalert="off" +postdays="7" +posttarget="https://hastebin.com" + +# Discord Alerts | https://docs.linuxgsm.com/alerts/discord +discordalert="off" +discordwebhook="webhook" + +# Slack Alerts | https://docs.linuxgsm.com/alerts/slack +slackalert="off" +slackwebhook="webhook" + +# Email Alerts | https://docs.linuxgsm.com/alerts/email +emailalert="off" +email="email@example.com" +emailfrom="" + +# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt +iftttalert="off" +ifttttoken="accesstoken" +iftttevent="linuxgsm_alert" + +# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun +mailgunalert="off" +mailguntoken="accesstoken" +mailgundomain="example.com" +mailgunemailfrom="alert@example.com" +mailgunemail="email@myemail.com" + +# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet +pushbulletalert="off" +pushbullettoken="accesstoken" +channeltag="" + +# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover +pushoveralert="off" +pushovertoken="accesstoken" + +# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram +# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring". +# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need +# any custom string in curl - simple ignore this parameter. +telegramalert="off" +telegramtoken="accesstoken" +telegramchatid="" +curlcustomstring="" + +## Updating | https://docs.linuxgsm.com/commands/update +updateonstart="off" + +## Backup | https://docs.linuxgsm.com/commands/backup +maxbackups="4" +maxbackupdays="30" +stoponbackup="on" + +## Logging | https://docs.linuxgsm.com/features/logging +consolelogging="on" +logdays="7" + +## Monitor | https://docs.linuxgsm.com/commands/monitor +# Query delay time +querydelay="1" + +#### LinuxGSM Advanced Settings #### + +# ANSI Colors +ansi="on" + +# Message Display Time +sleeptime="0.5" + +# Stop Mode | https://docs.linuxgsm.com/steamcmd/stopmode +# 1: tmux kill +# 2: CTRL+c +# 3: quit +# 4: quit 120s +# 5: stop +# 6: q +# 7: exit +# 8: 7 Days to Die +# 9: Gold Source +# 10: Teamspeak 3 +stopmode="7" + +## Query mode +# 1: session only +# 2: gamedig + gsquery +# 3: gamedig +# 4: gsquery +# 5: tcp +querymode="1" +querytype="" + +## Console type +consoleverbose="yes" +consoleinteract="yes" + +## SteamCMD Settings +# Server appid +appid="786920" +# SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch +branch="" +# Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server +steammaster="" + +## LinuxGSM Server Details +# Do not edit +gamename="SCP: Secret Laboratory ServerMod" +engine="unity3d" +glibc="2.27" + +#### Directories #### +# Edit with care + +## Server Specific Directories +systemdir="${serverfiles}" +executabledir="${systemdir}" +executable="./LocalAdmin" +servercfg="config_gameplay.txt" +servercfgdefault="config_gameplay.txt" +servercfgdir="${HOME}/.config/SCP Secret Laboratory/config/${port}" +servercfgfullpath="${servercfgdir}/${servercfg}" + +## Backup Directory +backupdir="${rootdir}/backups" + +## Logging Directories +logdir="${rootdir}/log" +gamelogdir="${HOME}/.config/SCP Secret Laboratory/LocalAdminLogs/${port}" +lgsmlogdir="${logdir}/script" +consolelogdir="${logdir}/console" +lgsmlog="${lgsmlogdir}/${selfname}-script.log" +consolelog="${consolelogdir}/${selfname}-console.log" +alertlog="${lgsmlogdir}/${selfname}-alert.log" +postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log" + +## Logs Naming +lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" +consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" diff --git a/lgsm/data/serverlist.csv b/lgsm/data/serverlist.csv index 92f194046..79139f680 100644 --- a/lgsm/data/serverlist.csv +++ b/lgsm/data/serverlist.csv @@ -84,6 +84,8 @@ rw,rwserver,Rising World samp,sampserver,San Andreas Multiplayer sb,sbserver,Starbound sbots,sbotsserver,StickyBots +scpsl,scpslserver,SCP: Secret Laboratory +scpslsm,scpslsmserver,SCP: Secret Laboratory ServerMod sdtd,sdtdserver,7 Days to Die sfc,sfcserver,SourceForts Classic sof2,sof2server,Soldier Of Fortune 2: Gold Edition diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 5a9b34be8..70e5f5a09 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -437,6 +437,9 @@ fn_deps_build_debian(){ else array_deps_required+=( default-jre rng-tools ) fi + # SCP: Secret Laboratory, SCP: Secret Laboratory ServerMod + elif [ "${shortname}" == "scpsl" ]||[ "${shortname}" == "scpslsm" ]; then + array_deps_required+=( mono-complete ) # Sven Co-op elif [ "${shortname}" == "sven" ]; then array_deps_required+=( libssl1.1:i386 zlib1g:i386 ) diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index 3720c421e..ecf840961 100755 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -1569,6 +1569,26 @@ fn_info_config_vintagestory(){ fi } +fn_info_config_scpsl(){ + if [ -f "${servercfgfullpath}" ]; then + servername=$(sed -nr 's/^server_name: (.*)$/\1/p' "${servercfgfullpath}") + maxplayers=$(sed -nr 's/^max_players: (.*)$/\1/p' "${servercfgfullpath}") + configip=$(sed -nr 's/^ipv4_bind_ip: (.*)$/\1/p' "${servercfgfullpath}") + tickrate=$(sed -nr 's/^server_tickrate: (.*)$/\1/p' "${servercfgfullpath}") + adminpassword=$(sed -nr 's/^administrator_query_password: (.*)$/\1/p' "${servercfgfullpath}") + + if [ "${adminpassword}" == "none" ]; then + adminpassword="NOT SET" + fi + else + servername=${servername:-"NOT SET"} + maxplayers=${maxplayers:-"0"} + configip=${configip:-"0.0.0.0"} + tickrate=${tickrate:-"NOT SET"} + adminpassword=${adminpassword:-"NOT SET"} + fi +} + if [ "${shortname}" == "ac" ]; then fn_info_config_assettocorsa elif [ "${shortname}" == "ark" ]; then @@ -1673,6 +1693,8 @@ elif [ "${engine}" == "unreal3" ]; then fn_info_config_unreal3 elif [ "${shortname}" == "ut" ]; then fn_info_config_ut +elif [ "${shortname}" == "scpsl" ]||[ "${shortname}" == "scpslsm" ]; then + fn_info_config_scpsl elif [ "${shortname}" == "sdtd" ]; then fn_info_config_sdtd elif [ "${shortname}" == "wet" ]; then diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index 93dbea45b..4a834d797 100755 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -583,7 +583,7 @@ fn_info_message_ports(){ fi done # engines/games that require editing the parms. - local ports_edit_array=( "Avorion" "col" "goldsrc" "Factorio" "Hurtworld" "iw3.0" "ioquake3" "qfusion" "Rust" "Soldat" "spark" "source" "starbound" "unreal4" "realvirtuality" "Unturned" ) + local ports_edit_array=( "Avorion" "col" "goldsrc" "Factorio" "Hurtworld" "iw3.0" "ioquake3" "qfusion" "Rust" "scpsl" "scpslsm" "Soldat" "spark" "source" "starbound" "unreal4" "realvirtuality" "Unturned" ) for port_edit in "${ports_edit_array[@]}"; do if [ "${engine}" == "${port_edit}" ]||[ "${gamename}" == "${port_edit}" ]||[ "${shortname}" == "${port_edit}" ]; then parmslocation="${configdirserver}" @@ -1464,6 +1464,15 @@ fn_info_message_vintagestory(){ } | column -s $'\t' -t } +fn_info_message_scpsl(){ + echo -e "netstat -atunp | grep SCPSL" + echo -e "" + { + echo -e "${lightblue}DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL${default}" + echo -e "> Game\tINBOUND\t${port}\tudp" + } | column -s $'\t' -t +} + fn_info_message_select_engine(){ # Display details depending on game or engine. if [ "${shortname}" == "ac" ]; then @@ -1536,6 +1545,8 @@ fn_info_message_select_engine(){ fn_info_message_quakelive elif [ "${shortname}" == "samp" ]; then fn_info_message_samp + elif [ "${shortname}" == "scpsl" ]||[ "${shortname}" == "scpslsm" ]; then + fn_info_message_scpsl elif [ "${shortname}" == "sdtd" ]; then fn_info_message_sdtd elif [ "${shortname}" == "squad" ]; then diff --git a/lgsm/functions/info_parms.sh b/lgsm/functions/info_parms.sh index 74c29b9df..782f774d4 100755 --- a/lgsm/functions/info_parms.sh +++ b/lgsm/functions/info_parms.sh @@ -233,6 +233,10 @@ fn_info_parms_wf(){ webadminport=${webadminport:-"0"} } +fn_info_parms_queryport(){ + queryport="${port:-"0"}" +} + if [ "${shortname}" == "ark" ]; then fn_info_parms_ark elif [ "${shortname}" == "arma3" ]; then @@ -295,4 +299,7 @@ elif [ "${shortname}" == "ut" ]; then fn_info_parms_ut elif [ "${shortname}" == "wf" ]; then fn_info_parms_wf +# for servers that have a missing queryport from the config +elif [ "${shortname}" == "scpsl" ]||[ "${shortname}" == "scpslsm" ]; then + fn_info_parms_queryport fi diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index 3efb46a65..dbcb27e14 100755 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -667,6 +667,13 @@ elif [ "${shortname}" == "rust" ]; then fn_fetch_default_config fn_default_config_remote fn_list_config_locations +elif [ "${shortname}" == "scpsl" ]||[ "${shortname}" == "scpslsm" ]; then + gamedirname="SCPSecretLaboratory" + array_configs+=( config_gameplay.txt config_localadmin.txt ) + fn_fetch_default_config + fn_default_config_remote + fn_set_config_vars + fn_list_config_locations elif [ "${shortname}" == "sol" ]; then gamedirname="Soldat" array_configs+=( soldat.ini ) From 9cc0b3dac8e2c5f6faf9ae71bc45bb95b5032eec Mon Sep 17 00:00:00 2001 From: Christian Date: Sun, 10 Jan 2021 23:27:57 +0100 Subject: [PATCH 60/70] fix(rust): server config text change for rcon (#3175) Co-authored-by: Daniel Gibbs --- lgsm/config-default/config-lgsm/rustserver/_default.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/rustserver/_default.cfg b/lgsm/config-default/config-lgsm/rustserver/_default.cfg index b518b00ba..7ec79ab97 100644 --- a/lgsm/config-default/config-lgsm/rustserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/rustserver/_default.cfg @@ -14,7 +14,7 @@ port="28015" rconport="28016" appport=28082 rconpassword="CHANGE_ME" -rconweb="1" # Value is: 1 for the Facepunch web panel; 0 for RCON tools like Rusty or Rustadmin. +rconweb="1" # Value is: 1 for the Facepunch web panel, Rustadmin desktop and Rustadmin Online; 0 for RCON tools like Rusty. servername="Rust" maxplayers="50" seed="" # range: 1-2147483647, used to reproduce a procedural map. From cee98dc9950a343bef67b0438348284aee68dcec Mon Sep 17 00:00:00 2001 From: Christian Date: Mon, 11 Jan 2021 22:20:16 +0100 Subject: [PATCH 61/70] fix(steamcmd): remove unused parameter (#3170) --- lgsm/functions/core_steamcmd.sh | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/lgsm/functions/core_steamcmd.sh b/lgsm/functions/core_steamcmd.sh index 582eb93b6..bfdbce38c 100755 --- a/lgsm/functions/core_steamcmd.sh +++ b/lgsm/functions/core_steamcmd.sh @@ -13,16 +13,6 @@ fn_install_steamcmd(){ if [ ! -d "${steamcmddir}" ]; then mkdir -p "${steamcmddir}" fi - remote_fileurl="${1}" - remote_fileurl_backup="${2}" - remote_fileurl_name="${3}" - remote_fileurl_backup_name="${4}" - local_filedir="${5}" - local_filename="${6}" - chmodx="${7:-0}" - run="${8:-0}" - forcedl="${9:-0}" - md5="${10:-0}" fn_fetch_file "http://media.steampowered.com/client/steamcmd_linux.tar.gz" "" "" "" "${tmpdir}" "steamcmd_linux.tar.gz" "" "norun" "noforce" "nomd5" fn_dl_extract "${tmpdir}" "steamcmd_linux.tar.gz" "${steamcmddir}" chmod +x "${steamcmddir}/steamcmd.sh" From 778494ce3161d3ed5d64cbb0faa4b84f0adca2e0 Mon Sep 17 00:00:00 2001 From: Christian Date: Tue, 12 Jan 2021 22:50:09 +0100 Subject: [PATCH 62/70] fix(rust): wipe command does not wipe all sav files (#3183) --- lgsm/functions/command_wipe.sh | 36 +++++----------------------------- 1 file changed, 5 insertions(+), 31 deletions(-) diff --git a/lgsm/functions/command_wipe.sh b/lgsm/functions/command_wipe.sh index 3e0c53b2e..f48f9e5f8 100755 --- a/lgsm/functions/command_wipe.sh +++ b/lgsm/functions/command_wipe.sh @@ -38,19 +38,6 @@ fn_wipe_server_files(){ fn_sleep_time fn_script_log_pass "No procedural map file to remove" fi - # Wipe procedural map save. - if [ -n "$(find "${serveridentitydir}" -type f -name "proceduralmap.*.sav")" ]; then - echo -en "removing map saves proceduralmap.*.sav file(s)..." - fn_sleep_time - fn_script_log_info "Removing procedural map save(s): ${serveridentitydir}/proceduralmap.*.sav" - find "${serveridentitydir:?}" -type f -name "proceduralmap.*.sav" -delete | tee -a "${lgsmlog}" - fn_wipe_exit_code - fn_sleep_time - else - echo -e "no procedural map save to remove" - fn_sleep_time - fn_script_log_pass "No procedural map save to remove" - fi # Wipe Barren map. if [ -n "$(find "${serveridentitydir}" -type f -name "barren*.map")" ]; then echo -en "removing barren map barren*.map file(s)..." @@ -64,19 +51,6 @@ fn_wipe_server_files(){ fn_sleep_time fn_script_log_pass "No barren map file to remove" fi - # Wipe barren map save. - if [ -n "$(find "${serveridentitydir}" -type f -name "barren*.sav")" ]; then - echo -en "removing barren map saves barren*.sav file(s)..." - fn_sleep_time - fn_script_log_info "Removing barren map save(s): ${serveridentitydir}/barren*.sav" - find "${serveridentitydir:?}" -type f -name "barren*.sav" -delete | tee -a "${lgsmlog}" - fn_wipe_exit_code - fn_sleep_time - else - echo -e "no barren map save to remove" - fn_sleep_time - fn_script_log_pass "No barren map save to remove." - fi # Wipe custom map. if [ -n "$(find "${serveridentitydir}" -type f -name "*.map")" ]; then echo -en "removing custom map file(s)..." @@ -91,11 +65,11 @@ fn_wipe_server_files(){ fn_script_log_pass "No map file to remove" fi # Wipe custom map save. - if [ -n "$(find "${serveridentitydir}" -type f -name "*.sav")" ]; then - echo -en "removing map save *.sav file(s)..." + if [ -n "$(find "${serveridentitydir}" -type f -name "*.sav*")" ]; then + echo -en "removing map save *.sav* file(s)..." fn_sleep_time - fn_script_log_info "Removing map save(s): ${serveridentitydir}/*.sav" - find "${serveridentitydir:?}" -type f -name "*.sav" -delete | tee -a "${lgsmlog}" + fn_script_log_info "Removing map save(s): ${serveridentitydir}/*.sav*" + find "${serveridentitydir:?}" -type f -name "*.sav*" -delete | tee -a "${lgsmlog}" fn_wipe_exit_code fn_sleep_time else @@ -228,7 +202,7 @@ fn_print_dots "" check.sh # Check if there is something to wipe. -if [ -d "${serveridentitydir}/storage" ]||[ -d "${serveridentitydir}/user" ]||[ -n "$(find "${serveridentitydir}" -type f -name "proceduralmap*.sav")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "barren*.sav")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "Log.*.txt")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "player.deaths.*.db")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "player.blueprints.*.db")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "sv.files.*.db")" ]; then +if [ -d "${serveridentitydir}/storage" ]||[ -d "${serveridentitydir}/user" ]||[ -n "$(find "${serveridentitydir}" -type f -name "*.sav*")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "Log.*.txt")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "player.deaths.*.db")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "player.blueprints.*.db")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "sv.files.*.db")" ]; then fn_wipe_warning check_status.sh if [ "${status}" != "0" ]; then From 706bc358f0fce90d087a0707dfd23be4b1727951 Mon Sep 17 00:00:00 2001 From: Christian Date: Tue, 12 Jan 2021 22:51:30 +0100 Subject: [PATCH 63/70] feat(dev): add libc++.so.1 for dependency detection (#3181) Co-authored-by: Daniel Gibbs --- lgsm/functions/command_dev_detect_deps.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lgsm/functions/command_dev_detect_deps.sh b/lgsm/functions/command_dev_detect_deps.sh index 2a620fd66..c8271172e 100755 --- a/lgsm/functions/command_dev_detect_deps.sh +++ b/lgsm/functions/command_dev_detect_deps.sh @@ -155,6 +155,11 @@ while read -r lib; do echo -e "libfreetype6" >> "${tmpdir}/.depdetect_ubuntu_list" echo -e "libfreetype6" >> "${tmpdir}/.depdetect_debian_list" libdetected=1 + elif [ "${lib}" == "libc++.so.1" ]; then + echo -e "libcxx" >> "${tmpdir}/.depdetect_centos_list" + echo -e "libc++1" >> "${tmpdir}/.depdetect_ubuntu_list" + echo -e "libc++1" >> "${tmpdir}/.depdetect_debian_list" + libdetected=1 fi if [ "${libdetected}" != "1" ]; then From e096d3a347f0d0d29c23bdb96d6cee77026cbf98 Mon Sep 17 00:00:00 2001 From: Christian Date: Tue, 12 Jan 2021 22:52:03 +0100 Subject: [PATCH 64/70] fix(pvr): add new dependency (#3180) Co-authored-by: Daniel Gibbs --- lgsm/functions/check_deps.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 70e5f5a09..2ad38e481 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -464,6 +464,9 @@ fn_deps_build_debian(){ # Post Scriptum elif [ "${shortname}" == "pstbs" ]; then array_deps_required+=( libgconf-2-4 ) + # Pavlov VR + elif [ "${shortname}" == "pvr" ]; then + array_deps_required+=( libc++1 ) fi fn_deps_email fn_check_loop @@ -579,6 +582,9 @@ fn_deps_build_redhat(){ # Post Scriptum elif [ "${shortname}" == "pstbs" ]; then array_deps_required+=( GConf2 ) + # Pavlov VR + elif [ "${shortname}" == "pvr" ]; then + array_deps_required+=( libcxx ) fi fn_deps_email fn_check_loop From 1f821f97f4a72236a13dc2c05e227fc6b71983cb Mon Sep 17 00:00:00 2001 From: Christian Date: Tue, 12 Jan 2021 23:09:53 +0100 Subject: [PATCH 65/70] fix(inss): fix config to only use parameter (#3179) --- .../config-lgsm/inssserver/_default.cfg | 8 +++--- lgsm/functions/info_config.sh | 26 ------------------- 2 files changed, 4 insertions(+), 30 deletions(-) diff --git a/lgsm/config-default/config-lgsm/inssserver/_default.cfg b/lgsm/config-default/config-lgsm/inssserver/_default.cfg index 07bc89a60..2e8b29e16 100644 --- a/lgsm/config-default/config-lgsm/inssserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/inssserver/_default.cfg @@ -19,12 +19,13 @@ defaultscenario="Scenario_Crossing_Push_Security" maxplayers="28" ## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters +## Parameter Docs: https://sandstorm-support.newworldinteractive.com/hc/en-us/articles/360049211072-Server-Admin-Guide fn_parms(){ # Allows serverpassword to work with parameters - if [ "${serverpassword}" != "NOT SET" ]; then - parms="${defaultmap}?Scenario=${defaultscenario}?MaxPlayers=${maxplayers}?Port=${port}?QueryPort=${queryport}?password="${serverpassword}" -hostname="${servername}" -log" + if [ "${serverpassword}" != "" ]; then + parms="${defaultmap}?Scenario=${defaultscenario}?MaxPlayers=${maxplayers}?password='${serverpassword}' -Port=${port} -QueryPort=${queryport} -hostname="${servername}" -log" else - parms="${defaultmap}?Scenario=${defaultscenario}?MaxPlayers=${maxplayers}?Port=${port}?QueryPort=${queryport} -hostname="${servername}" -log" + parms="${defaultmap}?Scenario=${defaultscenario}?MaxPlayers=${maxplayers} -Port=${port} -QueryPort=${queryport} -hostname='${servername}' -log" fi } @@ -170,7 +171,6 @@ executable="./InsurgencyServer-Linux-Shipping" servercfgdir="${systemdir}/Saved/Config/LinuxServer" servercfg="Game.ini" servercfgdefault="Game.ini" -servercfgfullpath="${servercfgdir}/${servercfg}" ## Backup Directory backupdir="${lgsmdir}/backup" diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index ecf840961..ef782fa70 100755 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -405,30 +405,6 @@ fn_info_config_factorio(){ fi } -fn_info_config_inss(){ - if [ ! -f "${servercfgfullpath}" ]; then - rconenabled="${unavailable}" - rconpassword="${unavailable}" - rconport="${zero}" - maxplayers="${zero}" - port="${zero}" - queryport="${zero}" - queryenabled="${unavailable}" - rconport="${zero}" - gamemode="${unavailable}" - gameworld="${unavailable}" - else - rconenabled=$(grep "bEnabled" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bEnabled//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - rconpassword=$(grep "Password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - rconport=$(grep "ListenPort" "${servercfgfullpath}" | tr -cd '[:digit:]') - - # Not Set - rconenabled=${rconenabled:-"NOT SET"} - rconpassword=${rconpassword:-"NOT SET"} - rconport=${rconport:-"0"} - fi -} - fn_info_config_minecraft(){ if [ ! -f "${servercfgfullpath}" ]; then servername="${unavailable}" @@ -1623,8 +1599,6 @@ elif [ "${shortname}" == "eco" ]; then fn_info_config_eco elif [ "${shortname}" == "fctr" ]; then fn_info_config_factorio -elif [ "${shortname}" == "inss" ]; then - fn_info_config_inss elif [ "${shortname}" == "jc2" ]; then fn_info_config_justcause2 elif [ "${shortname}" == "jc3" ]; then From 50cd3d8f2a09b778c9e03bafd12c2c5028d8d3ed Mon Sep 17 00:00:00 2001 From: Christian Date: Thu, 14 Jan 2021 22:44:44 +0100 Subject: [PATCH 66/70] fix(steamcmd): fix update on start not starting the server (#3169) Co-authored-by: Daniel Gibbs --- lgsm/functions/core_steamcmd.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/core_steamcmd.sh b/lgsm/functions/core_steamcmd.sh index bfdbce38c..389880241 100755 --- a/lgsm/functions/core_steamcmd.sh +++ b/lgsm/functions/core_steamcmd.sh @@ -238,8 +238,8 @@ fn_update_steamcmd_compare(){ exitbypass=1 command_start.sh fn_firstcommand_reset + unset exitbypass fi - unset exitbypass date +%s > "${lockdir}/lastupdate.lock" alert="update" elif [ "${commandname}" == "CHECK-UPDATE" ]; then From add3a5cc9eca3b606ae53b1e0dfb66a6ee8391ea Mon Sep 17 00:00:00 2001 From: Christian Date: Thu, 14 Jan 2021 23:22:06 +0100 Subject: [PATCH 67/70] feat(steamcmd): set platformtype for steamcmd in the default config for the game server (#3167) --- lgsm/config-default/config-lgsm/acserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/ahl2server/_default.cfg | 1 + lgsm/config-default/config-lgsm/ahlserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/arkserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/arma3server/_default.cfg | 1 + lgsm/config-default/config-lgsm/avserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/bb2server/_default.cfg | 1 + lgsm/config-default/config-lgsm/bbserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/bdserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/bmdmserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/boserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/bsserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/bt1944server/_default.cfg | 1 + lgsm/config-default/config-lgsm/btserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/ccserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/cmwserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/colserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/csczserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/csgoserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/csserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/cssserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/dabserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/dmcserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/dodserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/dodsserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/doiserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/dstserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/dysserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/ecoserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/emserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/fofserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/gmodserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/hldmserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/hldmsserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/hwserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/insserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/inssserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/iosserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/jc2server/_default.cfg | 1 + lgsm/config-default/config-lgsm/jc3server/_default.cfg | 1 + lgsm/config-default/config-lgsm/jk2server/_default.cfg | 1 + lgsm/config-default/config-lgsm/kf2server/_default.cfg | 1 + lgsm/config-default/config-lgsm/kfserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/l4d2server/_default.cfg | 1 + lgsm/config-default/config-lgsm/l4dserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/mhserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/momserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/ndserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/nmrihserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/ns2cserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/ns2server/_default.cfg | 1 + lgsm/config-default/config-lgsm/nsserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/onsetserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/opforserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/pcserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/pstbsserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/pvrserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/pzserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/qlserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/ricochetserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/roserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/rustserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/rwserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/sbotsserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/sbserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/scpslserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/sdtdserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/sfcserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/solserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/squadserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/stserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/svenserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/terrariaserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/tf2server/_default.cfg | 1 + lgsm/config-default/config-lgsm/tfcserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/tsserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/tuserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/twserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/untserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/vsserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/wfserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/wurmserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/zmrserver/_default.cfg | 1 + lgsm/config-default/config-lgsm/zpsserver/_default.cfg | 1 + lgsm/functions/core_dl.sh | 2 +- 88 files changed, 88 insertions(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/acserver/_default.cfg b/lgsm/config-default/config-lgsm/acserver/_default.cfg index f64c34ac3..c0d82a5ab 100644 --- a/lgsm/config-default/config-lgsm/acserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/acserver/_default.cfg @@ -112,6 +112,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="302550" +steamcmdforcewindows="yes" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/ahl2server/_default.cfg b/lgsm/config-default/config-lgsm/ahl2server/_default.cfg index 505076703..8e1c62fbf 100644 --- a/lgsm/config-default/config-lgsm/ahl2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ahl2server/_default.cfg @@ -141,6 +141,7 @@ querytype="protocol-valve" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="985050" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/ahlserver/_default.cfg b/lgsm/config-default/config-lgsm/ahlserver/_default.cfg index 9e52094a0..da64ff4a0 100644 --- a/lgsm/config-default/config-lgsm/ahlserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ahlserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="cstrike" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/arkserver/_default.cfg b/lgsm/config-default/config-lgsm/arkserver/_default.cfg index f289cd1fb..f5ac04477 100644 --- a/lgsm/config-default/config-lgsm/arkserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/arkserver/_default.cfg @@ -116,6 +116,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="376030" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/arma3server/_default.cfg b/lgsm/config-default/config-lgsm/arma3server/_default.cfg index acdbedb59..bacd851f3 100644 --- a/lgsm/config-default/config-lgsm/arma3server/_default.cfg +++ b/lgsm/config-default/config-lgsm/arma3server/_default.cfg @@ -129,6 +129,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="233780" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/avserver/_default.cfg b/lgsm/config-default/config-lgsm/avserver/_default.cfg index a8e6fb049..36703b30c 100644 --- a/lgsm/config-default/config-lgsm/avserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/avserver/_default.cfg @@ -112,6 +112,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="565060" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/bb2server/_default.cfg b/lgsm/config-default/config-lgsm/bb2server/_default.cfg index 2f35f1c9d..2ba9bd914 100644 --- a/lgsm/config-default/config-lgsm/bb2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/bb2server/_default.cfg @@ -119,6 +119,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="475370" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/bbserver/_default.cfg b/lgsm/config-default/config-lgsm/bbserver/_default.cfg index 573c9964b..ace128b19 100644 --- a/lgsm/config-default/config-lgsm/bbserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bbserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="cstrike" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/bdserver/_default.cfg b/lgsm/config-default/config-lgsm/bdserver/_default.cfg index 746169c5b..6dea0c4c0 100644 --- a/lgsm/config-default/config-lgsm/bdserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bdserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="817300" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg b/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg index b9ebbce02..c844d94a1 100644 --- a/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg @@ -119,6 +119,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="346680" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/boserver/_default.cfg b/lgsm/config-default/config-lgsm/boserver/_default.cfg index 907f72a4c..0095661c9 100644 --- a/lgsm/config-default/config-lgsm/boserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/boserver/_default.cfg @@ -112,6 +112,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="416880" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/bsserver/_default.cfg b/lgsm/config-default/config-lgsm/bsserver/_default.cfg index f23980d49..a43270618 100644 --- a/lgsm/config-default/config-lgsm/bsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/bsserver/_default.cfg @@ -123,6 +123,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="228780" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/bt1944server/_default.cfg b/lgsm/config-default/config-lgsm/bt1944server/_default.cfg index 84b059dbe..7ec7dc257 100644 --- a/lgsm/config-default/config-lgsm/bt1944server/_default.cfg +++ b/lgsm/config-default/config-lgsm/bt1944server/_default.cfg @@ -111,6 +111,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="805140" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/btserver/_default.cfg b/lgsm/config-default/config-lgsm/btserver/_default.cfg index c22a70533..b1014cbdc 100644 --- a/lgsm/config-default/config-lgsm/btserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/btserver/_default.cfg @@ -106,6 +106,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="1026340" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/ccserver/_default.cfg b/lgsm/config-default/config-lgsm/ccserver/_default.cfg index 202535ce1..866d9b1eb 100644 --- a/lgsm/config-default/config-lgsm/ccserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ccserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="383410" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/cmwserver/_default.cfg b/lgsm/config-default/config-lgsm/cmwserver/_default.cfg index 3f3e29c8b..c8e09c8da 100644 --- a/lgsm/config-default/config-lgsm/cmwserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/cmwserver/_default.cfg @@ -115,6 +115,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="220070" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/colserver/_default.cfg b/lgsm/config-default/config-lgsm/colserver/_default.cfg index 5be0776cf..63a60b6c8 100644 --- a/lgsm/config-default/config-lgsm/colserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/colserver/_default.cfg @@ -107,6 +107,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="748090" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/csczserver/_default.cfg b/lgsm/config-default/config-lgsm/csczserver/_default.cfg index a0fb7fea8..fbe8fb9f1 100644 --- a/lgsm/config-default/config-lgsm/csczserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/csczserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="czero" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/csgoserver/_default.cfg b/lgsm/config-default/config-lgsm/csgoserver/_default.cfg index 2ed74049e..31afc3b43 100644 --- a/lgsm/config-default/config-lgsm/csgoserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/csgoserver/_default.cfg @@ -139,6 +139,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="740" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/csserver/_default.cfg b/lgsm/config-default/config-lgsm/csserver/_default.cfg index a5661c890..e4eb45909 100644 --- a/lgsm/config-default/config-lgsm/csserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/csserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="cstrike" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/cssserver/_default.cfg b/lgsm/config-default/config-lgsm/cssserver/_default.cfg index 56f430bb6..5dd2d09a3 100644 --- a/lgsm/config-default/config-lgsm/cssserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/cssserver/_default.cfg @@ -119,6 +119,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="232330" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/dabserver/_default.cfg b/lgsm/config-default/config-lgsm/dabserver/_default.cfg index ea6bcf390..2ba9c66c3 100644 --- a/lgsm/config-default/config-lgsm/dabserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dabserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="317800" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/dmcserver/_default.cfg b/lgsm/config-default/config-lgsm/dmcserver/_default.cfg index 8babab1dd..e13d16998 100644 --- a/lgsm/config-default/config-lgsm/dmcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dmcserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="dmc" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/dodserver/_default.cfg b/lgsm/config-default/config-lgsm/dodserver/_default.cfg index 83b051930..768cd5916 100644 --- a/lgsm/config-default/config-lgsm/dodserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dodserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="dod" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/dodsserver/_default.cfg b/lgsm/config-default/config-lgsm/dodsserver/_default.cfg index 3af945122..edfe49b05 100644 --- a/lgsm/config-default/config-lgsm/dodsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dodsserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="232290" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/doiserver/_default.cfg b/lgsm/config-default/config-lgsm/doiserver/_default.cfg index deb15b2dc..040b51a77 100644 --- a/lgsm/config-default/config-lgsm/doiserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/doiserver/_default.cfg @@ -115,6 +115,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="462310" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/dstserver/_default.cfg b/lgsm/config-default/config-lgsm/dstserver/_default.cfg index 6e746fb83..4c2373c83 100644 --- a/lgsm/config-default/config-lgsm/dstserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dstserver/_default.cfg @@ -117,6 +117,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="343050" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/dysserver/_default.cfg b/lgsm/config-default/config-lgsm/dysserver/_default.cfg index c45a12bee..9492acfda 100644 --- a/lgsm/config-default/config-lgsm/dysserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/dysserver/_default.cfg @@ -119,6 +119,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="17585" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/ecoserver/_default.cfg b/lgsm/config-default/config-lgsm/ecoserver/_default.cfg index c515595e2..b9cc4eb9b 100644 --- a/lgsm/config-default/config-lgsm/ecoserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ecoserver/_default.cfg @@ -106,6 +106,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="739590" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/emserver/_default.cfg b/lgsm/config-default/config-lgsm/emserver/_default.cfg index be13dac6b..293df0749 100644 --- a/lgsm/config-default/config-lgsm/emserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/emserver/_default.cfg @@ -119,6 +119,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="460040" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/fofserver/_default.cfg b/lgsm/config-default/config-lgsm/fofserver/_default.cfg index 1452805b8..5cfab32fd 100644 --- a/lgsm/config-default/config-lgsm/fofserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/fofserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="295230" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/gmodserver/_default.cfg b/lgsm/config-default/config-lgsm/gmodserver/_default.cfg index 4bac3995c..bdd9296e0 100644 --- a/lgsm/config-default/config-lgsm/gmodserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/gmodserver/_default.cfg @@ -130,6 +130,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="4020" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg b/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg index f356b1238..aa4515806 100644 --- a/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="232370" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/hldmserver/_default.cfg b/lgsm/config-default/config-lgsm/hldmserver/_default.cfg index 41b702789..79daf5607 100644 --- a/lgsm/config-default/config-lgsm/hldmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/hldmserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg b/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg index 7c04267ad..e174f48ef 100644 --- a/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="255470" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/hwserver/_default.cfg b/lgsm/config-default/config-lgsm/hwserver/_default.cfg index eda9972d3..37b1e171c 100644 --- a/lgsm/config-default/config-lgsm/hwserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/hwserver/_default.cfg @@ -125,6 +125,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="405100" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/insserver/_default.cfg b/lgsm/config-default/config-lgsm/insserver/_default.cfg index 50e3e8721..3302251e2 100644 --- a/lgsm/config-default/config-lgsm/insserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/insserver/_default.cfg @@ -120,6 +120,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="237410" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/inssserver/_default.cfg b/lgsm/config-default/config-lgsm/inssserver/_default.cfg index 2e8b29e16..c7d600980 100644 --- a/lgsm/config-default/config-lgsm/inssserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/inssserver/_default.cfg @@ -122,6 +122,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="581330" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/iosserver/_default.cfg b/lgsm/config-default/config-lgsm/iosserver/_default.cfg index c322ed383..9420ed294 100644 --- a/lgsm/config-default/config-lgsm/iosserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/iosserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="673990" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/jc2server/_default.cfg b/lgsm/config-default/config-lgsm/jc2server/_default.cfg index c57af02ea..a7b45a24a 100644 --- a/lgsm/config-default/config-lgsm/jc2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/jc2server/_default.cfg @@ -106,6 +106,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="261140" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/jc3server/_default.cfg b/lgsm/config-default/config-lgsm/jc3server/_default.cfg index e208a42f4..368b815aa 100644 --- a/lgsm/config-default/config-lgsm/jc3server/_default.cfg +++ b/lgsm/config-default/config-lgsm/jc3server/_default.cfg @@ -106,6 +106,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="619960" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/jk2server/_default.cfg b/lgsm/config-default/config-lgsm/jk2server/_default.cfg index cb42989a7..0aa6710a6 100644 --- a/lgsm/config-default/config-lgsm/jk2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/jk2server/_default.cfg @@ -135,6 +135,7 @@ consoleinteract="yes" ## SteamCMD Settings # Server appid appid="6030" +steamcmdforcewindows="yes" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" # Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server diff --git a/lgsm/config-default/config-lgsm/kf2server/_default.cfg b/lgsm/config-default/config-lgsm/kf2server/_default.cfg index 175e082ab..8fb108406 100644 --- a/lgsm/config-default/config-lgsm/kf2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/kf2server/_default.cfg @@ -112,6 +112,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="232130" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/kfserver/_default.cfg b/lgsm/config-default/config-lgsm/kfserver/_default.cfg index 0169f48d0..972351bd2 100644 --- a/lgsm/config-default/config-lgsm/kfserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/kfserver/_default.cfg @@ -118,6 +118,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="215360" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/l4d2server/_default.cfg b/lgsm/config-default/config-lgsm/l4d2server/_default.cfg index 718432852..66112ed91 100644 --- a/lgsm/config-default/config-lgsm/l4d2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/l4d2server/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="222860" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/l4dserver/_default.cfg b/lgsm/config-default/config-lgsm/l4dserver/_default.cfg index beacac9bb..22833b5b8 100644 --- a/lgsm/config-default/config-lgsm/l4dserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/l4dserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="222840" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/mhserver/_default.cfg b/lgsm/config-default/config-lgsm/mhserver/_default.cfg index c71081b89..1af879ac1 100644 --- a/lgsm/config-default/config-lgsm/mhserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/mhserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="629800" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/momserver/_default.cfg b/lgsm/config-default/config-lgsm/momserver/_default.cfg index 7909b67e2..1a4569052 100644 --- a/lgsm/config-default/config-lgsm/momserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/momserver/_default.cfg @@ -112,6 +112,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="897590" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/ndserver/_default.cfg b/lgsm/config-default/config-lgsm/ndserver/_default.cfg index 7ef270919..446b9a151 100644 --- a/lgsm/config-default/config-lgsm/ndserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ndserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="111710" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg b/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg index 41c057356..799a919c7 100644 --- a/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg @@ -119,6 +119,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="317670" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg b/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg index 1ccb9706e..c65047fff 100644 --- a/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg @@ -121,6 +121,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="313900" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/ns2server/_default.cfg b/lgsm/config-default/config-lgsm/ns2server/_default.cfg index c132d539d..58e1da031 100644 --- a/lgsm/config-default/config-lgsm/ns2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/ns2server/_default.cfg @@ -125,6 +125,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="4940" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/nsserver/_default.cfg b/lgsm/config-default/config-lgsm/nsserver/_default.cfg index 2a2425f73..d1e223469 100644 --- a/lgsm/config-default/config-lgsm/nsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/nsserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="cstrike" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/onsetserver/_default.cfg b/lgsm/config-default/config-lgsm/onsetserver/_default.cfg index d564020ed..4301a2e72 100644 --- a/lgsm/config-default/config-lgsm/onsetserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/onsetserver/_default.cfg @@ -106,6 +106,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="1204170" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/opforserver/_default.cfg b/lgsm/config-default/config-lgsm/opforserver/_default.cfg index f0e54f511..1af66199d 100644 --- a/lgsm/config-default/config-lgsm/opforserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/opforserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="gearbox" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/pcserver/_default.cfg b/lgsm/config-default/config-lgsm/pcserver/_default.cfg index c02992f92..3f1f88292 100644 --- a/lgsm/config-default/config-lgsm/pcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pcserver/_default.cfg @@ -106,6 +106,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="332670" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg b/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg index 62a8af0ba..c3ec4ec3f 100644 --- a/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg @@ -116,6 +116,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="746200" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg b/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg index 96442da3d..b8b96d735 100644 --- a/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="17575" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/pvrserver/_default.cfg b/lgsm/config-default/config-lgsm/pvrserver/_default.cfg index 0177b2a95..e2373f9fd 100644 --- a/lgsm/config-default/config-lgsm/pvrserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pvrserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="622970" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/pzserver/_default.cfg b/lgsm/config-default/config-lgsm/pzserver/_default.cfg index ab22be682..9995baeea 100644 --- a/lgsm/config-default/config-lgsm/pzserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/pzserver/_default.cfg @@ -110,6 +110,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="380870" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/qlserver/_default.cfg b/lgsm/config-default/config-lgsm/qlserver/_default.cfg index 25d1f43bc..ad44f6c29 100644 --- a/lgsm/config-default/config-lgsm/qlserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/qlserver/_default.cfg @@ -106,6 +106,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="349090" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg b/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg index c443cbb47..187ca2ede 100644 --- a/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="ricochet" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/roserver/_default.cfg b/lgsm/config-default/config-lgsm/roserver/_default.cfg index f5659b550..96f26998a 100644 --- a/lgsm/config-default/config-lgsm/roserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/roserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="223250" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/rustserver/_default.cfg b/lgsm/config-default/config-lgsm/rustserver/_default.cfg index 7ec79ab97..db48ddd55 100644 --- a/lgsm/config-default/config-lgsm/rustserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/rustserver/_default.cfg @@ -121,6 +121,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="258550" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/rwserver/_default.cfg b/lgsm/config-default/config-lgsm/rwserver/_default.cfg index cddf99818..0a83c50d9 100644 --- a/lgsm/config-default/config-lgsm/rwserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/rwserver/_default.cfg @@ -109,6 +109,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="339010" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg b/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg index c0867e1c8..628b921e2 100644 --- a/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="974130" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/sbserver/_default.cfg b/lgsm/config-default/config-lgsm/sbserver/_default.cfg index b3bffbcad..d6cbf5f8d 100644 --- a/lgsm/config-default/config-lgsm/sbserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sbserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="211820" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/scpslserver/_default.cfg b/lgsm/config-default/config-lgsm/scpslserver/_default.cfg index 4a706ae40..e1753d071 100644 --- a/lgsm/config-default/config-lgsm/scpslserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/scpslserver/_default.cfg @@ -127,6 +127,7 @@ consoleinteract="yes" ## SteamCMD Settings # Server appid appid="996560" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" # Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server diff --git a/lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg b/lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg index 4ac830f21..905918e9a 100644 --- a/lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/scpslsmserver/_default.cfg @@ -127,6 +127,7 @@ consoleinteract="yes" ## SteamCMD Settings # Server appid appid="786920" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" # Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server diff --git a/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg b/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg index 3dad1f106..d2b754e6b 100644 --- a/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg @@ -109,6 +109,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="294420" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/sfcserver/_default.cfg b/lgsm/config-default/config-lgsm/sfcserver/_default.cfg index 746b9e84c..5edbb791a 100644 --- a/lgsm/config-default/config-lgsm/sfcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/sfcserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="244310" # Source 2013 SDK +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/solserver/_default.cfg b/lgsm/config-default/config-lgsm/solserver/_default.cfg index b0fda3b81..e23a90421 100644 --- a/lgsm/config-default/config-lgsm/solserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/solserver/_default.cfg @@ -107,6 +107,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="638500" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/squadserver/_default.cfg b/lgsm/config-default/config-lgsm/squadserver/_default.cfg index c329b06b4..62be29db5 100644 --- a/lgsm/config-default/config-lgsm/squadserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/squadserver/_default.cfg @@ -111,6 +111,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="403240" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/stserver/_default.cfg b/lgsm/config-default/config-lgsm/stserver/_default.cfg index d7caf33e6..b0aa30fd6 100644 --- a/lgsm/config-default/config-lgsm/stserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/stserver/_default.cfg @@ -116,6 +116,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="600760" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/svenserver/_default.cfg b/lgsm/config-default/config-lgsm/svenserver/_default.cfg index 908dd046d..7647d7566 100644 --- a/lgsm/config-default/config-lgsm/svenserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/svenserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="276060" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg b/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg index 79e683f65..6b9f66d3e 100644 --- a/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="105600" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/tf2server/_default.cfg b/lgsm/config-default/config-lgsm/tf2server/_default.cfg index 3aa580d39..cc3ed416f 100644 --- a/lgsm/config-default/config-lgsm/tf2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/tf2server/_default.cfg @@ -119,6 +119,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="232250" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/tfcserver/_default.cfg b/lgsm/config-default/config-lgsm/tfcserver/_default.cfg index c29b43642..ec8dcdcb3 100644 --- a/lgsm/config-default/config-lgsm/tfcserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/tfcserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="tfc" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/tsserver/_default.cfg b/lgsm/config-default/config-lgsm/tsserver/_default.cfg index fb4fb9f01..a0c62e430 100644 --- a/lgsm/config-default/config-lgsm/tsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/tsserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="cstrike" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/tuserver/_default.cfg b/lgsm/config-default/config-lgsm/tuserver/_default.cfg index eed1cbdcb..799be9a80 100644 --- a/lgsm/config-default/config-lgsm/tuserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/tuserver/_default.cfg @@ -116,6 +116,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="439660" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/twserver/_default.cfg b/lgsm/config-default/config-lgsm/twserver/_default.cfg index 9140ed859..40f81d959 100644 --- a/lgsm/config-default/config-lgsm/twserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/twserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="380840" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/untserver/_default.cfg b/lgsm/config-default/config-lgsm/untserver/_default.cfg index 1a8230e0a..36445e51d 100644 --- a/lgsm/config-default/config-lgsm/untserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/untserver/_default.cfg @@ -112,6 +112,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="1110390" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/vsserver/_default.cfg b/lgsm/config-default/config-lgsm/vsserver/_default.cfg index f6bb4394c..83ae3b82c 100644 --- a/lgsm/config-default/config-lgsm/vsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/vsserver/_default.cfg @@ -113,6 +113,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="90" +steamcmdforcewindows="no" appidmod="cstrike" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/wfserver/_default.cfg b/lgsm/config-default/config-lgsm/wfserver/_default.cfg index 73f0bb8df..957124aae 100644 --- a/lgsm/config-default/config-lgsm/wfserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/wfserver/_default.cfg @@ -131,6 +131,7 @@ querytype="protocol-quake3" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="1136510" +steamcmdforcewindows="no" appidmod="warfork" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" diff --git a/lgsm/config-default/config-lgsm/wurmserver/_default.cfg b/lgsm/config-default/config-lgsm/wurmserver/_default.cfg index 0ad05ae4b..0a2131adf 100644 --- a/lgsm/config-default/config-lgsm/wurmserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/wurmserver/_default.cfg @@ -105,6 +105,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="402370" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/zmrserver/_default.cfg b/lgsm/config-default/config-lgsm/zmrserver/_default.cfg index ce5cb3329..3eccd1daa 100644 --- a/lgsm/config-default/config-lgsm/zmrserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/zmrserver/_default.cfg @@ -114,6 +114,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="244310" # Source 2013 SDK +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/config-default/config-lgsm/zpsserver/_default.cfg b/lgsm/config-default/config-lgsm/zpsserver/_default.cfg index cf26a9e84..c30c533b5 100644 --- a/lgsm/config-default/config-lgsm/zpsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/zpsserver/_default.cfg @@ -119,6 +119,7 @@ sleeptime="0.5" ## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd # Server appid appid="17505" +steamcmdforcewindows="no" # SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch branch="" betapassword="" diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh index 7bb346a85..eaaddf5c7 100755 --- a/lgsm/functions/core_dl.sh +++ b/lgsm/functions/core_dl.sh @@ -67,7 +67,7 @@ fn_dl_steamcmd(){ ${unbuffer} ${steamcmdcommand} +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" fi # Force Windows Platform type. - elif [ "${shortname}" == "ac" ]||[ "${shortname}" == "jk2" ]; then + elif [ "${steamcmdforcewindows}" == "yes" ]; then if [ -n "${branch}" ]&&[ -n "${betapassword}" ]; then ${unbuffer} ${steamcmdcommand} +@sSteamCmdForcePlatformType windows +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta "${branch}" -betapassword "${betapassword}" ${validate} +quit | uniq | tee -a "${lgsmlog}" "${steamcmdlog}" elif [ -n "${branch}" ]; then From 45f91d28735b93b1b4254c5e1fcf93ce4b7d7406 Mon Sep 17 00:00:00 2001 From: Christian Date: Sat, 16 Jan 2021 00:53:49 +0100 Subject: [PATCH 68/70] fix(steamcmd): add dependency SDL 32bit for debian and ubuntu (#3186) --- lgsm/functions/check_deps.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 2ad38e481..4b83bf2f1 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -364,7 +364,7 @@ fn_deps_build_debian(){ if [ "${distroversion}" == "14.04" ]||[ "${distroid}" == "debian" ]&& ! grep -qE "^deb .*non-free" /etc/apt/sources.list; then : else - array_deps_required+=( steamcmd ) + array_deps_required+=( steamcmd libsdl2-2.0-0:i386 ) fi fi From f449154a95f9fe5456816380764eea8b872a4b9a Mon Sep 17 00:00:00 2001 From: Christian Date: Sat, 16 Jan 2021 16:46:29 +0100 Subject: [PATCH 69/70] fix(stop): change csgoserver stop mode (#3171) Co-authored-by: Daniel Gibbs --- lgsm/config-default/config-lgsm/csgoserver/_default.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/csgoserver/_default.cfg b/lgsm/config-default/config-lgsm/csgoserver/_default.cfg index 31afc3b43..c5a44b820 100644 --- a/lgsm/config-default/config-lgsm/csgoserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/csgoserver/_default.cfg @@ -158,7 +158,7 @@ steammaster="true" # 9: GoldSrc # 10: Avorion # 11: end -stopmode="3" +stopmode="9" ## Query mode # 1: session only From 2bc7b309ce0c1a341920f3750bbff589865baf44 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sat, 16 Jan 2021 15:51:34 +0000 Subject: [PATCH 70/70] fix(update): non-steam updates to not always require restarting if stopped (#3173) --- lgsm/functions/update_factorio.sh | 14 ++++++++------ lgsm/functions/update_jediknight2.sh | 18 ++++++++++-------- lgsm/functions/update_minecraft.sh | 13 ++++++++----- lgsm/functions/update_minecraft_bedrock.sh | 14 +++++++++----- lgsm/functions/update_mta.sh | 14 +++++++++----- lgsm/functions/update_mumble.sh | 13 ++++++++----- lgsm/functions/update_ts3.sh | 14 +++++++++----- lgsm/functions/update_vintagestory.sh | 14 ++++++++------ 8 files changed, 69 insertions(+), 45 deletions(-) diff --git a/lgsm/functions/update_factorio.sh b/lgsm/functions/update_factorio.sh index f13a48c43..3e01e4203 100644 --- a/lgsm/functions/update_factorio.sh +++ b/lgsm/functions/update_factorio.sh @@ -94,12 +94,14 @@ fn_update_factorio_compare(){ if [ "${status}" == "0" ]; then exitbypass=1 fn_update_factorio_dl - exitbypass=1 - command_start.sh - fn_firstcommand_reset - exitbypass=1 - command_stop.sh - fn_firstcommand_reset + if [ "${requirerestart}" == "1" ]; then + exitbypass=1 + command_start.sh + fn_firstcommand_reset + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + fi # If server started. else fn_print_restart_warning diff --git a/lgsm/functions/update_jediknight2.sh b/lgsm/functions/update_jediknight2.sh index c2bdca1b6..bddb7ec93 100644 --- a/lgsm/functions/update_jediknight2.sh +++ b/lgsm/functions/update_jediknight2.sh @@ -4,9 +4,7 @@ # Website: https://linuxgsm.com # Description: Handles updating of jk2 servers. -local commandname="UPDATE" -local commandaction="Update" -local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" +functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" fn_update_jk2_dl(){ fn_fetch_file "https://github.com/mvdevs/jk2mv/releases/download/${remotebuild}/jk2mv-v${remotebuild}-dedicated.zip" "" "" "" "${tmpdir}" "jk2mv-${remotebuild}-dedicated.zip" "" "norun" "noforce" "nomd5" @@ -30,6 +28,7 @@ fn_update_jk2_localbuild(){ fn_print_dots "Checking local build: ${remotelocation}" # Uses log file to gather info. # Log is generated and cleared on startup but filled on shutdown. + requirerestart=1 localbuild=$(grep "\"version\"" "${consolelogdir}"/* 2>/dev/null | sed 's/.*://' | awk '{print $1}' | head -n 1) if [ -z "${localbuild}" ]; then fn_print_error "Checking local build: ${remotelocation}" @@ -118,11 +117,14 @@ fn_update_jk2_compare(){ if [ "${status}" == "0" ]; then exitbypass=1 fn_update_jk2_dl - exitbypass=1 - command_start.sh - exitbypass=1 - command_stop.sh - fn_firstcommand_reset + if [ "${requirerestart}" == "1" ]; then + exitbypass=1 + command_start.sh + fn_firstcommand_reset + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + fi # If server started. else fn_print_restart_warning diff --git a/lgsm/functions/update_minecraft.sh b/lgsm/functions/update_minecraft.sh index 34adf43fc..bd8bd3d33 100755 --- a/lgsm/functions/update_minecraft.sh +++ b/lgsm/functions/update_minecraft.sh @@ -103,11 +103,14 @@ fn_update_minecraft_compare(){ if [ "${status}" == "0" ]; then exitbypass=1 fn_update_minecraft_dl - exitbypass=1 - command_start.sh - exitbypass=1 - command_stop.sh - fn_firstcommand_reset + if [ "${requirerestart}" == "1" ]; then + exitbypass=1 + command_start.sh + fn_firstcommand_reset + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + fi # If server started. else fn_print_restart_warning diff --git a/lgsm/functions/update_minecraft_bedrock.sh b/lgsm/functions/update_minecraft_bedrock.sh index 34ada66b3..e12a3cc8e 100644 --- a/lgsm/functions/update_minecraft_bedrock.sh +++ b/lgsm/functions/update_minecraft_bedrock.sh @@ -34,6 +34,7 @@ fn_update_minecraft_localbuild(){ fn_print_dots "Checking local build: ${remotelocation}" # Uses log file to gather info. # Log is generated and cleared on startup but filled on shutdown. + requirerestart=1 localbuild=$(grep Version "${consolelogdir}"/* 2>/dev/null | tail -1 | sed 's/.*Version //') if [ -z "${localbuild}" ]; then fn_print_error "Checking local build: ${remotelocation}" @@ -122,11 +123,14 @@ fn_update_minecraft_compare(){ if [ "${status}" == "0" ]; then exitbypass=1 fn_update_minecraft_dl - exitbypass=1 - command_start.sh - exitbypass=1 - command_stop.sh - fn_firstcommand_reset + if [ "${requirerestart}" == "1" ]; then + exitbypass=1 + command_start.sh + fn_firstcommand_reset + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + fi # If server started. else fn_print_restart_warning diff --git a/lgsm/functions/update_mta.sh b/lgsm/functions/update_mta.sh index 00ffc5a18..e4e803d68 100644 --- a/lgsm/functions/update_mta.sh +++ b/lgsm/functions/update_mta.sh @@ -30,6 +30,7 @@ fn_update_mta_localbuild(){ fn_print_dots "Checking local build: ${remotelocation}" # Uses log file to gather info. # Gives time for log file to generate. + requirerestart=1 if [ ! -f "${serverfiles}/mods/deathmatch/logs/server.log" ]; then fn_print_error "Checking local build: ${remotelocation}" fn_print_error_nl "Checking local build: ${remotelocation}: no log files containing version info" @@ -151,11 +152,14 @@ fn_update_mta_compare(){ if [ "${status}" == "0" ]; then exitbypass=1 fn_update_mta_dl - exitbypass=1 - command_start.sh - exitbypass=1 - command_stop.sh - fn_firstcommand_reset + if [ "${requirerestart}" == "1" ]; then + exitbypass=1 + command_start.sh + fn_firstcommand_reset + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + fi # If server started. else fn_print_restart_warning diff --git a/lgsm/functions/update_mumble.sh b/lgsm/functions/update_mumble.sh index 76ae837f3..5221f0503 100644 --- a/lgsm/functions/update_mumble.sh +++ b/lgsm/functions/update_mumble.sh @@ -87,11 +87,14 @@ fn_update_mumble_compare(){ if [ "${status}" == "0" ]; then exitbypass=1 fn_update_mumble_dl - exitbypass=1 - command_start.sh - exitbypass=1 - command_stop.sh - fn_firstcommand_reset + if [ "${requirerestart}" == "1" ]; then + exitbypass=1 + command_start.sh + fn_firstcommand_reset + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + fi # If server started. else fn_print_restart_warning diff --git a/lgsm/functions/update_ts3.sh b/lgsm/functions/update_ts3.sh index b72979ff4..bea143ff5 100644 --- a/lgsm/functions/update_ts3.sh +++ b/lgsm/functions/update_ts3.sh @@ -34,6 +34,7 @@ fn_update_ts3_localbuild(){ fn_print_dots "Checking local build: ${remotelocation}" # Uses log file to gather info. # Gives time for log file to generate. + requirerestart=1 if [ ! -d "${serverfiles}/logs" ]||[ -z "$(find "${serverfiles}/logs/"* -name 'ts3server*_0.log' 2> /dev/null)" ]; then fn_print_error "Checking local build: ${remotelocation}" fn_print_error_nl "Checking local build: ${remotelocation}: no log files containing version info" @@ -149,11 +150,14 @@ fn_update_ts3_compare(){ if [ "${status}" == "0" ]; then exitbypass=1 fn_update_ts3_dl - exitbypass=1 - command_start.sh - exitbypass=1 - command_stop.sh - fn_firstcommand_reset + if [ "${requirerestart}" == "1" ]; then + exitbypass=1 + command_start.sh + fn_firstcommand_reset + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + fi # If server started. else fn_print_restart_warning diff --git a/lgsm/functions/update_vintagestory.sh b/lgsm/functions/update_vintagestory.sh index 98568f3ca..093f27c8d 100755 --- a/lgsm/functions/update_vintagestory.sh +++ b/lgsm/functions/update_vintagestory.sh @@ -87,11 +87,14 @@ fn_update_vs_compare(){ if [ "${status}" == "0" ]; then exitbypass=1 fn_update_vs_dl - exitbypass=1 - command_start.sh - exitbypass=1 - command_stop.sh - fn_firstcommand_reset + if [ "${requirerestart}" == "1" ]; then + exitbypass=1 + command_start.sh + fn_firstcommand_reset + exitbypass=1 + command_stop.sh + fn_firstcommand_reset + fi # If server started. else fn_print_restart_warning @@ -130,7 +133,6 @@ fn_update_vs_compare(){ # The location where the builds are checked and downloaded. remotelocation="vintagestory.at" apiurl="http://api.${remotelocation}/stable-unstable.json" -localversionfile="${datadir}/vintagestoryversion" if [ "${firstcommandname}" == "INSTALL" ]; then fn_update_vs_remotebuild