Files
teamspeak-server/debian/files/Install_Script.sh
fithwum 22a917f77b
Build and Push Teamspeak Images on Base Image Update / check-for-changes (push) Successful in 12s
Build and Push Teamspeak Images on Base Image Update / build-alpine (push) Successful in 6s
Build and Push Teamspeak Images on Base Image Update / build-debian (push) Successful in 22s
Build and Push Teamspeak Images on Base Image Update / build-basic (push) Successful in 6s
Build and Push Teamspeak Images on Base Image Update / update-base-digest-cache (push) Successful in 10s
Build and Push Teamspeak Images on Base Image Update / generate-build-info (push) Successful in 7s
Build and Push Teamspeak Images on Base Image Update / generate-changelogs (push) Successful in 6s
updates to autoupdate
2026-07-06 07:24:55 -07:00

103 lines
4.0 KiB
Bash

#!/bin/bash
# Copyright (c) 2018 fithwum
# All rights reserved
# Variables.
# echo " "
# echo "Checking server version from Teamspeak."
# TS_VERSION=$(curl -s "https://www.teamspeak.com/versions/server.json" | jq --raw-output '.linux.x86.version')
# CHANGELOG=/ts3server/CHANGELOG_$TS_VERSION
# echo "Latest server version from Teamspeak:$TS_VERSION."
if [ "$AUTO_UPDATE" = "true" ]
then
echo "INFO ! Teamspeak will auto update to the latest version."
echo "Checking server version from Teamspeak."
TS_VERSION=$(curl -s "https://www.teamspeak.com/versions/server.json" | jq --raw-output '.linux.x86.version')
CHANGELOG=/ts3server/CHANGELOG_$TS_VERSION
echo "Latest server version from Teamspeak:$TS_VERSION."
elif [ "$AUTO_UPDATE" = "false" ]
then
echo "INFO ! The version you selected will be installed."
else
echo "ERROR ! ACCEPT_EULA must be set to true or false on first run"
sleep infinity
fi
TS_FILES=https://gitea.fithwum.tech/fithwum/teamspeak-server/raw/branch/main/files
TS_SERVER=https://files.teamspeak-services.com/releases/server/$TS_VERSION/teamspeak3-server_linux_amd64-$TS_VERSION.tar.bz2
# Main install (debian).
# Check for files in /ts3server and download/create if needed.
if [ -e "$CHANGELOG" ]
then
echo "INFO ! Teamspeak server is $TS_VERSION ... checking that needed files exist before running current server."
rm -fr /ts3temp/server.json
else
echo " "
echo "WARNING ! Teamspeak server is out of date ... will download the updated server from Teamspeak."
echo " "
echo "INFO ! Clearing old Teamspeak server files and downloading server update."
rm -f /ts3server/CHANGELOG* /ts3server/lib* /ts3server/ts3server
rm -fr /ts3server/doc /ts3server/redist /ts3server/serverquerydocs /ts3server/tsdns
wget --no-cache --show-progress --progress=bar:force:noscroll $TS_SERVER -O /ts3temp/ts3server_$TS_VERSION.tar.bz2
tar -xf /ts3temp/ts3server_$TS_VERSION.tar.bz2 -C /ts3temp/serverfiles --strip-components=1
sleep 1
rm -fr /ts3temp/serverfiles/ts3server_startscript.sh
rm -fr /ts3temp/ts3server_$TS_VERSION.tar.bz2
cp -uR /ts3temp/serverfiles/. /ts3server/
sleep 1
mv /ts3server/redist/libmariadb.so.2 /ts3server/libmariadb.so.2
mv /ts3server/CHANGELOG $CHANGELOG
rm -fr /ts3temp/serverfiles/*
rm -fr /ts3temp/server.json
fi
# Check if the ini/sh files exist in /ts3server and download/create if needed.
if [ -e /ts3server/ts3server_minimal_runscript.sh ]
then
echo "INFO ! ts3server_minimal_runscript.sh found ... will not download."
else
echo " "
echo "WARNING ! ts3server_minimal_runscript.sh not found ... will download now."
wget --no-cache --show-progress --progress=bar:force:noscroll $TS_FILES/ts3server_minimal_runscript.sh -O /ts3server/ts3server_minimal_runscript.sh
fi
if [ -e /ts3server/ts3db_mariadb.ini ]
then
echo "INFO ! ts3db_mariadb.ini found ... will not download."
else
echo " "
echo "WARNING ! ts3db_mariadb.ini not found ... will download now."
wget --no-cache --show-progress --progress=bar:force:noscroll $TS_FILES/ts3db_mariadb.ini -O /ts3server/ts3db_mariadb.ini
fi
if [ -e /ts3server/ts3server.ini ]
then
echo "INFO ! ts3server.ini found ... will not download."
else
echo " "
echo "WARNING ! ts3server.ini not found ... will download now."
wget --no-cache --show-progress --progress=bar:force:noscroll $TS_FILES/ts3server.ini -O /ts3server/ts3server.ini
fi
if [ -e /ts3server/.ts3server_license_accepted ]
then
echo "INFO ! .ts3server_license_accepted found ... will not download."
else
echo " "
echo "WARNING ! .ts3server_license_accepted not found ... will download now."
wget --no-cache --show-progress --progress=bar:force:noscroll $TS_FILES/.ts3server_license_accepted -O /ts3server/.ts3server_license_accepted
fi
sleep 1
# Set permissions.
chown 99:100 -R /ts3server
chmod 777 -R /ts3server
chmod +x /ts3server/ts3server_minimal_runscript.sh
chmod +x /ts3server/ts3server
# Run teamspeak server.
echo " "
echo "INFO ! Starting Teamspeak server $TS_VERSION."
exec /ts3server/ts3server_minimal_runscript.sh inifile=ts3server.ini
exit