From 586a624e375bd53a94520f8369e0a08a0a095321 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 8 Mar 2017 23:29:41 +0000 Subject: [PATCH 01/44] added JSON.sh json.sh is a json parser. --- lgsm/functions/JSON.sh | 208 +++++++++++++++++++++++++++++++ lgsm/functions/core_functions.sh | 8 ++ 2 files changed, 216 insertions(+) create mode 100644 lgsm/functions/JSON.sh diff --git a/lgsm/functions/JSON.sh b/lgsm/functions/JSON.sh new file mode 100644 index 000000000..077863385 --- /dev/null +++ b/lgsm/functions/JSON.sh @@ -0,0 +1,208 @@ +#!/bin/sh + +throw() { + echo "$*" >&2 + exit 1 +} + +BRIEF=0 +LEAFONLY=0 +PRUNE=0 +NO_HEAD=0 +NORMALIZE_SOLIDUS=0 + +usage() { + echo + echo "Usage: JSON.sh [-b] [-l] [-p] [-s] [-h]" + echo + echo "-p - Prune empty. Exclude fields with empty values." + echo "-l - Leaf only. Only show leaf nodes, which stops data duplication." + echo "-b - Brief. Combines 'Leaf only' and 'Prune empty' options." + echo "-n - No-head. Do not show nodes that have no path (lines that start with [])." + echo "-s - Remove escaping of the solidus symbol (straight slash)." + echo "-h - This help text." + echo +} + +parse_options() { + set -- "$@" + local ARGN=$# + while [ "$ARGN" -ne 0 ] + do + case $1 in + -h) usage + exit 0 + ;; + -b) BRIEF=1 + LEAFONLY=1 + PRUNE=1 + ;; + -l) LEAFONLY=1 + ;; + -p) PRUNE=1 + ;; + -n) NO_HEAD=1 + ;; + -s) NORMALIZE_SOLIDUS=1 + ;; + ?*) echo "ERROR: Unknown option." + usage + exit 0 + ;; + esac + shift 1 + ARGN=$((ARGN-1)) + done +} + +awk_egrep () { + local pattern_string=$1 + + gawk '{ + while ($0) { + start=match($0, pattern); + token=substr($0, start, RLENGTH); + print token; + $0=substr($0, start+RLENGTH); + } + }' pattern="$pattern_string" +} + +tokenize () { + local GREP + local ESCAPE + local CHAR + + if echo "test string" | egrep -ao --color=never "test" >/dev/null 2>&1 + then + GREP='egrep -ao --color=never' + else + GREP='egrep -ao' + fi + + if echo "test string" | egrep -o "test" >/dev/null 2>&1 + then + ESCAPE='(\\[^u[:cntrl:]]|\\u[0-9a-fA-F]{4})' + CHAR='[^[:cntrl:]"\\]' + else + GREP=awk_egrep + ESCAPE='(\\\\[^u[:cntrl:]]|\\u[0-9a-fA-F]{4})' + CHAR='[^[:cntrl:]"\\\\]' + fi + + local STRING="\"$CHAR*($ESCAPE$CHAR*)*\"" + local NUMBER='-?(0|[1-9][0-9]*)([.][0-9]*)?([eE][+-]?[0-9]*)?' + local KEYWORD='null|false|true' + local SPACE='[[:space:]]+' + + # Force zsh to expand $A into multiple words + local is_wordsplit_disabled=$(unsetopt 2>/dev/null | grep -c '^shwordsplit$') + if [ $is_wordsplit_disabled != 0 ]; then setopt shwordsplit; fi + $GREP "$STRING|$NUMBER|$KEYWORD|$SPACE|." | egrep -v "^$SPACE$" + if [ $is_wordsplit_disabled != 0 ]; then unsetopt shwordsplit; fi +} + +parse_array () { + local index=0 + local ary='' + read -r token + case "$token" in + ']') ;; + *) + while : + do + parse_value "$1" "$index" + index=$((index+1)) + ary="$ary""$value" + read -r token + case "$token" in + ']') break ;; + ',') ary="$ary," ;; + *) throw "EXPECTED , or ] GOT ${token:-EOF}" ;; + esac + read -r token + done + ;; + esac + [ "$BRIEF" -eq 0 ] && value=$(printf '[%s]' "$ary") || value= + : +} + +parse_object () { + local key + local obj='' + read -r token + case "$token" in + '}') ;; + *) + while : + do + case "$token" in + '"'*'"') key=$token ;; + *) throw "EXPECTED string GOT ${token:-EOF}" ;; + esac + read -r token + case "$token" in + ':') ;; + *) throw "EXPECTED : GOT ${token:-EOF}" ;; + esac + read -r token + parse_value "$1" "$key" + obj="$obj$key:$value" + read -r token + case "$token" in + '}') break ;; + ',') obj="$obj," ;; + *) throw "EXPECTED , or } GOT ${token:-EOF}" ;; + esac + read -r token + done + ;; + esac + [ "$BRIEF" -eq 0 ] && value=$(printf '{%s}' "$obj") || value= + : +} + +parse_value () { + local jpath="${1:+$1,}$2" isleaf=0 isempty=0 print=0 + case "$token" in + '{') parse_object "$jpath" ;; + '[') parse_array "$jpath" ;; + # At this point, the only valid single-character tokens are digits. + ''|[!0-9]) throw "EXPECTED value GOT ${token:-EOF}" ;; + *) value=$token + # if asked, replace solidus ("\/") in json strings with normalized value: "/" + [ "$NORMALIZE_SOLIDUS" -eq 1 ] && value=$(echo "$value" | sed 's#\\/#/#g') + isleaf=1 + [ "$value" = '""' ] && isempty=1 + ;; + esac + [ "$value" = '' ] && return + [ "$NO_HEAD" -eq 1 ] && [ -z "$jpath" ] && return + + [ "$LEAFONLY" -eq 0 ] && [ "$PRUNE" -eq 0 ] && print=1 + [ "$LEAFONLY" -eq 1 ] && [ "$isleaf" -eq 1 ] && [ $PRUNE -eq 0 ] && print=1 + [ "$LEAFONLY" -eq 0 ] && [ "$PRUNE" -eq 1 ] && [ "$isempty" -eq 0 ] && print=1 + [ "$LEAFONLY" -eq 1 ] && [ "$isleaf" -eq 1 ] && \ + [ $PRUNE -eq 1 ] && [ $isempty -eq 0 ] && print=1 + [ "$print" -eq 1 ] && printf "[%s]\t%s\n" "$jpath" "$value" + : +} + +parse () { + read -r token + parse_value + read -r token + case "$token" in + '') ;; + *) throw "EXPECTED EOF GOT $token" ;; + esac +} + +if ([ "$0" = "$BASH_SOURCE" ] || ! [ -n "$BASH_SOURCE" ]); +then + parse_options "$@" + tokenize | parse +fi + +# vi: expandtab sw=2 ts=2 diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index 1738928ca..6c66a09b9 100644 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -89,6 +89,14 @@ if [ ! -d "${tmpdir}" ]; then mkdir -p "${tmpdir}" fi +# External dependencies + +JSON.sh(){ +# Functions are defined in core_functions.sh. +functionfile="${FUNCNAME}" +fn_fetch_core_dl +} + # Core core_dl.sh(){ From 7beb3b39fc75c718d9502dce7b5071cc55a87540 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Thu, 14 Dec 2017 12:02:08 +0100 Subject: [PATCH 02/44] Added Stationeers --- .../config-lgsm/stationeers/_default.cfg | 123 ++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 lgsm/config-default/config-lgsm/stationeers/_default.cfg diff --git a/lgsm/config-default/config-lgsm/stationeers/_default.cfg b/lgsm/config-default/config-lgsm/stationeers/_default.cfg new file mode 100644 index 000000000..092a91841 --- /dev/null +++ b/lgsm/config-default/config-lgsm/stationeers/_default.cfg @@ -0,0 +1,123 @@ +################################## +######## 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://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters +ip="0.0.0.0" +port="27500" +updateport="27015" +worldtype="Moon" +autosaveinterval=300 +worldname="moon_save" + +## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters +# Edit with care | http://hurtworld.wikia.com/wiki/Hosting_A_Server +fn_parms(){ +parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${updateport} -worldtype=${worldtype} -loadworld=${worldname} -worldname=${worldname} -autosaveinterval=${autosaveinterval}" +} + +#### LinuxGSM Settings #### + +## Notification Alerts +# (on|off) + +# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info +postalert="off" +postdays="7" +posttarget="https://hastebin.com" + +# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord +discordalert="off" +discordwebhook="webhook" + +# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email +emailalert="off" +email="email@example.com" +emailfrom="" + +# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT +iftttalert="off" +ifttttoken="accesstoken" +iftttevent="linuxgsm_alert" + +# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun +mailgunalert="off" +mailguntoken="accesstoken" +mailgundomain="example.com" +mailgunemailfrom="alert@example.com" +mailgunemail="email@myemail.com" + +# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet +pushbulletalert="off" +pushbullettoken="accesstoken" +channeltag="" + +# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover +pushoveralert="off" +pushovertoken="accesstoken" + +# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram +telegramalert="off" +telegramtoken="accesstoken" +telegramchatid="" + +## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update +updateonstart="off" + +## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup +maxbackups="4" +maxbackupdays="30" +stoponbackup="on" + +## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging +consolelogging="on" +logdays="7" + +#### LinuxGSM Advanced Settings #### + +## SteamCMD Settings +# Server appid +appid="600670" +# Steam App Branch Select +# Allows to opt into the various Steam app branches. Default branch is "". +# Example: "-beta latest_experimental" +branch="" + +## LinuxGSM Server Details +# Do not edit +gamename="Stationeers" +engine="unity3d" + +#### Directories #### +# Edit with care + +## Server Specific Directories +systemdir="${serverfiles}" +executabledir="${serverfiles}" +executable="./rocketstation_DedicatedServer.x86_64" + +## Backup Directory +backupdir="${rootdir}/backups" + +## Logging Directories +logdir="${rootdir}/log" +gamelogdir="${logdir}/server" +lgsmlogdir="${logdir}/script" +consolelogdir="${logdir}/console" +gamelog="${gamelogdir}/${servicename}-game.log" +lgsmlog="${lgsmlogdir}/${servicename}-script.log" +consolelog="${consolelogdir}/${servicename}-console.log" +alertlog="${lgsmlogdir}/${servicename}-alert.log" +postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log" + +## Logs Naming +gamelogdate="${gamelogdir}/${servicename}-game-$(date '+%Y-%m-%d-%H:%M:%S').log" +lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" +consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" + From 687cf293ef3e33144c1fdd009af408a46448ea8f Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Thu, 14 Dec 2017 12:04:11 +0100 Subject: [PATCH 03/44] Update Stationeers Fixed appid --- lgsm/config-default/config-lgsm/stationeers/_default.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/stationeers/_default.cfg b/lgsm/config-default/config-lgsm/stationeers/_default.cfg index 092a91841..695ea42e1 100644 --- a/lgsm/config-default/config-lgsm/stationeers/_default.cfg +++ b/lgsm/config-default/config-lgsm/stationeers/_default.cfg @@ -83,7 +83,7 @@ logdays="7" ## SteamCMD Settings # Server appid -appid="600670" +appid="600760" # Steam App Branch Select # Allows to opt into the various Steam app branches. Default branch is "". # Example: "-beta latest_experimental" From ca7d9970786d257de2a1b1344cb3dd67f038dd94 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Thu, 14 Dec 2017 13:11:45 +0100 Subject: [PATCH 04/44] Fix for monitor Renamed updateport to queryport --- lgsm/config-default/config-lgsm/stationeers/_default.cfg | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lgsm/config-default/config-lgsm/stationeers/_default.cfg b/lgsm/config-default/config-lgsm/stationeers/_default.cfg index 695ea42e1..b7d2478b3 100644 --- a/lgsm/config-default/config-lgsm/stationeers/_default.cfg +++ b/lgsm/config-default/config-lgsm/stationeers/_default.cfg @@ -11,7 +11,7 @@ ## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters ip="0.0.0.0" port="27500" -updateport="27015" +queryport="27015" worldtype="Moon" autosaveinterval=300 worldname="moon_save" @@ -19,7 +19,7 @@ worldname="moon_save" ## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters # Edit with care | http://hurtworld.wikia.com/wiki/Hosting_A_Server fn_parms(){ -parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${updateport} -worldtype=${worldtype} -loadworld=${worldname} -worldname=${worldname} -autosaveinterval=${autosaveinterval}" +parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${queryport} -worldtype=${worldtype} -loadworld=${worldname} -worldname=${worldname} -autosaveinterval=${autosaveinterval}" } #### LinuxGSM Settings #### From 271df611f13fc6acf6140e02d4440aa46be4c605 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Fri, 15 Dec 2017 17:09:11 +0100 Subject: [PATCH 05/44] Added Stationeers cfg directory --- lgsm/config-default/config-lgsm/stationeers/_default.cfg | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lgsm/config-default/config-lgsm/stationeers/_default.cfg b/lgsm/config-default/config-lgsm/stationeers/_default.cfg index b7d2478b3..1706a71a2 100644 --- a/lgsm/config-default/config-lgsm/stationeers/_default.cfg +++ b/lgsm/config-default/config-lgsm/stationeers/_default.cfg @@ -101,6 +101,10 @@ engine="unity3d" systemdir="${serverfiles}" executabledir="${serverfiles}" executable="./rocketstation_DedicatedServer.x86_64" +servercfg="default.ini" +servercfgdefault="default.ini" +servercfgdir="${systemdir}" +servercfgfullpath="${servercfgdir}" ## Backup Directory backupdir="${rootdir}/backups" From 3c81815fd6896c9913b7be3d9bb33af90bbc5669 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Fri, 15 Dec 2017 17:36:23 +0100 Subject: [PATCH 06/44] Updated serverlist --- lgsm/data/serverlist.csv | 1 + 1 file changed, 1 insertion(+) diff --git a/lgsm/data/serverlist.csv b/lgsm/data/serverlist.csv index a79a71552..08af156a6 100644 --- a/lgsm/data/serverlist.csv +++ b/lgsm/data/serverlist.csv @@ -70,3 +70,4 @@ ut3,ut3server,Unreal Tournament 3 ut99,ut99server,Unreal Tournament 99 wet,wetserver,Wolfenstein: Enemy Territory zps,zpsserver,Zombie Panic! Source +st,stationeets,Stationeers From a717d1f8fd55b0988754b4d75743a10e1ab2a13b Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Fri, 22 Dec 2017 06:56:22 -0600 Subject: [PATCH 07/44] Update _default.cfg Added -clearinterval --- lgsm/config-default/config-lgsm/stationeers/_default.cfg | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/stationeers/_default.cfg b/lgsm/config-default/config-lgsm/stationeers/_default.cfg index 1706a71a2..334f65b38 100644 --- a/lgsm/config-default/config-lgsm/stationeers/_default.cfg +++ b/lgsm/config-default/config-lgsm/stationeers/_default.cfg @@ -14,12 +14,13 @@ port="27500" queryport="27015" worldtype="Moon" autosaveinterval=300 +clearinterval=60 worldname="moon_save" ## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters # Edit with care | http://hurtworld.wikia.com/wiki/Hosting_A_Server fn_parms(){ -parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${queryport} -worldtype=${worldtype} -loadworld=${worldname} -worldname=${worldname} -autosaveinterval=${autosaveinterval}" +parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${queryport} -worldtype=${worldtype} -loadworld=${worldname} -worldname=${worldname} -autosaveinterval=${autosaveinterval} -clearallinterval=${clearinterval}" } #### LinuxGSM Settings #### From fa99aa882bd0d737bcf181ed1f189871c2064bd0 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Mon, 25 Dec 2017 17:11:57 +0100 Subject: [PATCH 08/44] Update info_config.sh Added Stationeers --- lgsm/functions/info_config.sh | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index 5127ffa4f..921ed5e35 100644 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -853,6 +853,27 @@ fn_info_config_squad(){ maxplayers=${maxplayers:-"0"} } +fn_info_config_stationeers(){ + if [ ! -f "${servercfgfullpath}" ]; then + servername="${unavailable}" + serverpassword="${unavailable}" + rconpassword="${unavailable}" + mapname="${unavailable}" + maxplayers="${unavailable}" + else + servername=$(grep "SERVERNAME=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + serverpassword=$(grep "PASSWORD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/PASSWORD=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + rconpassword=$(grep "RCONPASSWORD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/RCONPASSWORD=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + maxplayers=$(grep "MAXPLAYER=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/MAXPLAYER=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + + # Not Set + servername=${servername:-"NOT SET"} + serverpassword=${serverpassword:-"NOT SET"} + rconpassword=${rconpassword:-"NOT SET"} + maxplayers=${maxplayers:-"0"} + fi +} + # Just Cause 2 if [ "${engine}" == "avalanche" ]; then fn_info_config_avalanche @@ -952,4 +973,7 @@ elif [ "${gamename}" == "Multi Theft Auto" ]; then fn_info_config_mta elif [ "${gamename}" == "Squad" ]; then fn_info_config_squad +# Stationeers +elif [ "${gamename}" == "Stationeers" ]; then + fn_info_config_stationeers fi From 1583e3af10fb17568d012736959bbd7c95eba669 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Mon, 25 Dec 2017 17:31:57 +0100 Subject: [PATCH 09/44] Updated install_config.sh Added Stationeers to install_config.sh --- lgsm/functions/install_config.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index e38cdd2e7..5ff85fc58 100644 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -456,6 +456,12 @@ elif [ "${gamename}" == "Starbound" ]; then fn_fetch_default_config fn_default_config_remote fn_set_config_vars +elif [ "${gamename}" == "Stationeers" ]; then + gamedirname="Stationeers" + array_configs+=( default.ini ) + fn_fetch_default_config + fn_default_config_remote + fn_set_config_vars elif [ "${gamename}" == "San Andreas Multiplayer" ]; then gamedirname="SanAndreasMultiplayer" array_configs+=( server.cfg ) From ece8a68af8448df7833b8e62174a7b0fdc29c1d6 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Mon, 25 Dec 2017 17:39:55 +0100 Subject: [PATCH 10/44] Updated info_config.sh Removed mapmame --- lgsm/functions/info_config.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index 921ed5e35..53e026493 100644 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -858,7 +858,6 @@ fn_info_config_stationeers(){ servername="${unavailable}" serverpassword="${unavailable}" rconpassword="${unavailable}" - mapname="${unavailable}" maxplayers="${unavailable}" else servername=$(grep "SERVERNAME=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') From 36cb287c31f79e3266ea6206d917a4e2d1ceaff8 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Mon, 25 Dec 2017 17:54:45 +0100 Subject: [PATCH 11/44] Fix info_config --- lgsm/functions/info_config.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index 53e026493..64bb3382b 100644 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -860,10 +860,10 @@ fn_info_config_stationeers(){ rconpassword="${unavailable}" maxplayers="${unavailable}" else - servername=$(grep "SERVERNAME=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - serverpassword=$(grep "PASSWORD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/PASSWORD=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - rconpassword=$(grep "RCONPASSWORD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/RCONPASSWORD=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - maxplayers=$(grep "MAXPLAYER=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/MAXPLAYER=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + servername=$(grep "SERVERNAME" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + serverpassword=$(grep "PASSWORD" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/PASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + rconpassword=$(grep "RCONPASSWORD" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/RCONPASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + maxplayers=$(grep "MAXPLAYER" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/MAXPLAYER//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') # Not Set servername=${servername:-"NOT SET"} From a6f6ef483e12b9f57df4829dbe0d4bacb144b98d Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Mon, 25 Dec 2017 17:56:44 +0100 Subject: [PATCH 12/44] Update linuxgsm.sh Changed to my repo --- linuxgsm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linuxgsm.sh b/linuxgsm.sh index 9dbc97b6a..00ae72210 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -42,7 +42,7 @@ configdirdefault="${lgsmdir}/config-default" ## GitHub Branch Select # Allows for the use of different function files # from a different repo and/or branch. -githubuser="GameServerManagers" +githubuser="FliesWithWind" githubrepo="LinuxGSM" githubbranch="master" From c56e5c2bbdf15c793198310741c4c908e13327a4 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Mon, 25 Dec 2017 18:02:41 +0100 Subject: [PATCH 13/44] Updated cfg Fix servercfgfullpath --- lgsm/config-default/config-lgsm/stationeers/_default.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/stationeers/_default.cfg b/lgsm/config-default/config-lgsm/stationeers/_default.cfg index 334f65b38..f502a475e 100644 --- a/lgsm/config-default/config-lgsm/stationeers/_default.cfg +++ b/lgsm/config-default/config-lgsm/stationeers/_default.cfg @@ -105,7 +105,7 @@ executable="./rocketstation_DedicatedServer.x86_64" servercfg="default.ini" servercfgdefault="default.ini" servercfgdir="${systemdir}" -servercfgfullpath="${servercfgdir}" +servercfgfullpath="${servercfgdir}/${servercfg}" ## Backup Directory backupdir="${rootdir}/backups" From 6dfdece97642e9dae1dd0a606f4b95c519becbec Mon Sep 17 00:00:00 2001 From: Nathan <4490380+Grimston@users.noreply.github.com> Date: Wed, 27 Dec 2017 17:36:21 +0800 Subject: [PATCH 14/44] Update command_start.sh Correct the width and height argument order for the tmux session. --- lgsm/functions/command_start.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/command_start.sh b/lgsm/functions/command_start.sh index 6bad48141..96aa7b8e4 100644 --- a/lgsm/functions/command_start.sh +++ b/lgsm/functions/command_start.sh @@ -98,7 +98,7 @@ fn_start_tmux(){ # Create lockfile date > "${rootdir}/${lockselfname}" cd "${executabledir}" - tmux new-session -d -x "${sessionheight}" -y "${sessionwidth}" -s "${servicename}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${servicename}-tmux-error.tmp" + tmux new-session -d -x "${sessionwidth}" -y "${sessionheight}" -s "${servicename}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${servicename}-tmux-error.tmp" # Create logfile touch "${consolelog}" From 1c5b4eb336b3fe3ad5932e35b8522eafb9432704 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sat, 30 Dec 2017 13:15:56 +0000 Subject: [PATCH 15/44] gamedig Will display the output of gamedig in json format --- lgsm/functions/command_dev_gamedig.sh | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 lgsm/functions/command_dev_gamedig.sh diff --git a/lgsm/functions/command_dev_gamedig.sh b/lgsm/functions/command_dev_gamedig.sh new file mode 100644 index 000000000..9ef5fb91d --- /dev/null +++ b/lgsm/functions/command_dev_gamedig.sh @@ -0,0 +1,9 @@ +#!/bin/bash +# LinuxGSM command_dev_gamedig.sh function +# Author: Daniel Gibbs +# Website: https://gameservermanagers.com +# Description: Displays output of gamedig in json format. + +local commandname="GAMEDIG" +local commandaction="Gamedig" +local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" From 3091ebc0880ef497fcd5eab8810e63af8ab1807e Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Sat, 30 Dec 2017 10:00:42 -0600 Subject: [PATCH 16/44] Update serverlist.csv Fixed typo in Stationeers --- lgsm/data/serverlist.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/data/serverlist.csv b/lgsm/data/serverlist.csv index 08af156a6..728377573 100644 --- a/lgsm/data/serverlist.csv +++ b/lgsm/data/serverlist.csv @@ -57,6 +57,7 @@ rust,rustserver,Rust samp,sampserver,San Andreas Multiplayer ss3,ss3server,Serious Sam 3: BFE sb,sbserver,Starbound +st,stserver,Stationeers squad,squadserver,Squad sven,svenserver,Sven Co-op tf2,tf2server,Team Fortress 2 @@ -70,4 +71,3 @@ ut3,ut3server,Unreal Tournament 3 ut99,ut99server,Unreal Tournament 99 wet,wetserver,Wolfenstein: Enemy Territory zps,zpsserver,Zombie Panic! Source -st,stationeets,Stationeers From 77fee595c78945a565ce2b2964a33f5803c37f3f Mon Sep 17 00:00:00 2001 From: FliesWithWind Date: Sat, 30 Dec 2017 10:06:29 -0600 Subject: [PATCH 17/44] Renamed stationeers folder to stserver --- .DS_Store | Bin 0 -> 8196 bytes lgsm/.DS_Store | Bin 0 -> 8196 bytes lgsm/config-default/.DS_Store | Bin 0 -> 8196 bytes lgsm/config-default/config-lgsm/.DS_Store | Bin 0 -> 8196 bytes .../{stationeers => stserver}/_default.cfg | 0 5 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 .DS_Store create mode 100644 lgsm/.DS_Store create mode 100644 lgsm/config-default/.DS_Store create mode 100644 lgsm/config-default/config-lgsm/.DS_Store rename lgsm/config-default/config-lgsm/{stationeers => stserver}/_default.cfg (100%) diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..85716809b21fa1acf504893382a3df2fb7ee717f GIT binary patch literal 8196 zcmeHMU2GIZ9RL5@gYH<`PAea`z`;oalvXWoF73wcZn@pN zLmQGxlqac?Cj&1UKM0Wcgb%*pw=tNA4>bW3AN0jXqtV1C<9~Mc8ld#W2bHjs%=~Bm zAM^2>-|b}P002Ak`WApF04S7&+JDUP4izB+ zAp#)+Ap#)+Ap-vg1nA5bNtx%|m)5Wh5eN}@BoPqbhd5;+6M>wP(*JZ&;a>qriYtJh zsLn-&WIT|GKu$?X7D^~XNy<o@E!%P1K3fn1;F8M&jvx!-Xta*%Z`bJ#SBX}&n=*q&zE zM$Yd~_AxSO+PYKhaPqe9`u;)Ze*K{4jZr^JePS%`uY@Tq&7+f(EnBuU#kXzSai%Fg z+1lFN6mOyW8Kx-e`tC!=^Jk|oUV7)<_bz|>nOr{x-w>#k?b-5ks?CC7xrL;B%qY7s z7YtUZ_Vn)Em*zb08ix!^^UQ+LNlSLqyvC(P_hudYV9qGeVh6L1l^?gsQk&JRY@VEr zcFRhcFBcaxO{6t}R*;TeI%T=Iu}I zPR>+S*YMgp#*Pqzwr8F+jod&{Y{jtVW(`|6?a{%4>6#hK=(n|TqZXSOn_0RnTBR;m zSC&lohbX*W8OmqOQ+d;S!5?GQYL$)XH1qwAE=JM$2MY5o^{Z9&sIVk+29>&^%<$@( zD%PMjGOj88F0DjrHnPo(yR83t+GSs(Ze=YB*V%xjWeiKIT3MUI_p!l(T&`5sv1b%E zly%0(X_2l!?4E?G9v8#*X|8u*!mw#dU(wiA%c4s=X-dPw)~@SfLPVJcxywEV^@(QL z;^Np*p$T?FHynX1*ieL5;XF*kMR*(DhwE?yzJ#yg8@L7E!X5Y#euiJ+H~5_%xcVIQJMP7OxF4Ux6pr9AOydbWi4IO+4qcqYm+=)mhp*uq zcp0zYRlJ7R@dkc`ALA!@6K~;dIlrBlgP0oY>V7u)pD^{# zB1zB37cW^=->`9O>#oG?Cf>JqcQeSRjO2vRl@b^H&AW$$g2?Lf6)ZMDlrm1=Pva83 zd4-_8GNTeVV)57-g_y#F=GxeLg}BVi{Ju6c#uzUr+WNl{b<<`R;|qwPif`T4!WfSb zg{5_88(9|;S!Gvj1=~Y*@P}b*V@alPoR50*67Maz3LnB3aFYo49sB@4!7uP9ku8GN zM7Aidz?B%ob+{fkU?Vo+cH9xrt`obl2YZQnDICB-9KvDDpiaaa#W6fZ#LHs=i#UZZ z;aQ^Kd7LH+zK$30622*^HA}dj64j){D zUGu;HKMYF==NKXoBJd9pz({ARvx9=?`bk@JpX;>J=(?JjS%d` literal 0 HcmV?d00001 diff --git a/lgsm/.DS_Store b/lgsm/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..59618b2d6edd3c07e80220f5dff67f0dcda201ce GIT binary patch literal 8196 zcmeHMO>h)N6n<|BFdaxTU?4k$g_Tqw;06*B2q-_BY(T<~P;NpJeq3gEhGfdgOxT&- z1tQjJp(nwTlj23og9TK1!h;vogO*~Ic!(uf1COK!`1c`BnPW1*vPALephAQIgggWg ziRu&w2%UI<$pFg|g(}S{qX!IBF$ghGs*^mUFt@~Ed z?A3kK%cyl8S>Km)okMxENR|%fT)QylkYrI#w{ry=YLdJXfb0)$V-lIowUsS zK*=)v(P7=onT}yOBZEcDv$D3?@91OZB1|wgxwIi#qb<{xS47iQ6tzhiDrBuw1yGpW5*2I`2pA9s~GBs3KNp1m6~>xOHz50N<&d5)!Mom)}pOrs;=~VWQpu)WgD34 zvHs`jh((XKk##Dn!3JzSYud7_i)~fZeQdBO&6S;t*>;5u<=n9`GSU;v?o4Xhb9~wT zy5}DpHyzs27qoUwLv(2`ZE2Xxx($PGNNGy8$nzIIXiB!pmdc+T4HB>ecEb_60uGem zHMjs5;WE4jAHa3E0iVNH@HO0mZ{QC62tUKG@EiONf52ZjAM0@`HeeJV$5vdA8*mG5 z#iwu^cH>^$hX?Q(Oye;;ju||GC(*@m%%g`BcphKDSMhax6W_-xconbVb-aNe<0tqj z-o#sYTkbDXVefv~u9Wya)gE|diM_#6Wb|oks+gQ?W+2 zljI4=Q&gOdjpG3Su_&^dC(|N~soe>&WA@aRbgsq3|fjM#mQ6B&An*I0xhrP{k{m=uU z2mVD5U{!Crw}%#(?L*CD?KtHVlzHOg$`XYN6(Srb6yZ4G)ISWV9;cyPCmCQ_BK1)E U&wmKue+`H4fB60j_C31A-vz7jf&c&j literal 0 HcmV?d00001 diff --git a/lgsm/config-default/.DS_Store b/lgsm/config-default/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..7bd27f8beab1098a87f573fe2a863a3580449168 GIT binary patch literal 8196 zcmeHMTWl0n7(U;&l$mzg4i}-WTU;o$pe1ynwy8?lUIZ#tD%;X>k#=@xC=+I9>dx#I zSW5Oyqw-+l4Pv}JXf!`TzaSoc(thW9ZH63C0>2V-i)4Y7I5lC|u6#yb=jUDhWaMjG1hbZD1C)?mX>q zAdEm5fiMDL1i}b}5x5Z|KzBAT(gOFskcMp-fiMC$Wd!*9Ax@QJGQg5R|J6Z_p8^o_ z6u>Xkr#!&7i3gYruq4nor8!0RfWQ<%iUDCx@;Fx~Oa@pID9jmzIYY2Af(!-z>SP!9 z)ftik!#0dS7=if_;K!$iWthWkc4$`qo=s1?Q)$adlg6j%Da&-dwzf-%R8%giS}aM` zQgvJ*F`|t}gF$Y)><7Bj+2Nxdt-Jm_DIt&~S(3-qhGMZjk!X!?-rOaKvv#`6CTj&$+M&2sB`+eD6xw=NFjc(sDuk$j2_EMna2$pt9LUw$FhbT z*W}ae9rKK%9+%A%jqP)toY&`1HfGZNLQBoN#%_ZqH48>RP3@|X&(^Jst!}<^V|&+@ z-i!6>lBLU*E6P3!r0to9Od~fkZR+0Py_%abY~8dcM+>HFrY&RG*0RPDw92w?)o^Px zI+jnHkLFG9nA#*s{%GT>sB%E3l^%3-KAWzdmxTVBRnh2vF6qk|)arr39W7C1*d>=# zEl|9xRZ)hI&?l|B!BTArB|2hhX~R-=S*&w+hY}qvh^VSNgTZ^2E77rxlg*MVZZOup zH5xt0mmSnxZ`YJz)0RF7*6yP%?d7r_UFRE;nvzei^|{cLTqiiuRHjB#vQ2blx`P_o zCf3ge*#yh6B0I%iV6U=s>;ik6eZ;+J+EL`MKz%)vD98cg$JcVcR5?;nDcoXm7J-m+(@G-u` zSNIy=;0OGSU-5_7UZhOw!Sc=p;tJscXP8JGoZ-kb*Cusr+x8tR25w+de^)1%e9MZJ z@#gg#Hg(?DbCn5mKK@zs{5Kv4l+gS1W|9UFndB>FOdO?NaWQ=`5&~ zLfWk)C8E4qC8Ui?zbvclKj7|X>|6E|@%C>pR1s&F5nopmS2v=|=V~ANu?@S3ue*`L z2o7Q#8gcdrEaI$#qd0~lPT(XS3wV19&*6ET#u>bb*YG;tApV}kIh@A@;_`Brn^M1B*_;kGys1Or0@cjS&g@6CQ-ep4jFalu&Zr})@ zvOm?|OB-D1May&TIMoTNyl}meK;MKKKOHCZ({aM9e;86fPO97{8DL2ujZpdDe+b~; PKg0V!y#Ian-Mq~|nPnWx literal 0 HcmV?d00001 diff --git a/lgsm/config-default/config-lgsm/.DS_Store b/lgsm/config-default/config-lgsm/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..4af6c4d3790cf4efbd674968c3172f5e86634cc9 GIT binary patch literal 8196 zcmeHMO>h)N6n<|L$TT5jKp;E7!b&O-;sz231eBjmHekY!P;NpJeq3gE1~TPjChW}a z0x{NVsVBjblj23og9TK1!h;vogO*~Ic!(ufJOmJl z>J$eEop^xB0Lv1EDvc?l2Mkm(2r*EqlRVD56D9*JOO)z>QXMdu8G{G~#q6XP7u^Aq z62mg|KS zIGG-EOKD&C3tq3DKhB?y=>AwXs1LfXJyX}SM=i6IQJ1D%$JZ^#%nN19FsaLlVaqYx zQmLss4iZ@*fH{t<6EaKGe1ZzF5I%!xJb@=MgQxH`x;TM(^l%bi!B_D$d;{OY5AZ5p!|QkhZ{jETDSn2x@HXC& z>x)!)dr&@CO8kLpRgNj~HaMn{(TDLiws+stssDwycNa>sKDKn(>gLw=&D}ebGg~@q zC-3ExAdqB;U`~Y@Vk_^XB&W5uVkL_W5y8xJvq@bcyIRK&fikTTQ)2PhT7`I{29GVV z^$Iatjfk-}w8fZOLnIa_M%%cF#ngGkS4Bv-bTOvZ5}~DZ`wo)MC+fFX78X$cuQ12>B*n#&_^tNwgXI z^;d`|5w8+fp_wy207d(Kq zed)el8mQU}oX6U6%BLvv#QT*c3Kc3uI8G?Sal)BD45=Qcu3RS>U|AxyQ2Nh51cdj0 Lc>fFLJ=(=TLJ8_6 literal 0 HcmV?d00001 diff --git a/lgsm/config-default/config-lgsm/stationeers/_default.cfg b/lgsm/config-default/config-lgsm/stserver/_default.cfg similarity index 100% rename from lgsm/config-default/config-lgsm/stationeers/_default.cfg rename to lgsm/config-default/config-lgsm/stserver/_default.cfg From 66527a1c7ab7c647ba81dc0ee730908fcbc93b94 Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Sat, 30 Dec 2017 10:30:36 -0600 Subject: [PATCH 18/44] Update linuxgsm.sh Changed githubuser back to GameServerManagers --- linuxgsm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linuxgsm.sh b/linuxgsm.sh index 00ae72210..9dbc97b6a 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -42,7 +42,7 @@ configdirdefault="${lgsmdir}/config-default" ## GitHub Branch Select # Allows for the use of different function files # from a different repo and/or branch. -githubuser="FliesWithWind" +githubuser="GameServerManagers" githubrepo="LinuxGSM" githubbranch="master" From 281928647d638ad6949cf8b6aa9084fe07f990ee Mon Sep 17 00:00:00 2001 From: FliesWithWind <7544133+FliesWithWind@users.noreply.github.com> Date: Sun, 31 Dec 2017 15:21:03 +0100 Subject: [PATCH 19/44] Delete .DS_Store --- lgsm/.DS_Store | Bin 8196 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 lgsm/.DS_Store diff --git a/lgsm/.DS_Store b/lgsm/.DS_Store deleted file mode 100644 index 59618b2d6edd3c07e80220f5dff67f0dcda201ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8196 zcmeHMO>h)N6n<|BFdaxTU?4k$g_Tqw;06*B2q-_BY(T<~P;NpJeq3gEhGfdgOxT&- z1tQjJp(nwTlj23og9TK1!h;vogO*~Ic!(uf1COK!`1c`BnPW1*vPALephAQIgggWg ziRu&w2%UI<$pFg|g(}S{qX!IBF$ghGs*^mUFt@~Ed z?A3kK%cyl8S>Km)okMxENR|%fT)QylkYrI#w{ry=YLdJXfb0)$V-lIowUsS zK*=)v(P7=onT}yOBZEcDv$D3?@91OZB1|wgxwIi#qb<{xS47iQ6tzhiDrBuw1yGpW5*2I`2pA9s~GBs3KNp1m6~>xOHz50N<&d5)!Mom)}pOrs;=~VWQpu)WgD34 zvHs`jh((XKk##Dn!3JzSYud7_i)~fZeQdBO&6S;t*>;5u<=n9`GSU;v?o4Xhb9~wT zy5}DpHyzs27qoUwLv(2`ZE2Xxx($PGNNGy8$nzIIXiB!pmdc+T4HB>ecEb_60uGem zHMjs5;WE4jAHa3E0iVNH@HO0mZ{QC62tUKG@EiONf52ZjAM0@`HeeJV$5vdA8*mG5 z#iwu^cH>^$hX?Q(Oye;;ju||GC(*@m%%g`BcphKDSMhax6W_-xconbVb-aNe<0tqj z-o#sYTkbDXVefv~u9Wya)gE|diM_#6Wb|oks+gQ?W+2 zljI4=Q&gOdjpG3Su_&^dC(|N~soe>&WA@aRbgsq3|fjM#mQ6B&An*I0xhrP{k{m=uU z2mVD5U{!Crw}%#(?L*CD?KtHVlzHOg$`XYN6(Srb6yZ4G)ISWV9;cyPCmCQ_BK1)E U&wmKue+`H4fB60j_C31A-vz7jf&c&j From 8f9252b14a74a221a7dff225f23015df3b3f7ac5 Mon Sep 17 00:00:00 2001 From: FliesWithWind Date: Sun, 31 Dec 2017 15:25:14 +0100 Subject: [PATCH 20/44] Deleting .DS_Store --- lgsm/.DS_Store | Bin 8196 -> 8196 bytes lgsm/config-default/.DS_Store | Bin 8196 -> 8196 bytes lgsm/config-default/config-lgsm/.DS_Store | Bin 8196 -> 8196 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/lgsm/.DS_Store b/lgsm/.DS_Store index 59618b2d6edd3c07e80220f5dff67f0dcda201ce..50721ff12e7f62d7c23b736dd3762fa16fef4619 100644 GIT binary patch literal 8196 zcmeI1O;8*~6oB7bNSK)fXpq40V_d~VKp+s19}{%>)1+b~W+9M-WSQNWz?8EyxHG#1 z2$58IvQoz1gQm)Z6{}P{S$eV5t6F-oq{`^Qi=`gCc=cfE>*-l4fnX{ZHI?bA?$^`r zz3J&U-%RhD1ppk#>g@n307z81WZS5@LE(B{H2(s!kEitGUcR}4}N6z-&ta&wZgKrRa@+yR940b_cSl-4rrN^{OE}0%_M{VsN+~`eJy#+H0BblV$iWY&9se-?`-M@ znM{tGw(iUgI9XeF{qw|yLXu=jPB3+Gv9rCsIojU&&{A`BvA3(UIoh?idud6Qs&=*a z9h^$fFD#y0I{&&@CkF2dC|$SiH*U6Q%gqgnMMv!XqOax`Ei2p9;flwU1S`+cT1I9) z)3M!SM#d$XV5Kgt|6t0ok7Nw4A5S?}Hf_5JR+iGNRMyfwqu;XP=7Ql)c*a?e_fEJ@ z#vAkvCrt9?V+qExu5r{L2Qz03k(wMaN%NVk>CLlxN%BW) z>r`b@r6Z{Onz_0K-{0V;{AfkemScNLyi@UJ_8?gyHum>N;eYhWo@em%yCvgNP za0-){LLJkX!+Bi5MSKol!B_D$d=uZnckw-3!4L6MaaoZ(nFqvizQxa|_m7Vwkr_OW zk@$_stQo2p{*TD~emlppto*Ku9XsoHH|^={ePr!+uDgNPF?KChK1%`?AEG=Y0$hT& zx~5jSdo$d}2s`7f#Mxm*tG;!#=01raW|DuXL~CTiD$q1a5{roO=9*TS5M~8J*RFI( z1S{Jjv|UP%OgOVbq1~tSNklE%x>{YORz4b26bAh1l5YvXw_pW6CiuREtMDU%_Zva? z2LV@vWj=7VScg0D0fMdxAH){y!fpbu9|v%dz~j(8g-3A|PvL2TPb2s&g3rNO%n*F% z@H{??7w~z!h?nq1dAO(FP58Kq@~?jg2={+j`}rB}|2~6vV)Hj#8Pco( literal 8196 zcmeHMO>h)N6n<|BFdaxTU?4k$g_Tqw;06*B2q-_BY(T<~P;NpJeq3gEhGfdgOxT&- z1tQjJp(nwTlj23og9TK1!h;vogO*~Ic!(uf1COK!`1c`BnPW1*vPALephAQIgggWg ziRu&w2%UI<$pFg|g(}S{qX!IBF$ghGs*^mUFt@~Ed z?A3kK%cyl8S>Km)okMxENR|%fT)QylkYrI#w{ry=YLdJXfb0)$V-lIowUsS zK*=)v(P7=onT}yOBZEcDv$D3?@91OZB1|wgxwIi#qb<{xS47iQ6tzhiDrBuw1yGpW5*2I`2pA9s~GBs3KNp1m6~>xOHz50N<&d5)!Mom)}pOrs;=~VWQpu)WgD34 zvHs`jh((XKk##Dn!3JzSYud7_i)~fZeQdBO&6S;t*>;5u<=n9`GSU;v?o4Xhb9~wT zy5}DpHyzs27qoUwLv(2`ZE2Xxx($PGNNGy8$nzIIXiB!pmdc+T4HB>ecEb_60uGem zHMjs5;WE4jAHa3E0iVNH@HO0mZ{QC62tUKG@EiONf52ZjAM0@`HeeJV$5vdA8*mG5 z#iwu^cH>^$hX?Q(Oye;;ju||GC(*@m%%g`BcphKDSMhax6W_-xconbVb-aNe<0tqj z-o#sYTkbDXVefv~u9Wya)gE|diM_#6Wb|oks+gQ?W+2 zljI4=Q&gOdjpG3Su_&^dC(|N~soe>&WA@aRbgsq3|fjM#mQ6B&An*I0xhrP{k{m=uU z2mVD5U{!Crw}%#(?L*CD?KtHVlzHOg$`XYN6(Srb6yZ4G)ISWV9;cyPCmCQ_BK1)E U&wmKue+`H4fB60j_C31A-vz7jf&c&j diff --git a/lgsm/config-default/.DS_Store b/lgsm/config-default/.DS_Store index 7bd27f8beab1098a87f573fe2a863a3580449168..8772fbed73d82201816c16177cedbe9ae880eda0 100644 GIT binary patch literal 8196 zcmeHMU2GIZ9G~A&=xkZ&wqm<{-buv*IcO^dsRlUOq97$yuh16Ia(BD5E8E?AyLSa@ zNr^#?`rvnh(V$UZG%-fYBbxXX^+987LI5A+!3SgFBN%+~KRbJkrIZ&EL&8on^P8Ff z{O9A>-|XanWsIS3WD!pl=qmGDy zh=GWKh=GWKh=E&y0eZ7V;xoMa(i)W!0}%taB?IF7kf1Cu72=r0;L|}x5CRa25FkiY zr#K++NradRaZF<1N^{ES0ii3x5ChVk>lmPUM^9kMOYZ)`k=*sQYIbILid;1%;K z9!n3n!)ZU`7rfR?e!pmSX8eI{SnqOOd$OL%?zPO}K5app>-ZVVG4p}5WtcSNK)2-> z?r^JHa11Y)CoK(}D_rT*^pTO~rlw?~sd@cqGBMJ!p*fk@aPNJiqYAHG(X?sD!NH@) zMxGiyeoCGY;a7rHUUT9%XFjg&72D)-W8hv2w1HwvL&7 zTBS!P-a*aIyji5vb?02WFz9%FT2(G%=L&YlH@Dih7)*VYUM}z2cBkuEzU4Z-J-&Iw zFHJPX)U(fX^L|?}S)ZmAJo8bL=CX=rJIzQ_Rg2Yj4~c2Ky=LActV=b@!zv%muU&H2 ziq#FxEt}gWDz&O=b%9#bU9>zaYnyw9EyEw^&3HM}F)XKlAMxz?)*;KxD^++x>2flI zX5ghS)E9HDj`tL@){_OxKRQvZRaGusrmF`G+Qlx{5MG9MhAV+(`7&MKFDz|&lS+eg zxp=+4O3^aB%Oe(KPf}g0Xr9t_nEvQ;sU~$D*9>KkoynTE?AoAi4Nc;AJmA9mH{c*8!N5=Da519__>N{Fq?6;kE)hldU4MXgS*QH)g21M1R zR!YL^Brv9E;u%`X?qM70+3BJS;j$C#MRuBvv$O1T_5=HcU1XQopX@Tb!mhG^z@VT4 zD(0aEaU`)84QNCQw&6iMgibtyG`i4>EOIb$2#4XLfMFcLaXgFX@H}3?t9T1<;~l(< z5Ahkk#Mk%+-{L2n#|2!(ulOB*;R^nin~ar|y{oioiMUEQ!$l@#hZi|^>iWu#2g+V` z%Paf*d?DvM7Tj4=n^>`W?YfPdS|^oojR2--^uMwUbSQ-u2(TnDDSUn5qQy&=s_{J} zP4mdLm!))xv~nRrKCyV=B0au5em5t%X|k!-$4TyIxCUvhkFViei%p1$8ye%PHjD0p z5;U9Ft8r~M$({$zmitvzE2DcMt(&)ybq?JCX>DsKD-$~`!#2X@fGynd7GfPCi5d#qew>SeRYfrbg(k5s6yoy*mLHQtMk;J$$iGd3h nVuk#=@xC=+I9>dx#I zSW5Oyqw-+l4Pv}JXf!`TzaSoc(thW9ZH63C0>2V-i)4Y7I5lC|u6#yb=jUDhWaMjG1hbZD1C)?mX>q zAdEm5fiMDL1i}b}5x5Z|KzBAT(gOFskcMp-fiMC$Wd!*9Ax@QJGQg5R|J6Z_p8^o_ z6u>Xkr#!&7i3gYruq4nor8!0RfWQ<%iUDCx@;Fx~Oa@pID9jmzIYY2Af(!-z>SP!9 z)ftik!#0dS7=if_;K!$iWthWkc4$`qo=s1?Q)$adlg6j%Da&-dwzf-%R8%giS}aM` zQgvJ*F`|t}gF$Y)><7Bj+2Nxdt-Jm_DIt&~S(3-qhGMZjk!X!?-rOaKvv#`6CTj&$+M&2sB`+eD6xw=NFjc(sDuk$j2_EMna2$pt9LUw$FhbT z*W}ae9rKK%9+%A%jqP)toY&`1HfGZNLQBoN#%_ZqH48>RP3@|X&(^Jst!}<^V|&+@ z-i!6>lBLU*E6P3!r0to9Od~fkZR+0Py_%abY~8dcM+>HFrY&RG*0RPDw92w?)o^Px zI+jnHkLFG9nA#*s{%GT>sB%E3l^%3-KAWzdmxTVBRnh2vF6qk|)arr39W7C1*d>=# zEl|9xRZ)hI&?l|B!BTArB|2hhX~R-=S*&w+hY}qvh^VSNgTZ^2E77rxlg*MVZZOup zH5xt0mmSnxZ`YJz)0RF7*6yP%?d7r_UFRE;nvzei^|{cLTqiiuRHjB#vQ2blx`P_o zCf3ge*#yh6B0I%iV6U=s>;ik6eZ;+J+EL`MKz%)vD98cg$JcVcR5?;nDcoXm7J-m+(@G-u` zSNIy=;0OGSU-5_7UZhOw!Sc=p;tJscXP8JGoZ-kb*Cusr+x8tR25w+de^)1%e9MZJ z@#gg#Hg(?DbCn5mKK@zs{5Kv4l+gS1W|9UFndB>FOdO?NaWQ=`5&~ zLfWk)C8E4qC8Ui?zbvclKj7|X>|6E|@%C>pR1s&F5nopmS2v=|=V~ANu?@S3ue*`L z2o7Q#8gcdrEaI$#qd0~lPT(XS3wV19&*6ET#u>bb*YG;tApV}kIh@A@;_`Brn^M1B*_;kGys1Or0@cjS&g@6CQ-ep4jFalu&Zr})@ zvOm?|OB-D1May&TIMoTNyl}meK;MKKKOHCZ({aM9e;86fPO97{8DL2ujZpdDe+b~; PKg0V!y#Ian-Mq~|nPnWx diff --git a/lgsm/config-default/config-lgsm/.DS_Store b/lgsm/config-default/config-lgsm/.DS_Store index 4af6c4d3790cf4efbd674968c3172f5e86634cc9..11c4b95f60fef1dfb6b498675a7cff8478c9e64a 100644 GIT binary patch delta 160 zcmZp1XmOYj$z8-y#*oTTlvG|^u(5C&`@{y`&FmZ;9D*DS#SA4t43vYYn5-sn15xSnw{yTmt^&96l)7>U!dh7kabm^0@9 From 9c06773aa28686ad942a86eff574690c7bbc406f Mon Sep 17 00:00:00 2001 From: FliesWithWind Date: Sun, 31 Dec 2017 15:27:34 +0100 Subject: [PATCH 21/44] Deleted .DS_Store files --- .DS_Store | Bin 8196 -> 0 bytes lgsm/.DS_Store | Bin 8196 -> 0 bytes lgsm/config-default/.DS_Store | Bin 8196 -> 0 bytes lgsm/config-default/config-lgsm/.DS_Store | Bin 8196 -> 0 bytes 4 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 .DS_Store delete mode 100644 lgsm/.DS_Store delete mode 100644 lgsm/config-default/.DS_Store delete mode 100644 lgsm/config-default/config-lgsm/.DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 85716809b21fa1acf504893382a3df2fb7ee717f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8196 zcmeHMU2GIZ9RL5@gYH<`PAea`z`;oalvXWoF73wcZn@pN zLmQGxlqac?Cj&1UKM0Wcgb%*pw=tNA4>bW3AN0jXqtV1C<9~Mc8ld#W2bHjs%=~Bm zAM^2>-|b}P002Ak`WApF04S7&+JDUP4izB+ zAp#)+Ap#)+Ap-vg1nA5bNtx%|m)5Wh5eN}@BoPqbhd5;+6M>wP(*JZ&;a>qriYtJh zsLn-&WIT|GKu$?X7D^~XNy<o@E!%P1K3fn1;F8M&jvx!-Xta*%Z`bJ#SBX}&n=*q&zE zM$Yd~_AxSO+PYKhaPqe9`u;)Ze*K{4jZr^JePS%`uY@Tq&7+f(EnBuU#kXzSai%Fg z+1lFN6mOyW8Kx-e`tC!=^Jk|oUV7)<_bz|>nOr{x-w>#k?b-5ks?CC7xrL;B%qY7s z7YtUZ_Vn)Em*zb08ix!^^UQ+LNlSLqyvC(P_hudYV9qGeVh6L1l^?gsQk&JRY@VEr zcFRhcFBcaxO{6t}R*;TeI%T=Iu}I zPR>+S*YMgp#*Pqzwr8F+jod&{Y{jtVW(`|6?a{%4>6#hK=(n|TqZXSOn_0RnTBR;m zSC&lohbX*W8OmqOQ+d;S!5?GQYL$)XH1qwAE=JM$2MY5o^{Z9&sIVk+29>&^%<$@( zD%PMjGOj88F0DjrHnPo(yR83t+GSs(Ze=YB*V%xjWeiKIT3MUI_p!l(T&`5sv1b%E zly%0(X_2l!?4E?G9v8#*X|8u*!mw#dU(wiA%c4s=X-dPw)~@SfLPVJcxywEV^@(QL z;^Np*p$T?FHynX1*ieL5;XF*kMR*(DhwE?yzJ#yg8@L7E!X5Y#euiJ+H~5_%xcVIQJMP7OxF4Ux6pr9AOydbWi4IO+4qcqYm+=)mhp*uq zcp0zYRlJ7R@dkc`ALA!@6K~;dIlrBlgP0oY>V7u)pD^{# zB1zB37cW^=->`9O>#oG?Cf>JqcQeSRjO2vRl@b^H&AW$$g2?Lf6)ZMDlrm1=Pva83 zd4-_8GNTeVV)57-g_y#F=GxeLg}BVi{Ju6c#uzUr+WNl{b<<`R;|qwPif`T4!WfSb zg{5_88(9|;S!Gvj1=~Y*@P}b*V@alPoR50*67Maz3LnB3aFYo49sB@4!7uP9ku8GN zM7Aidz?B%ob+{fkU?Vo+cH9xrt`obl2YZQnDICB-9KvDDpiaaa#W6fZ#LHs=i#UZZ z;aQ^Kd7LH+zK$30622*^HA}dj64j){D zUGu;HKMYF==NKXoBJd9pz({ARvx9=?`bk@JpX;>J=(?JjS%d` diff --git a/lgsm/.DS_Store b/lgsm/.DS_Store deleted file mode 100644 index 50721ff12e7f62d7c23b736dd3762fa16fef4619..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8196 zcmeI1O;8*~6oB7bNSK)fXpq40V_d~VKp+s19}{%>)1+b~W+9M-WSQNWz?8EyxHG#1 z2$58IvQoz1gQm)Z6{}P{S$eV5t6F-oq{`^Qi=`gCc=cfE>*-l4fnX{ZHI?bA?$^`r zz3J&U-%RhD1ppk#>g@n307z81WZS5@LE(B{H2(s!kEitGUcR}4}N6z-&ta&wZgKrRa@+yR940b_cSl-4rrN^{OE}0%_M{VsN+~`eJy#+H0BblV$iWY&9se-?`-M@ znM{tGw(iUgI9XeF{qw|yLXu=jPB3+Gv9rCsIojU&&{A`BvA3(UIoh?idud6Qs&=*a z9h^$fFD#y0I{&&@CkF2dC|$SiH*U6Q%gqgnMMv!XqOax`Ei2p9;flwU1S`+cT1I9) z)3M!SM#d$XV5Kgt|6t0ok7Nw4A5S?}Hf_5JR+iGNRMyfwqu;XP=7Ql)c*a?e_fEJ@ z#vAkvCrt9?V+qExu5r{L2Qz03k(wMaN%NVk>CLlxN%BW) z>r`b@r6Z{Onz_0K-{0V;{AfkemScNLyi@UJ_8?gyHum>N;eYhWo@em%yCvgNP za0-){LLJkX!+Bi5MSKol!B_D$d=uZnckw-3!4L6MaaoZ(nFqvizQxa|_m7Vwkr_OW zk@$_stQo2p{*TD~emlppto*Ku9XsoHH|^={ePr!+uDgNPF?KChK1%`?AEG=Y0$hT& zx~5jSdo$d}2s`7f#Mxm*tG;!#=01raW|DuXL~CTiD$q1a5{roO=9*TS5M~8J*RFI( z1S{Jjv|UP%OgOVbq1~tSNklE%x>{YORz4b26bAh1l5YvXw_pW6CiuREtMDU%_Zva? z2LV@vWj=7VScg0D0fMdxAH){y!fpbu9|v%dz~j(8g-3A|PvL2TPb2s&g3rNO%n*F% z@H{??7w~z!h?nq1dAO(FP58Kq@~?jg2={+j`}rB}|2~6vV)Hj#8Pco( diff --git a/lgsm/config-default/.DS_Store b/lgsm/config-default/.DS_Store deleted file mode 100644 index 8772fbed73d82201816c16177cedbe9ae880eda0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8196 zcmeHMU2GIZ9G~A&=xkZ&wqm<{-buv*IcO^dsRlUOq97$yuh16Ia(BD5E8E?AyLSa@ zNr^#?`rvnh(V$UZG%-fYBbxXX^+987LI5A+!3SgFBN%+~KRbJkrIZ&EL&8on^P8Ff z{O9A>-|XanWsIS3WD!pl=qmGDy zh=GWKh=GWKh=E&y0eZ7V;xoMa(i)W!0}%taB?IF7kf1Cu72=r0;L|}x5CRa25FkiY zr#K++NradRaZF<1N^{ES0ii3x5ChVk>lmPUM^9kMOYZ)`k=*sQYIbILid;1%;K z9!n3n!)ZU`7rfR?e!pmSX8eI{SnqOOd$OL%?zPO}K5app>-ZVVG4p}5WtcSNK)2-> z?r^JHa11Y)CoK(}D_rT*^pTO~rlw?~sd@cqGBMJ!p*fk@aPNJiqYAHG(X?sD!NH@) zMxGiyeoCGY;a7rHUUT9%XFjg&72D)-W8hv2w1HwvL&7 zTBS!P-a*aIyji5vb?02WFz9%FT2(G%=L&YlH@Dih7)*VYUM}z2cBkuEzU4Z-J-&Iw zFHJPX)U(fX^L|?}S)ZmAJo8bL=CX=rJIzQ_Rg2Yj4~c2Ky=LActV=b@!zv%muU&H2 ziq#FxEt}gWDz&O=b%9#bU9>zaYnyw9EyEw^&3HM}F)XKlAMxz?)*;KxD^++x>2flI zX5ghS)E9HDj`tL@){_OxKRQvZRaGusrmF`G+Qlx{5MG9MhAV+(`7&MKFDz|&lS+eg zxp=+4O3^aB%Oe(KPf}g0Xr9t_nEvQ;sU~$D*9>KkoynTE?AoAi4Nc;AJmA9mH{c*8!N5=Da519__>N{Fq?6;kE)hldU4MXgS*QH)g21M1R zR!YL^Brv9E;u%`X?qM70+3BJS;j$C#MRuBvv$O1T_5=HcU1XQopX@Tb!mhG^z@VT4 zD(0aEaU`)84QNCQw&6iMgibtyG`i4>EOIb$2#4XLfMFcLaXgFX@H}3?t9T1<;~l(< z5Ahkk#Mk%+-{L2n#|2!(ulOB*;R^nin~ar|y{oioiMUEQ!$l@#hZi|^>iWu#2g+V` z%Paf*d?DvM7Tj4=n^>`W?YfPdS|^oojR2--^uMwUbSQ-u2(TnDDSUn5qQy&=s_{J} zP4mdLm!))xv~nRrKCyV=B0au5em5t%X|k!-$4TyIxCUvhkFViei%p1$8ye%PHjD0p z5;U9Ft8r~M$({$zmitvzE2DcMt(&)ybq?JCX>DsKD-$~`!#2X@fGynd7GfPCi5d#qew>SeRYfrbg(k5s6yoy*mLHQtMk;J$$iGd3h nVuh)N6n-xW&>aXF5Rx6j!b%DVm_P!75anl+4M+$GS0;)XW!3*j^OR-8k#1gFXpcjvpmR5PPeBC`8B|ir*D#dhF_t(>} z-*msPznQ7G3jo-eH(LN=0KljU)D}`ROA&TaXOyyVq=FF1A0P(>uppNy`eQR@M*|T9 z5d#qe5d#qe5d;4R2I!kD3Y+7*udGoUF%U8EP%50rB`S@FAc|nfqV)d&coHWcxfb=GcDF-24rel~>H0zksnyR#{bfB0b_2 z(}5A>{Z1oyOk5o?f{{$v@AW)qs&8bD+E#H`TbAGBCy&AJ$^y=igMZ zVfcQ4>S?iFnJrMqFQinUWtU5V-Yo^n`9ghv_ko^aP0Rb%)0SfdcERd00?QxPs(p&M zJL|bea#n$&>(6>le$*w)lC0rm^EBD&aGbP#-tq?m>uex;L%x>_QgY&eO}=7mSX(Om z503@5=lVyjoKML4jYZ4jYt}v1yzTMbsmZFv)!LG!oDUH*ZeX9Xtz2KxHiMBt!_Qi- zX}hQU3$|}(9IMwgMy(~-$oXVVZLCUPp|32Nrn@k$o(<$P_L;mLoRe#;TCMZrChh!? zXNpx!?S00jrGB-p9}|{T&Z5?2Y*JfXUBw&pja)NWuTPPvktV*GYd-INmX1}9=v#Oz z(@fsy7#Yh^Lv6gBX+6BZpu$yyOZhIw2eRJiC%ia4<5p& zFpbCY1P_H}GA&hS%{1-o#t@A%27(<88cych&yNN{T(G zu1hU`OT8J7CMk9-RP5kvijD8x_hjlnQS7}%N~Vu2TfVBkp=nFo&g9f#PCLWDD@jU6 zX+vtJqzQS5_lZ#mT3=De<9#G8>+Eznmt?Lj5b|e}I%y=Hh_7L!7%jY98(+^z(^{Fl z*M^O8u9cH~<+Gx1+RWqHJW?u?)~&6aYZWAAW!=$E*7+n_bt_)S_mCarGJI`3#hHe4 zNpMa9z75ym1Na1PlkmQV@8Adc34SNhRp4S0T@34RCB|_buE!0y5gTzEZV%v$R8!mCPRQ^MO{lAJ=k zMmR%wg>=q!Johx&N`k%LExLNp7${d8j*0w#@7%xtKWJe^`;8cg82ASaU`1EDtCJk& zda;XKJ3;j%RZ+ye35C*y8kvq0%5JLNeCupkhNrpI~kVdHd>puiU-~X$Uc!<9L Jiid}@{S%Co;t>D< From 9791f93fe41da42b2b084d2d0142d54a0d0fc1f5 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 7 Jan 2018 17:08:06 +0000 Subject: [PATCH 22/44] changes sleep to 0.5 to speed up files loading --- lgsm/functions/core_dl.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh index a5361a9b7..f02c32a67 100644 --- a/lgsm/functions/core_dl.sh +++ b/lgsm/functions/core_dl.sh @@ -115,7 +115,7 @@ fn_fetch_file(){ # if larger file shows progress bar if [ "${local_filename##*.}" == "bz2" ]||[ "${local_filename##*.}" == "gz" ]||[ "${local_filename##*.}" == "zip" ]||[ "${local_filename##*.}" == "jar" ]; then echo -ne "downloading ${local_filename}..." - sleep 1 + sleep 0.5 curlcmd=$(${curlpath} --progress-bar --fail -L -o "${local_filedir}/${local_filename}" "${remote_fileurl}") echo -ne "downloading ${local_filename}..." else From a41944dab71f9c30200bd7ba34479fdcd30c4a1c Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 7 Jan 2018 19:42:57 +0000 Subject: [PATCH 23/44] changed udp to tcp as per #1730 --- 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 cca42c6d3..a567e2e13 100644 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -618,7 +618,7 @@ fn_info_message_minecraft(){ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" - echo -e "> Game\tINBOUND\t${port}\tudp" + echo -e "> Game\tINBOUND\t${port}\ttcp" } | column -s $'\t' -t } From 7c9b4fc8ac7da8e666081b35ef0d2a9f70a64198 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 7 Jan 2018 19:59:15 +0000 Subject: [PATCH 24/44] Added fix specific to stationeers. Causes var to be overwritten --- lgsm/functions/install_config.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index 72c6f6acc..d492ac56e 100644 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -61,7 +61,12 @@ fn_set_config_vars(){ echo "changing hostname." fn_script_log_info "changing hostname." sleep 1 - sed -i "s/SERVERNAME/${servername}/g" "${servercfgfullpath}" + + if [ $(grep SERVERNAME=SERVERNAME \"${lgsmdir}/config-default/config-game/${config}\") ]; then + sed -i "s/SERVERNAME=SERVERNAME/SERVERNAME=${servername}/g" "${servercfgfullpath}" + else + sed -i "s/SERVERNAME/${servername}/g" "${servercfgfullpath}" + fi echo "changing rcon/admin password." fn_script_log_info "changing rcon/admin password." sed -i "s/ADMINPASSWORD/${rconpass}/g" "${servercfgfullpath}" From f1b06b657ed6cc9e757a6fd99b70ac53518f2c96 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 7 Jan 2018 19:59:28 +0000 Subject: [PATCH 25/44] space --- lgsm/config-default/config-lgsm/stserver/_default.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/stserver/_default.cfg b/lgsm/config-default/config-lgsm/stserver/_default.cfg index f502a475e..331655400 100644 --- a/lgsm/config-default/config-lgsm/stserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/stserver/_default.cfg @@ -20,7 +20,7 @@ worldname="moon_save" ## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters # Edit with care | http://hurtworld.wikia.com/wiki/Hosting_A_Server fn_parms(){ -parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${queryport} -worldtype=${worldtype} -loadworld=${worldname} -worldname=${worldname} -autosaveinterval=${autosaveinterval} -clearallinterval=${clearinterval}" +parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${queryport} -worldtype=${worldtype} -loadworld=${worldname} -worldname=${worldname} -autosaveinterval=${autosaveinterval} -clearallinterval=${clearinterval}" } #### LinuxGSM Settings #### From 3ee3540f7073a759c91437a789762a1df6de3ba9 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 7 Jan 2018 19:59:48 +0000 Subject: [PATCH 26/44] Added stationeers still missing full port description --- lgsm/functions/info_messages.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index a567e2e13..7d378a1e8 100644 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -835,6 +835,16 @@ fn_info_message_starbound(){ } | column -s $'\t' -t } +fn_info_message_stationeers(){ + echo -e "netstat -atunp | grep rocketstation" + echo -e "" + { + echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" + echo -e "> Game\tINBOUND\t${port}\ttcp" + echo -e "> Query\tINBOUND\t${queryport}\ttcp" + } | column -s $'\t' -t +} + fn_info_message_teamspeak3(){ echo -e "netstat -atunp | grep ts3server" echo -e "" From 0998cc4a3f702478f731224a33e70f5dd896bc96 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 7 Jan 2018 20:02:09 +0000 Subject: [PATCH 27/44] added stationeers --- lgsm/functions/info_messages.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh index 7d378a1e8..00d273bc8 100644 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -1031,6 +1031,8 @@ fn_info_message_select_engine(){ fn_info_message_samp elif [ "${gamename}" == "Squad" ]; then fn_info_message_squad + elif [ "${gamename}" == "Stationeers" ]; then + fn_info_message_stationeers elif [ "${gamename}" == "TeamSpeak 3" ]; then fn_info_message_teamspeak3 elif [ "${gamename}" == "Tower Unite" ]; then From ccb786704b9acb9c5343dca44aeca9f17cc45517 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 7 Jan 2018 20:21:03 +0000 Subject: [PATCH 28/44] added stationeers --- 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 00d273bc8..cd53846b2 100644 --- a/lgsm/functions/info_messages.sh +++ b/lgsm/functions/info_messages.sh @@ -402,7 +402,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" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "seriousengine35" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" ) + local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "dontstarve" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "seriousengine35" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" ) for port_edit in "${ports_edit_array[@]}" do if [ "${shortname}" == "ut3" ]; then From e00f8358ff25998e3c9c233d944c627bd88c731a Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 7 Jan 2018 20:24:07 +0000 Subject: [PATCH 29/44] fixed password display bug --- lgsm/functions/info_config.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh index 74330efd2..47a279f94 100644 --- a/lgsm/functions/info_config.sh +++ b/lgsm/functions/info_config.sh @@ -895,13 +895,13 @@ fn_info_config_stationeers(){ servername="${unavailable}" serverpassword="${unavailable}" rconpassword="${unavailable}" - maxplayers="${unavailable}" + maxplayers="${unavailable}" else servername=$(grep "SERVERNAME" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - serverpassword=$(grep "PASSWORD" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/PASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') + serverpassword=$(grep "PASSWORD" "${servercfgfullpath}" | grep "^PASSWORD" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/PASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') rconpassword=$(grep "RCONPASSWORD" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/RCONPASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') maxplayers=$(grep "MAXPLAYER" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/MAXPLAYER//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//') - + # Not Set servername=${servername:-"NOT SET"} serverpassword=${serverpassword:-"NOT SET"} From 17227e5e7486eaffaac97dde2aa9d09189ddf1e2 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 17 Jan 2018 23:04:57 +0000 Subject: [PATCH 30/44] updated travis --- .travis.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index eb258edce..c52f1af36 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,6 @@ language: bash +dist: trusty sudo: required -env: -- DISTRO=ubuntu-trusty before_script: - curl -L "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/shunit2/shunit2-2.1.6.tgz" | tar zx From 73bf4277f578c90cf996fa4ca513cec34f9b074e Mon Sep 17 00:00:00 2001 From: Lartza Date: Sat, 20 Jan 2018 09:59:31 +0200 Subject: [PATCH 31/44] Make Killing Floor 2 gamemode configurable --- lgsm/config-default/config-lgsm/kf2server/_default.cfg | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/kf2server/_default.cfg b/lgsm/config-default/config-lgsm/kf2server/_default.cfg index 5e9c243cd..a5f8d6f65 100644 --- a/lgsm/config-default/config-lgsm/kf2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/kf2server/_default.cfg @@ -12,10 +12,11 @@ ip="0.0.0.0" queryport="27015" defaultmap="KF-BioticsLab" +gamemode="KFGameContent.KFGameInfo_VersusSurvival" ## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters fn_parms(){ -parms="\"${defaultmap}?Game=KFGameContent.KFGameInfo_VersusSurvival?ConfigSubDir=${servicename} -QueryPort=${queryport}\"" +parms="\"${defaultmap}?Game=${gamemode}?ConfigSubDir=${servicename} -QueryPort=${queryport}\"" } #### LinuxGSM Settings #### From 3cabe86ec8e0eff62cad5d3820ab71a5d67708bd Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 13:47:36 +0000 Subject: [PATCH 32/44] removed gamedig from develop not ready for this branch --- lgsm/functions/command_dev_gamedig.sh | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 lgsm/functions/command_dev_gamedig.sh diff --git a/lgsm/functions/command_dev_gamedig.sh b/lgsm/functions/command_dev_gamedig.sh deleted file mode 100644 index 9ef5fb91d..000000000 --- a/lgsm/functions/command_dev_gamedig.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash -# LinuxGSM command_dev_gamedig.sh function -# Author: Daniel Gibbs -# Website: https://gameservermanagers.com -# Description: Displays output of gamedig in json format. - -local commandname="GAMEDIG" -local commandaction="Gamedig" -local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" From 6a1ffe061efd299d5797d7dc423c390648b61430 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 13:50:43 +0000 Subject: [PATCH 33/44] tmux new-session to match current master --- lgsm/functions/command_start.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgsm/functions/command_start.sh b/lgsm/functions/command_start.sh index 5dcd36ff0..2cccfa271 100644 --- a/lgsm/functions/command_start.sh +++ b/lgsm/functions/command_start.sh @@ -106,7 +106,7 @@ fn_start_tmux(){ # Create lockfile date > "${rootdir}/${lockselfname}" cd "${executabledir}" - tmux new-session -d -x "${sessionwidth}" -y "${sessionheight}" -s "${servicename}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${servicename}-tmux-error.tmp" + tmux new-session -d -x "${sessionheight}" -y "${sessionwidth}" -s "${servicename}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${servicename}-tmux-error.tmp" # Create logfile touch "${consolelog}" From e920e97c11426d7995ea26d26775621a85fbf51a Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 14:01:02 +0000 Subject: [PATCH 34/44] added memory requirements for Stationeers --- lgsm/functions/check_system_requirements.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lgsm/functions/check_system_requirements.sh b/lgsm/functions/check_system_requirements.sh index 0e1514814..06b3149cc 100644 --- a/lgsm/functions/check_system_requirements.sh +++ b/lgsm/functions/check_system_requirements.sh @@ -27,6 +27,9 @@ elif [ "${gamename}" == "Minecraft" ]; then elif [ "${gamename}" == "Natural Selection 2" ]||[ "${gamename}" == "NS2: Combat" ]; then ramrequirementmb="1000" ramrequirementgb="1" +elif [ "${shortname}" == "st" ]; then + ramrequirementmb="1000" + ramrequirementgb="1" fi # If the game or engine has a minimum RAM Requirement, compare it to system's available RAM. From 2f7dad87e18e705568306170769e96819a9ad8b3 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 14:19:18 +0000 Subject: [PATCH 35/44] changed messages from info to fatal as per exit code standard https://github.com/GameServerManagers/LinuxGSM/wiki/LinuxGSM-Exit-Codes --- lgsm/functions/command_backup.sh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lgsm/functions/command_backup.sh b/lgsm/functions/command_backup.sh index 80e81a191..089e6bf66 100644 --- a/lgsm/functions/command_backup.sh +++ b/lgsm/functions/command_backup.sh @@ -114,10 +114,10 @@ fn_backup_compression(){ fn_script_log_info "backup ${rootdirduexbackup} ${backupname}.tar.gz, in progress" excludedir=$(fn_backup_relpath) - # CHECK THAT excludedir is a valid path. + # Check that excludedir is a valid path. if [ ! -d "${excludedir}" ] ; then - fn_print_info_nl "Problem identifying the previous backup directory for exclusion." - fn_script_log_error "Problem identifying the previous backup directory for exclusion" + fn_print_fail_nl "Problem identifying the previous backup directory for exclusion." + fn_script_log_fatal "Problem identifying the previous backup directory for exclusion" core_exit.sh fi @@ -195,16 +195,16 @@ fn_backup_relpath() { declare -a rdirtoks=($(readlink -f "${rootdir}" | sed "s/\// /g")) if [ ${#rdirtoks[@]} -eq 0 ]; then - fn_print_info_nl "Problem assessing rootdir during relative path assessment" - fn_script_log_error "Problem assessing rootdir during relative path assessment: ${rootdir}" + fn_print_fail_nl "Problem assessing rootdir during relative path assessment" + fn_script_log_fatal "Problem assessing rootdir during relative path assessment: ${rootdir}" core_exit.sh fi # Populate an array of tokens initialized from the backupdir components: declare -a bdirtoks=($(readlink -f "${backupdir}" | sed "s/\// /g")) if [ ${#bdirtoks[@]} -eq 0 ]; then - fn_print_info_nl "Problem assessing backupdir during relative path assessment" - fn_script_log_error "Problem assessing backupdir during relative path assessment: ${rootdir}" + fn_print_fail_nl "Problem assessing backupdir during relative path assessment" + fn_script_log_fatal "Problem assessing backupdir during relative path assessment: ${rootdir}" core_exit.sh fi From e1a8d299db1763aaeb2085e8e1a9e7c3277455e3 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 15:10:24 +0000 Subject: [PATCH 36/44] added game log dir --- lgsm/config-default/config-lgsm/stserver/_default.cfg | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lgsm/config-default/config-lgsm/stserver/_default.cfg b/lgsm/config-default/config-lgsm/stserver/_default.cfg index 331655400..cc0e2aa08 100644 --- a/lgsm/config-default/config-lgsm/stserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/stserver/_default.cfg @@ -112,17 +112,15 @@ backupdir="${rootdir}/backups" ## Logging Directories logdir="${rootdir}/log" -gamelogdir="${logdir}/server" +gamelogdir="${HOME}/.config/unity3d/Rocketwerkz/Stationeers" lgsmlogdir="${logdir}/script" consolelogdir="${logdir}/console" -gamelog="${gamelogdir}/${servicename}-game.log" lgsmlog="${lgsmlogdir}/${servicename}-script.log" consolelog="${consolelogdir}/${servicename}-console.log" alertlog="${lgsmlogdir}/${servicename}-alert.log" postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log" ## Logs Naming -gamelogdate="${gamelogdir}/${servicename}-game-$(date '+%Y-%m-%d-%H:%M:%S').log" lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" From 4a83bb263021fd3c40382087361f902ba39fbc93 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 15:42:36 +0000 Subject: [PATCH 37/44] #1753 fixed idtech query mix up --- lgsm/functions/command_monitor.sh | 2 +- lgsm/functions/gsquery.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lgsm/functions/command_monitor.sh b/lgsm/functions/command_monitor.sh index dd8e41676..26cfb3da4 100644 --- a/lgsm/functions/command_monitor.sh +++ b/lgsm/functions/command_monitor.sh @@ -79,7 +79,7 @@ fn_monitor_tmux(){ fn_print_ok_eol_nl fn_script_log_pass "Checking session: OK" # runs gsquery check on game with specific engines. - local allowed_engines_array=( avalanche2.0 avalanche3.0 goldsource idtech3 idtech3_ql iw2.0 iw3.0 madness quake refractor realvirtuality source spark starbound unity3d unreal unreal2 ) + local allowed_engines_array=( avalanche2.0 avalanche3.0 goldsource idtech2 idtech3 idtech3_ql iw2.0 iw3.0 madness quake refractor realvirtuality source spark starbound unity3d unreal unreal2 ) for allowed_engine in "${allowed_engines_array[@]}" do if [ "${allowed_engine}" == "starbound" ]; then diff --git a/lgsm/functions/gsquery.py b/lgsm/functions/gsquery.py index bba0b97fd..c6d400b54 100644 --- a/lgsm/functions/gsquery.py +++ b/lgsm/functions/gsquery.py @@ -18,8 +18,8 @@ class PythonGSQ: self.default_buffer_length = 1024 # sourcequery=[ 'avalanche3.0','madness','quakelive','realvirtuality','refractor','source','goldsource','spark','starbound','unity3d'] - idtech2query=['idtech3','quake','iw3.0'] - idtech3query=['idtech2','iw2.0'] + idtech3query=['idtech3','quake','iw3.0'] + idtech2query=['idtech2','iw2.0'] if self.option.engine in sourcequery: self.query_prompt_string = b'\xFF\xFF\xFF\xFFTSource Engine Query\0' elif self.option.engine in idtech2query: From 1db34297d067d3c1702a217360265a9a5e8d76b2 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 19:15:58 +0000 Subject: [PATCH 38/44] Updated GSLT --- lgsm/config-default/config-lgsm/tuserver/_default.cfg | 5 +++++ lgsm/config-default/config-lgsm/zpsserver/_default.cfg | 5 +++++ lgsm/functions/install_gslt.sh | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/lgsm/config-default/config-lgsm/tuserver/_default.cfg b/lgsm/config-default/config-lgsm/tuserver/_default.cfg index 6cfeeaf11..105b3b5a6 100644 --- a/lgsm/config-default/config-lgsm/tuserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/tuserver/_default.cfg @@ -13,6 +13,11 @@ ip="0.0.0.0" port="7777" queryport="27015" +## Optional: Game Server Login Token +# GSLT can be used for running a public server. +# More info: https://gameservermanagers.com/gslt +gslt="" + ## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters fn_parms(){ parms="-log -MultiHome=${ip} -Port=${port} -QueryPort=${queryport} -TowerServerINI=${servicename}.ini" diff --git a/lgsm/config-default/config-lgsm/zpsserver/_default.cfg b/lgsm/config-default/config-lgsm/zpsserver/_default.cfg index 16988e663..4a95aef42 100644 --- a/lgsm/config-default/config-lgsm/zpsserver/_default.cfg +++ b/lgsm/config-default/config-lgsm/zpsserver/_default.cfg @@ -16,6 +16,11 @@ sourcetvport="27020" defaultmap="zps_deadend" maxplayers="20" +## Optional: Game Server Login Token +# GSLT can be used for running a public server. +# More info: https://gameservermanagers.com/gslt +gslt="" + ## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters fn_parms(){ parms="-game zps -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}" diff --git a/lgsm/functions/install_gslt.sh b/lgsm/functions/install_gslt.sh index c1c1bf5f0..918753d74 100644 --- a/lgsm/functions/install_gslt.sh +++ b/lgsm/functions/install_gslt.sh @@ -12,7 +12,7 @@ echo "" echo "Game Server Login Token" echo "=================================" sleep 1 -if [ "${gamename}" == "Counter-Strike: Global Offensive" ]||[ "${gamename}" == "Counter-Strike: Source" ]; then +if [ "${gamename}" == "Counter-Strike: Global Offensive" ]||[ "${gamename}" == "Counter-Strike: Source" ]||[ "${gamename}" == "No More Room in Hell" ]; then echo "GSLT is required to run a public ${gamename} server" fn_script_log_info "GSLT is required to run a public ${gamename} server" else From 038704a3a6f9a436f8bf6fe799b51292632c5d9e Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 19:16:11 +0000 Subject: [PATCH 39/44] removed coserver --- .../config-lgsm/coserver/_default.cfg | 151 ------------------ 1 file changed, 151 deletions(-) delete mode 100644 lgsm/config-default/config-lgsm/coserver/_default.cfg diff --git a/lgsm/config-default/config-lgsm/coserver/_default.cfg b/lgsm/config-default/config-lgsm/coserver/_default.cfg deleted file mode 100644 index bcae9bffc..000000000 --- a/lgsm/config-default/config-lgsm/coserver/_default.cfg +++ /dev/null @@ -1,151 +0,0 @@ -################################## -######## 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://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters -# https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers#Starting_the_Server -# [Game Modes] gametype gamemode -# Arms Race 1 0 -# Classic Casual 0 0 -# Classic Competitive 0 1 -# Demolition 1 1 -# Deathmatch 1 2 -gametype="0" -gamemode="0" -mapgroup="mg_active" -ip="0.0.0.0" -port="27015" -clientport="27005" -sourcetvport="27020" -defaultmap="de_mirage" -maxplayers="16" -tickrate="64" - -## Required: Game Server Login Token -# GSLT is required for running a public server. -# More info: https://gameservermanagers.com/gslt -gslt="" - -## Optional: Workshop Parameters -# https://developer.valvesoftware.com/wiki/CSGO_Workshop_For_Server_Operators -# To get an authkey visit - http://steamcommunity.com/dev/apikey -# authkey="" -# ws_collection_id="" -# ws_start_map="" - -## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters -fn_parms(){ -parms="-game csco -usercon -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +sv_setsteamaccount ${gslt} -tickrate ${tickrate} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers_override ${maxplayers} +mapgroup ${mapgroup} +game_mode ${gamemode} +game_type ${gametype} +host_workshop_collection ${ws_collection_id} +workshop_start_map ${ws_start_map} -authkey ${authkey}" -} - -#### LinuxGSM Settings #### - -## Notification Alerts -# (on|off) - -# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info -postalert="off" -postdays="7" -posttarget="https://hastebin.com" - -# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord -discordalert="off" -discordwebhook="webhook" - -# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email -emailalert="off" -email="email@example.com" -emailfrom="" - -# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT -iftttalert="off" -ifttttoken="accesstoken" -iftttevent="linuxgsm_alert" - -# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun -mailgunalert="off" -mailguntoken="accesstoken" -mailgundomain="example.com" -mailgunemailfrom="alert@example.com" -mailgunemail="email@myemail.com" - -# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet -pushbulletalert="off" -pushbullettoken="accesstoken" -channeltag="" - -# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover -pushoveralert="off" -pushovertoken="accesstoken" - -# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram -telegramalert="off" -telegramtoken="accesstoken" -telegramchatid="" - -## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update -updateonstart="off" - -## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup -maxbackups="4" -maxbackupdays="30" -stoponbackup="on" - -## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging -consolelogging="on" -logdays="7" - -#### LinuxGSM Advanced Settings #### - -## SteamCMD Settings -# Server appid -appid="740" -appid_co="600380" -# Steam App Branch Select -# Allows to opt into the various Steam app branches. Default branch is "". -# Example: "-beta latest_experimental" -branch="" - -## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login -steamuser="username" -steampass='password' - -## LinuxGSM Server Details -# Do not edit -gamename="Classic Offensive" -engine="source" - -#### Directories #### -# Edit with care - -## Server Specific Directories -systemdir="${serverfiles}/csco" -executabledir="${serverfiles}" -executable="./srcds_run" -servercfg="${servicename}.cfg" -servercfgdefault="server.cfg" -servercfgdir="${systemdir}/cfg" -servercfgfullpath="${servercfgdir}/${servercfg}" - -## Backup Directory -backupdir="${rootdir}/backups" - -## Logging Directories -logdir="${rootdir}/log" -gamelogdir="${systemdir}/logs" -lgsmlogdir="${logdir}/script" -consolelogdir="${logdir}/console" -lgsmlog="${lgsmlogdir}/${servicename}-script.log" -consolelog="${consolelogdir}/${servicename}-console.log" -alertlog="${lgsmlogdir}/${servicename}-alert.log" -postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log" - -## Logs Naming -lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" -consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" \ No newline at end of file From 80c7e0e7359b0c4a17a0383971fd564bb71d1baf Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 19:23:35 +0000 Subject: [PATCH 40/44] updated domain to linuxgsm.com --- lgsm/functions/install_server_files.sh | 28 +++++++++++++------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/lgsm/functions/install_server_files.sh b/lgsm/functions/install_server_files.sh index 9f7d32624..77ebb1656 100644 --- a/lgsm/functions/install_server_files.sh +++ b/lgsm/functions/install_server_files.sh @@ -10,35 +10,35 @@ local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" fn_install_server_files(){ if [ "${gamename}" == "Battlefield: 1942" ]; then - remote_fileurl="http://files.gameservermanagers.com/BattleField1942/bf1942_lnxded-1.61-hacked-to-1.612.full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="bf1942_lnxded-1.61-hacked-to-1.612.full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="a86a5d3cd64ca59abcc9bb9f777c2e5d" + remote_fileurl="http://files.linuxgsm.com/BattleField1942/bf1942_lnxded-1.61-hacked-to-1.612.full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="bf1942_lnxded-1.61-hacked-to-1.612.full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="a86a5d3cd64ca59abcc9bb9f777c2e5d" elif [ "${gamename}" == "Call of Duty" ]; then - remote_fileurl="http://files.gameservermanagers.com/CallOfDuty/cod-lnxded-1.5b-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="cod-lnxded-1.5-large.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="19629895a4cf6fd8f6d1ee198b5304cd" + remote_fileurl="http://files.linuxgsm.com/CallOfDuty/cod-lnxded-1.5b-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="cod-lnxded-1.5-large.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="19629895a4cf6fd8f6d1ee198b5304cd" elif [ "${gamename}" == "Call of Duty: United Offensive" ]; then - remote_fileurl="http://files.gameservermanagers.com/CallOfDutyUnitedOffensive/coduo-lnxded-1.51b-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="coduo-lnxded-1.51b-full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="f1804ef13036e2b4ab535db000b19e97" + remote_fileurl="http://files.linuxgsm.com/CallOfDutyUnitedOffensive/coduo-lnxded-1.51b-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="coduo-lnxded-1.51b-full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="f1804ef13036e2b4ab535db000b19e97" elif [ "${gamename}" == "Call of Duty 2" ]; then - remote_fileurl="http://files.gameservermanagers.com/CallOfDuty2/cod2-lnxded-1.3-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="cod2-lnxded-1.3-full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="078128f83d06dc3d7699428dc2870214" + remote_fileurl="http://files.linuxgsm.com/CallOfDuty2/cod2-lnxded-1.3-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="cod2-lnxded-1.3-full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="078128f83d06dc3d7699428dc2870214" elif [ "${gamename}" == "Call of Duty 4" ]; then - remote_fileurl="http://files.gameservermanagers.com/CallOfDuty4/cod4x18_dedrun.tar.bz2"; local_filedir="${tmpdir}"; local_filename="cod4x18_dedrun.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="bebdfc1755626462bdaad49f6f926c08" + remote_fileurl="http://files.linuxgsm.com/CallOfDuty4/cod4x18_dedrun.tar.bz2"; local_filedir="${tmpdir}"; local_filename="cod4x18_dedrun.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="bebdfc1755626462bdaad49f6f926c08" elif [ "${gamename}" == "Call of Duty: World at War" ]; then - remote_fileurl="http://files.gameservermanagers.com/CallOfDutyWorldAtWar/codwaw-lnxded-1.7-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="codwaw-lnxded-1.7-full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="0489697ff3bf678c109bfb377d1b7895" + remote_fileurl="http://files.linuxgsm.com/CallOfDutyWorldAtWar/codwaw-lnxded-1.7-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="codwaw-lnxded-1.7-full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="0489697ff3bf678c109bfb377d1b7895" elif [ "${gamename}" == "GoldenEye: Source" ]; then - remote_fileurl="http://files.gameservermanagers.com/GoldenEyeSource/GoldenEye_Source_v5.0.6_full_server.tar.bz2"; local_filedir="${tmpdir}"; local_filename="GoldenEye_Source_v5.0.6_full_server.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="c45c16293096706e8b5e2cd64a6f2931" + remote_fileurl="http://files.linuxgsm.com/GoldenEyeSource/GoldenEye_Source_v5.0.6_full_server.tar.bz2"; local_filedir="${tmpdir}"; local_filename="GoldenEye_Source_v5.0.6_full_server.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="c45c16293096706e8b5e2cd64a6f2931" elif [ "${gamename}" == "Quake 2" ]; then - remote_fileurl="http://files.gameservermanagers.com/Quake2/quake2-3.20-glibc-i386-full-linux2.0.tar.bz2"; local_filedir="${tmpdir}"; local_filename="quake2-3.20-glibc-i386-full-linux2.0.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="0b8c7e2d51f40b56b328c69e986e7c5f" + remote_fileurl="http://files.linuxgsm.com/Quake2/quake2-3.20-glibc-i386-full-linux2.0.tar.bz2"; local_filedir="${tmpdir}"; local_filename="quake2-3.20-glibc-i386-full-linux2.0.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="0b8c7e2d51f40b56b328c69e986e7c5f" elif [ "${gamename}" == "Quake 3: Arena" ]; then - remote_fileurl="http://files.gameservermanagers.com/Quake3/quake3-1.32c-x86-full-linux.tar.bz2"; local_filedir="${tmpdir}"; local_filename="quake3-1.32c-x86-full-linux.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="fd7258d827474f67663dda297bff4306" + remote_fileurl="http://files.linuxgsm.com/Quake3/quake3-1.32c-x86-full-linux.tar.bz2"; local_filedir="${tmpdir}"; local_filename="quake3-1.32c-x86-full-linux.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="fd7258d827474f67663dda297bff4306" elif [ "${gamename}" == "QuakeWorld" ]; then - remote_fileurl="http://files.gameservermanagers.com/QuakeWorld/nquake.server.linux.083116.full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="nquake.server.linux.083116.full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="75a409cf08d808f075e4dacdc7b21b78" + remote_fileurl="http://files.linuxgsm.com/QuakeWorld/nquake.server.linux.083116.full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="nquake.server.linux.083116.full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="75a409cf08d808f075e4dacdc7b21b78" elif [ "${gamename}" == "Unreal Tournament 2004" ]; then - remote_fileurl="http://files.gameservermanagers.com/UnrealTournament2004/ut2004-server-3339-ultimate-linux.tar.bz2"; local_filedir="${tmpdir}"; local_filename="ut2004-server-3339-ultimate-linux.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="67c5e2cd9c2a4b04f163962ee41eff54" + remote_fileurl="http://files.linuxgsm.com/UnrealTournament2004/ut2004-server-3369-2-ultimate-linux.tar.bz2"; local_filedir="${tmpdir}"; local_filename="ut2004-server-3369-2-ultimate-linux.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="67c5e2cd9c2a4b04f163962ee41eff54" elif [ "${gamename}" == "Unreal Tournament 99" ]; then - remote_fileurl="http://files.gameservermanagers.com/UnrealTournament99/ut99-server-451-ultimate-linux.tar.bz2"; local_filedir="${tmpdir}"; local_filename="ut99-server-451-ultimate-linux.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="49cb24d0550ff6ddeaba6007045c6edd" + remote_fileurl="http://files.linuxgsm.com/UnrealTournament99/ut99-server-451-ultimate-linux.tar.bz2"; local_filedir="${tmpdir}"; local_filename="ut99-server-451-ultimate-linux.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="49cb24d0550ff6ddeaba6007045c6edd" elif [ "${gamename}" == "Unreal Tournament" ]; then remote_fileurl="https://s3.amazonaws.com/unrealtournament/UnrealTournament-Client-XAN-3395761-Linux.zip"; local_filedir="${tmpdir}"; local_filename="UnrealTournament-Server-XAN-3395761-Linux.zip"; chmodx="noexecute" run="norun"; force="noforce"; md5="f04ad5b96865b19613303331ff4075eb" elif [ "${gamename}" == "Unreal Tournament 3" ]; then - remote_fileurl="http://files.gameservermanagers.com/UnrealTournament3/UT3-linux-server-2.1.tar.bz2"; local_filedir="${tmpdir}"; local_filename="UT3-linux-server-2.1.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="2527437b46f1b47f20228d27d72395a6" + remote_fileurl="http://files.linuxgsm.com/UnrealTournament3/UT3-linux-server-2.1.tar.bz2"; local_filedir="${tmpdir}"; local_filename="UT3-linux-server-2.1.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="2527437b46f1b47f20228d27d72395a6" elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then - remote_fileurl="http://files.gameservermanagers.com/WolfensteinEnemyTerritory/enemy-territory.260b.tar.bz2"; local_filedir="${tmpdir}"; local_filename="enemy-territory.260b.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="f833f514bfcdd46b42c111f83350c5a7" + remote_fileurl="http://files.linuxgsm.com/WolfensteinEnemyTerritory/enemy-territory.260b.tar.bz2"; local_filedir="${tmpdir}"; local_filename="enemy-territory.260b.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="f833f514bfcdd46b42c111f83350c5a7" elif [ "${gamename}" == "San Andreas Multiplayer" ]; then remote_fileurl="http://files.sa-mp.com/samp037svr_R2-1.tar.gz"; local_filedir="${tmpdir}"; local_filename="samp037svr_R2-1.tar.gz"; chmodx="nochmodx" run="norun"; force="noforce"; md5="93705e165550c97484678236749198a4" fi From 17bcde7dfa50109f1e9a03f4f4e358682e63adac Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 23:30:35 +0000 Subject: [PATCH 41/44] removed JSON.sh --- lgsm/functions/JSON.sh | 208 ----------------------------------------- 1 file changed, 208 deletions(-) delete mode 100644 lgsm/functions/JSON.sh diff --git a/lgsm/functions/JSON.sh b/lgsm/functions/JSON.sh deleted file mode 100644 index 077863385..000000000 --- a/lgsm/functions/JSON.sh +++ /dev/null @@ -1,208 +0,0 @@ -#!/bin/sh - -throw() { - echo "$*" >&2 - exit 1 -} - -BRIEF=0 -LEAFONLY=0 -PRUNE=0 -NO_HEAD=0 -NORMALIZE_SOLIDUS=0 - -usage() { - echo - echo "Usage: JSON.sh [-b] [-l] [-p] [-s] [-h]" - echo - echo "-p - Prune empty. Exclude fields with empty values." - echo "-l - Leaf only. Only show leaf nodes, which stops data duplication." - echo "-b - Brief. Combines 'Leaf only' and 'Prune empty' options." - echo "-n - No-head. Do not show nodes that have no path (lines that start with [])." - echo "-s - Remove escaping of the solidus symbol (straight slash)." - echo "-h - This help text." - echo -} - -parse_options() { - set -- "$@" - local ARGN=$# - while [ "$ARGN" -ne 0 ] - do - case $1 in - -h) usage - exit 0 - ;; - -b) BRIEF=1 - LEAFONLY=1 - PRUNE=1 - ;; - -l) LEAFONLY=1 - ;; - -p) PRUNE=1 - ;; - -n) NO_HEAD=1 - ;; - -s) NORMALIZE_SOLIDUS=1 - ;; - ?*) echo "ERROR: Unknown option." - usage - exit 0 - ;; - esac - shift 1 - ARGN=$((ARGN-1)) - done -} - -awk_egrep () { - local pattern_string=$1 - - gawk '{ - while ($0) { - start=match($0, pattern); - token=substr($0, start, RLENGTH); - print token; - $0=substr($0, start+RLENGTH); - } - }' pattern="$pattern_string" -} - -tokenize () { - local GREP - local ESCAPE - local CHAR - - if echo "test string" | egrep -ao --color=never "test" >/dev/null 2>&1 - then - GREP='egrep -ao --color=never' - else - GREP='egrep -ao' - fi - - if echo "test string" | egrep -o "test" >/dev/null 2>&1 - then - ESCAPE='(\\[^u[:cntrl:]]|\\u[0-9a-fA-F]{4})' - CHAR='[^[:cntrl:]"\\]' - else - GREP=awk_egrep - ESCAPE='(\\\\[^u[:cntrl:]]|\\u[0-9a-fA-F]{4})' - CHAR='[^[:cntrl:]"\\\\]' - fi - - local STRING="\"$CHAR*($ESCAPE$CHAR*)*\"" - local NUMBER='-?(0|[1-9][0-9]*)([.][0-9]*)?([eE][+-]?[0-9]*)?' - local KEYWORD='null|false|true' - local SPACE='[[:space:]]+' - - # Force zsh to expand $A into multiple words - local is_wordsplit_disabled=$(unsetopt 2>/dev/null | grep -c '^shwordsplit$') - if [ $is_wordsplit_disabled != 0 ]; then setopt shwordsplit; fi - $GREP "$STRING|$NUMBER|$KEYWORD|$SPACE|." | egrep -v "^$SPACE$" - if [ $is_wordsplit_disabled != 0 ]; then unsetopt shwordsplit; fi -} - -parse_array () { - local index=0 - local ary='' - read -r token - case "$token" in - ']') ;; - *) - while : - do - parse_value "$1" "$index" - index=$((index+1)) - ary="$ary""$value" - read -r token - case "$token" in - ']') break ;; - ',') ary="$ary," ;; - *) throw "EXPECTED , or ] GOT ${token:-EOF}" ;; - esac - read -r token - done - ;; - esac - [ "$BRIEF" -eq 0 ] && value=$(printf '[%s]' "$ary") || value= - : -} - -parse_object () { - local key - local obj='' - read -r token - case "$token" in - '}') ;; - *) - while : - do - case "$token" in - '"'*'"') key=$token ;; - *) throw "EXPECTED string GOT ${token:-EOF}" ;; - esac - read -r token - case "$token" in - ':') ;; - *) throw "EXPECTED : GOT ${token:-EOF}" ;; - esac - read -r token - parse_value "$1" "$key" - obj="$obj$key:$value" - read -r token - case "$token" in - '}') break ;; - ',') obj="$obj," ;; - *) throw "EXPECTED , or } GOT ${token:-EOF}" ;; - esac - read -r token - done - ;; - esac - [ "$BRIEF" -eq 0 ] && value=$(printf '{%s}' "$obj") || value= - : -} - -parse_value () { - local jpath="${1:+$1,}$2" isleaf=0 isempty=0 print=0 - case "$token" in - '{') parse_object "$jpath" ;; - '[') parse_array "$jpath" ;; - # At this point, the only valid single-character tokens are digits. - ''|[!0-9]) throw "EXPECTED value GOT ${token:-EOF}" ;; - *) value=$token - # if asked, replace solidus ("\/") in json strings with normalized value: "/" - [ "$NORMALIZE_SOLIDUS" -eq 1 ] && value=$(echo "$value" | sed 's#\\/#/#g') - isleaf=1 - [ "$value" = '""' ] && isempty=1 - ;; - esac - [ "$value" = '' ] && return - [ "$NO_HEAD" -eq 1 ] && [ -z "$jpath" ] && return - - [ "$LEAFONLY" -eq 0 ] && [ "$PRUNE" -eq 0 ] && print=1 - [ "$LEAFONLY" -eq 1 ] && [ "$isleaf" -eq 1 ] && [ $PRUNE -eq 0 ] && print=1 - [ "$LEAFONLY" -eq 0 ] && [ "$PRUNE" -eq 1 ] && [ "$isempty" -eq 0 ] && print=1 - [ "$LEAFONLY" -eq 1 ] && [ "$isleaf" -eq 1 ] && \ - [ $PRUNE -eq 1 ] && [ $isempty -eq 0 ] && print=1 - [ "$print" -eq 1 ] && printf "[%s]\t%s\n" "$jpath" "$value" - : -} - -parse () { - read -r token - parse_value - read -r token - case "$token" in - '') ;; - *) throw "EXPECTED EOF GOT $token" ;; - esac -} - -if ([ "$0" = "$BASH_SOURCE" ] || ! [ -n "$BASH_SOURCE" ]); -then - parse_options "$@" - tokenize | parse -fi - -# vi: expandtab sw=2 ts=2 From ada3909e6c7835dc7ebb32d2debc0f9624402bd7 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 23:33:22 +0000 Subject: [PATCH 42/44] update_ts3.sh can now use ts3 version json file is jq is installed --- lgsm/functions/update_ts3.sh | 35 ++++++++++++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/lgsm/functions/update_ts3.sh b/lgsm/functions/update_ts3.sh index db0396112..9340ff522 100644 --- a/lgsm/functions/update_ts3.sh +++ b/lgsm/functions/update_ts3.sh @@ -83,8 +83,32 @@ else fi } + fn_update_ts3_availablebuild(){ # Gets latest build info. + if [ "${arch}" == "x86_64" ]; then + availablebuild=$(${curlpath} -s 'https://www.teamspeak.com/versions/server.json' | jq -r '.linux.x86_64.version') + elif [ "${arch}" == "x86" ]; then + availablebuild=$(${curlpath} -s 'https://www.teamspeak.com/versions/server.json' | jq -r '.linux.x86.version') + fi + # Checks if availablebuild variable has been set + if [ -z "${availablebuild}" ]; then + fn_print_fail "Checking for update: teamspeak.com" + sleep 0.5 + fn_print_fail "Checking for update: teamspeak.com: Not returning version info" + fn_script_log_fatal "Failure! Checking for update: teamspeak.com: Not returning version info" + core_exit.sh + elif [ "${installer}" == "1" ]; then + : + else + fn_print_ok_nl "Checking for update: teamspeak.com" + fn_script_log_pass "Checking for update: teamspeak.com" + sleep 0.5 + fi +} + +fn_update_ts3_availablebuild_legacy(){ + # Gets latest build info. # Grabs all version numbers but not in correct order. wget "http://dl.4players.de/ts/releases/?C=M;O=D" -q -O -| grep -i dir | egrep -o '.*\/<\/a>' | egrep -o '[0-9\.?]+'|uniq > "${tmpdir}/.ts3_version_numbers_unsorted.tmp" @@ -180,9 +204,14 @@ fn_update_ts3_compare(){ fn_update_ts3_arch if [ "${installer}" == "1" ]; then - fn_update_ts3_availablebuild - fn_update_ts3_dl -else + # if jq available uses json update checker + if [ "$(command -v jq)" ]||[ "$(which jq >/dev/null 2>&1)" ]; then + fn_update_ts3_availablebuild + else + fn_update_ts3_availablebuild_legacy + fi + fn_update_ts3_dl + else # Checks for server update from teamspeak.com using a mirror dl.4players.de. fn_print_dots "Checking for update: teamspeak.com" fn_script_log_info "Checking for update: teamspeak.com" From 78706e466d28c2c5c8b090b3bc87e78c744d68e4 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 12 Mar 2018 23:34:10 +0000 Subject: [PATCH 43/44] altered sleep timings --- lgsm/functions/update_minecraft.sh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lgsm/functions/update_minecraft.sh b/lgsm/functions/update_minecraft.sh index 930c1700b..5fb3fa648 100644 --- a/lgsm/functions/update_minecraft.sh +++ b/lgsm/functions/update_minecraft.sh @@ -70,12 +70,10 @@ fn_update_currentbuild(){ fn_update_availablebuild(){ # Gets latest build info. availablebuild=$(${curlpath} -s "https://launchermeta.mojang.com/mc/game/version_manifest.json" | sed -e 's/^.*"release":"\([^"]*\)".*$/\1/') - sleep 1 - # Checks if availablebuild variable has been set if [ -z "${availablebuild}" ]; then fn_print_fail "Checking for update: mojang.com" - sleep 1 + sleep 0.5 fn_print_fail "Checking for update: mojang.com: Not returning version info" fn_script_log_fatal "Failure! Checking for update: mojang.com: Not returning version info" core_exit.sh @@ -84,7 +82,7 @@ fn_update_availablebuild(){ else fn_print_ok_nl "Checking for update: mojang.com" fn_script_log_pass "Checking for update: mojang.com" - sleep 1 + sleep 0.5 fi } From 90248bf72785c3319df2e3ccd9c332739d7d9689 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Tue, 13 Mar 2018 16:30:37 +0000 Subject: [PATCH 44/44] Release 180313 --- linuxgsm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linuxgsm.sh b/linuxgsm.sh index 3c4ec12cb..1b87bb284 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="171216" +version="180313" shortname="core" gameservername="core" rootdir="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"