134 changed files with 1079 additions and 391 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,161 @@ |
|||||
|
#!/bin/bash |
||||
|
# Empires Mod |
||||
|
# Server Management Script |
||||
|
# Author: Daniel Gibbs |
||||
|
# Website: https://gameservermanagers.com |
||||
|
if [ -f ".dev-debug" ]; then |
||||
|
exec 5>dev-debug.log |
||||
|
BASH_XTRACEFD="5" |
||||
|
set -x |
||||
|
fi |
||||
|
|
||||
|
version="210516" |
||||
|
|
||||
|
#### Variables #### |
||||
|
|
||||
|
# Notification Alerts |
||||
|
# (on|off) |
||||
|
|
||||
|
# Email |
||||
|
emailalert="off" |
||||
|
email="[email protected]" |
||||
|
|
||||
|
# Pushbullet |
||||
|
# https://www.pushbullet.com/#settings |
||||
|
pushbulletalert="off" |
||||
|
pushbullettoken="accesstoken" |
||||
|
|
||||
|
# Steam login |
||||
|
steamuser="anonymous" |
||||
|
steampass="" |
||||
|
|
||||
|
# Start Variables |
||||
|
defaultmap="emp_district" |
||||
|
maxplayers="62" |
||||
|
port="27015" |
||||
|
sourcetvport="27020" |
||||
|
clientport="27005" |
||||
|
ip="0.0.0.0" |
||||
|
updateonstart="off" |
||||
|
|
||||
|
# Optional: Game Server Login Token |
||||
|
# GSLT can be used for running a public server. |
||||
|
# More info: https://gameservermanagers.com/gslt |
||||
|
gslt="" |
||||
|
|
||||
|
# https://developer.valvesoftware.com/wiki/Command_Line_Options#Source_Dedicated_Server |
||||
|
fn_parms(){ |
||||
|
parms="-game empires -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}" |
||||
|
} |
||||
|
|
||||
|
#### Advanced Variables #### |
||||
|
|
||||
|
# Github Branch Select |
||||
|
# Allows for the use of different function files |
||||
|
# from a different repo and/or branch. |
||||
|
githubuser="dgibbs64" |
||||
|
githubrepo="linuxgsm" |
||||
|
githubbranch="master" |
||||
|
|
||||
|
# Steam |
||||
|
appid="460040" |
||||
|
|
||||
|
# Server Details |
||||
|
servicename="em-server" |
||||
|
gamename="Empires Mod" |
||||
|
engine="source" |
||||
|
|
||||
|
# Directories |
||||
|
rootdir="$(dirname $(readlink -f "${BASH_SOURCE[0]}"))" |
||||
|
selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))" |
||||
|
lockselfname=".${servicename}.lock" |
||||
|
lgsmdir="${rootdir}/lgsm" |
||||
|
functionsdir="${lgsmdir}/functions" |
||||
|
libdir="${lgsmdir}/lib" |
||||
|
filesdir="${rootdir}/serverfiles" |
||||
|
systemdir="${filesdir}/empires" |
||||
|
executabledir="${filesdir}" |
||||
|
executable="./srcds_run" |
||||
|
servercfg="${servicename}.cfg" |
||||
|
servercfgdir="${systemdir}/cfg" |
||||
|
servercfgfullpath="${servercfgdir}/${servercfg}" |
||||
|
servercfgdefault="${servercfgdir}/server.cfg" |
||||
|
backupdir="${rootdir}/backups" |
||||
|
|
||||
|
# Logging |
||||
|
logdays="7" |
||||
|
gamelogdir="${systemdir}/logs" |
||||
|
scriptlogdir="${rootdir}/log/script" |
||||
|
consolelogdir="${rootdir}/log/console" |
||||
|
consolelogging="on" |
||||
|
|
||||
|
scriptlog="${scriptlogdir}/${servicename}-script.log" |
||||
|
consolelog="${consolelogdir}/${servicename}-console.log" |
||||
|
emaillog="${scriptlogdir}/${servicename}-email.log" |
||||
|
|
||||
|
scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%d-%m-%Y-%H-%M-%S').log" |
||||
|
consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%d-%m-%Y-%H-%M-%S').log" |
||||
|
|
||||
|
##### Script ##### |
||||
|
# Do not edit |
||||
|
|
||||
|
# Fetches core_dl for file downloads |
||||
|
fn_fetch_core_dl(){ |
||||
|
github_file_url_dir="lgsm/functions" |
||||
|
github_file_url_name="${functionfile}" |
||||
|
filedir="${functionsdir}" |
||||
|
filename="${github_file_url_name}" |
||||
|
githuburl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${github_file_url_name}" |
||||
|
# If the file is missing, then download |
||||
|
if [ ! -f "${filedir}/${filename}" ]; then |
||||
|
if [ ! -d "${filedir}" ]; then |
||||
|
mkdir -p "${filedir}" |
||||
|
fi |
||||
|
echo -e " fetching ${filename}...\c" |
||||
|
# Check curl exists and use available path |
||||
|
curlpaths="$(command -v curl 2>/dev/null) $(which curl >/dev/null 2>&1) /usr/bin/curl /bin/curl /usr/sbin/curl /sbin/curl)" |
||||
|
for curlcmd in ${curlpaths} |
||||
|
do |
||||
|
if [ -x "${curlcmd}" ]; then |
||||
|
break |
||||
|
fi |
||||
|
done |
||||
|
# If curl exists download file |
||||
|
if [ "$(basename ${curlcmd})" == "curl" ]; then |
||||
|
curlfetch=$(${curlcmd} -s --fail -o "${filedir}/${filename}" "${githuburl}" 2>&1) |
||||
|
if [ $? -ne 0 ]; then |
||||
|
echo -e "\e[0;31mFAIL\e[0m\n" |
||||
|
echo "${curlfetch}" |
||||
|
echo -e "${githuburl}\n" |
||||
|
exit 1 |
||||
|
else |
||||
|
echo -e "\e[0;32mOK\e[0m" |
||||
|
fi |
||||
|
else |
||||
|
echo -e "\e[0;31mFAIL\e[0m\n" |
||||
|
echo "Curl is not installed!" |
||||
|
echo -e "" |
||||
|
exit 1 |
||||
|
fi |
||||
|
chmod +x "${filedir}/${filename}" |
||||
|
fi |
||||
|
source "${filedir}/${filename}" |
||||
|
} |
||||
|
|
||||
|
core_dl.sh(){ |
||||
|
# Functions are defined in core_functions.sh. |
||||
|
functionfile="${FUNCNAME}" |
||||
|
fn_fetch_core_dl |
||||
|
} |
||||
|
|
||||
|
core_functions.sh(){ |
||||
|
# Functions are defined in core_functions.sh. |
||||
|
functionfile="${FUNCNAME}" |
||||
|
fn_fetch_core_dl |
||||
|
} |
||||
|
|
||||
|
core_dl.sh |
||||
|
core_functions.sh |
||||
|
|
||||
|
getopt=$1 |
||||
|
core_getopt.sh |
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -25,9 +25,6 @@ email="[email protected]" |
|||||
pushbulletalert="off" |
pushbulletalert="off" |
||||
pushbullettoken="accesstoken" |
pushbullettoken="accesstoken" |
||||
|
|
||||
# Pushover |
|
||||
#Push alot |
|
||||
|
|
||||
# Steam login |
# Steam login |
||||
steamuser="anonymous" |
steamuser="anonymous" |
||||
steampass="" |
steampass="" |
||||
@ -68,6 +65,7 @@ selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))" |
|||||
lockselfname=".${servicename}.lock" |
lockselfname=".${servicename}.lock" |
||||
lgsmdir="${rootdir}/lgsm" |
lgsmdir="${rootdir}/lgsm" |
||||
functionsdir="${lgsmdir}/functions" |
functionsdir="${lgsmdir}/functions" |
||||
|
libdir="${lgsmdir}/lib" |
||||
filesdir="${rootdir}/serverfiles" |
filesdir="${rootdir}/serverfiles" |
||||
systemdir="${filesdir}/left4dead2" |
systemdir="${filesdir}/left4dead2" |
||||
executabledir="${filesdir}" |
executabledir="${filesdir}" |
||||
|
@ -2,6 +2,7 @@ |
|||||
# Mumble |
# Mumble |
||||
# Server Management Script |
# Server Management Script |
||||
# Author: Daniel Gibbs |
# Author: Daniel Gibbs |
||||
|
# Contributor: UltimateByte |
||||
# Website: https://gameservermanagers.com |
# Website: https://gameservermanagers.com |
||||
if [ -f ".dev-debug" ]; then |
if [ -f ".dev-debug" ]; then |
||||
exec 5>dev-debug.log |
exec 5>dev-debug.log |
||||
@ -9,7 +10,7 @@ if [ -f ".dev-debug" ]; then |
|||||
set -x |
set -x |
||||
fi |
fi |
||||
|
|
||||
version="210516" |
version="290716" |
||||
|
|
||||
#### Variables #### |
#### Variables #### |
||||
|
|
||||
@ -25,6 +26,23 @@ email="[email protected]" |
|||||
pushbulletalert="off" |
pushbulletalert="off" |
||||
pushbullettoken="accesstoken" |
pushbullettoken="accesstoken" |
||||
|
|
||||
|
# Start Variables |
||||
|
updateonstart="off" |
||||
|
|
||||
|
fn_parms(){ |
||||
|
parms="-fg -ini ${servercfgfullpath}" |
||||
|
} |
||||
|
|
||||
|
#### Advanced Variables #### |
||||
|
|
||||
|
# Github Branch Select |
||||
|
# Allows for the use of different function files |
||||
|
# from a different repo and/or branch. |
||||
|
githubuser="dgibbs64" |
||||
|
githubrepo="linuxgsm" |
||||
|
githubbranch="master" |
||||
|
|
||||
|
|
||||
# Server Details |
# Server Details |
||||
gamename="Mumble" |
gamename="Mumble" |
||||
servicename="mumble-server" |
servicename="mumble-server" |
||||
@ -35,6 +53,7 @@ selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))" |
|||||
lockselfname=".${servicename}.lock" |
lockselfname=".${servicename}.lock" |
||||
lgsmdir="${rootdir}/lgsm" |
lgsmdir="${rootdir}/lgsm" |
||||
functionsdir="${lgsmdir}/functions" |
functionsdir="${lgsmdir}/functions" |
||||
|
libdir="${lgsmdir}/lib" |
||||
filesdir="${rootdir}/serverfiles" |
filesdir="${rootdir}/serverfiles" |
||||
systemdir="${filesdir}" |
systemdir="${filesdir}" |
||||
executabledir="${filesdir}" |
executabledir="${filesdir}" |
||||
@ -46,7 +65,7 @@ backupdir="${rootdir}/backups" |
|||||
|
|
||||
# Logging |
# Logging |
||||
logdays="7" |
logdays="7" |
||||
logdir="${rootdir}/log" |
gamelogdir="${rootdir}/log" |
||||
scriptlogdir="${rootdir}/log/script" |
scriptlogdir="${rootdir}/log/script" |
||||
consolelogdir="${rootdir}/log/console" |
consolelogdir="${rootdir}/log/console" |
||||
consolelogging="on" |
consolelogging="on" |
||||
@ -58,17 +77,6 @@ emaillog="${scriptlogdir}/${servicename}-email.log" |
|||||
scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%d-%m-%Y-%H-%M-%S').log" |
scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%d-%m-%Y-%H-%M-%S').log" |
||||
consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%d-%m-%Y-%H-%M-%S').log" |
consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%d-%m-%Y-%H-%M-%S').log" |
||||
|
|
||||
fn_parms(){ |
|
||||
parms="-fg -ini ${servercfgfullpath}" |
|
||||
} |
|
||||
|
|
||||
# Github Branch Select |
|
||||
# Allows for the use of different function files |
|
||||
# from a different repo and/or branch. |
|
||||
githubuser="dgibbs64" |
|
||||
githubrepo="linuxgsm" |
|
||||
githubbranch="master" |
|
||||
|
|
||||
##### Script ##### |
##### Script ##### |
||||
# Do not edit |
# Do not edit |
||||
|
|
||||
|
@ -20,7 +20,7 @@ version="210516" |
|||||
emailalert="off" |
emailalert="off" |
||||
email="[email protected]" |
email="[email protected]" |
||||
|
|
||||
# Pushbullet |
# Pushbullet |
||||
# https://www.pushbullet.com/#settings |
# https://www.pushbullet.com/#settings |
||||
pushbulletalert="off" |
pushbulletalert="off" |
||||
pushbullettoken="accesstoken" |
pushbullettoken="accesstoken" |
||||
@ -53,6 +53,7 @@ selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))" |
|||||
lockselfname=".${servicename}.lock" |
lockselfname=".${servicename}.lock" |
||||
lgsmdir="${rootdir}/lgsm" |
lgsmdir="${rootdir}/lgsm" |
||||
functionsdir="${lgsmdir}/functions" |
functionsdir="${lgsmdir}/functions" |
||||
|
libdir="${lgsmdir}/lib" |
||||
filesdir="${rootdir}/serverfiles" |
filesdir="${rootdir}/serverfiles" |
||||
systemdir="${filesdir}/System" |
systemdir="${filesdir}/System" |
||||
executabledir="${systemdir}" |
executabledir="${systemdir}" |
||||
@ -112,7 +113,7 @@ if [ ! -f "${filedir}/${filename}" ]; then |
|||||
exit 1 |
exit 1 |
||||
else |
else |
||||
echo -e "\e[0;32mOK\e[0m" |
echo -e "\e[0;32mOK\e[0m" |
||||
fi |
fi |
||||
else |
else |
||||
echo -e "\e[0;31mFAIL\e[0m\n" |
echo -e "\e[0;31mFAIL\e[0m\n" |
||||
echo "Curl is not installed!" |
echo "Curl is not installed!" |
||||
|
After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 14 KiB |
@ -1,21 +0,0 @@ |
|||||
#!/bin/bash |
|
||||
# LGSM check_tmux.sh function |
|
||||
# Author: Daniel Gibbs |
|
||||
# Website: https://gameservermanagers.com |
|
||||
# Description: Checks if tmux is installed as too many users do not RTFM or know how to use Google. |
|
||||
|
|
||||
local commandname="CHECK" |
|
||||
local function_selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))" |
|
||||
|
|
||||
if [ "$(command -v tmux)" ]||[ "$(which tmux >/dev/null 2>&1)" ]||[ -f "/usr/bin/tmux" ]||[ -f "/bin/tmux" ]; then |
|
||||
: |
|
||||
else |
|
||||
fn_print_fail_nl "Tmux not installed" |
|
||||
sleep 1 |
|
||||
fn_script_log_fatal "Tmux is not installed" |
|
||||
echo " * Tmux is required to run this server." |
|
||||
# Suitable passive agressive message |
|
||||
echo " * Please see the the following link." |
|
||||
echo " * https://gameservermanagers.com/tmux-not-found" |
|
||||
core_exit.sh |
|
||||
fi |
|
@ -0,0 +1,31 @@ |
|||||
|
#!/bin/bash |
||||
|
# command_dev_detect_glibc.sh function |
||||
|
# Author: Daniel Gibbs |
||||
|
# Website: https://gameservermanagers.com |
||||
|
# Description: Automatically detects the version of GLIBC that is required. |
||||
|
# Can check a file or directory recursively. |
||||
|
|
||||
|
echo "=================================" |
||||
|
echo "GLIBC Requirements Checker" |
||||
|
echo "=================================" |
||||
|
|
||||
|
if [ -z "${filesdir}" ]; then |
||||
|
dir="$(dirname $(readlink -f "${BASH_SOURCE[0]}"))" |
||||
|
fi |
||||
|
|
||||
|
if [ -d "${filesdir}" ]; then |
||||
|
echo "Checking directory: " |
||||
|
echo "${filesdir}" |
||||
|
elif [ -f "${filesdir}" ]; then |
||||
|
echo "Checking file: " |
||||
|
echo "${filesdir}" |
||||
|
fi |
||||
|
echo "" |
||||
|
|
||||
|
find ${filesdir} -type f -print0 | |
||||
|
while IFS= read -r -d $'\0' line; do |
||||
|
objdump -T $line 2>/dev/null|grep -oP "GLIBC[^ ]+" >>"${lgsmdir}/tmp/detect_glibc.tmp" |
||||
|
done |
||||
|
|
||||
|
cat "${lgsmdir}/tmp/detect_glibc.tmp"|sort|uniq|sort -r --version-sort |
||||
|
rm "${lgsmdir}/tmp/detect_glibc.tmp" |
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue