Get the latest versions of all games where possible
This commit is contained in:
parent
fcf1508e22
commit
5d35b1b639
16
deploy.sh
16
deploy.sh
|
@ -18,15 +18,15 @@ if [ -z $HOSTEDBYNAME ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export stk_version="1.3"
|
export stk_version="latest"
|
||||||
export bzflag_version="2.4"
|
export bzflag_version="2.4"
|
||||||
export mindustry_version="135"
|
export mindustry_version="latest"
|
||||||
export openhv_version="20220221"
|
export openhv_version="latest"
|
||||||
export teeworlds_version="0.7.5"
|
export teeworlds_version="latest"
|
||||||
export teeworldsddrace_version="16.1"
|
export teeworldsddrace_version="16.1"
|
||||||
export unvanquished_version="0.52.1"
|
export unvanquished_version="latest"
|
||||||
export xonotic_version="0.8.2"
|
export xonotic_version="0.8.5"
|
||||||
export lix_version="0.9.41"
|
export lix_version="latest"
|
||||||
|
|
||||||
export systemuser="onfoss"
|
export systemuser="onfoss"
|
||||||
export letsencryptemail="jarno@jarno.ca"
|
export letsencryptemail="jarno@jarno.ca"
|
||||||
|
@ -49,7 +49,7 @@ apt install --assume-yes \
|
||||||
fuse g++ gcc curl firewalld automake autoconf libtool \
|
fuse g++ gcc curl firewalld automake autoconf libtool \
|
||||||
libcurl3-dev libc-ares-dev zlib1g-dev libncurses-dev make python3-aiohttp \
|
libcurl3-dev libc-ares-dev zlib1g-dev libncurses-dev make python3-aiohttp \
|
||||||
nginx-core certbot python3-certbot-nginx sudo python3-psutil \
|
nginx-core certbot python3-certbot-nginx sudo python3-psutil \
|
||||||
ldc dub libenet-dev python3-bcrypt
|
ldc dub libenet-dev python3-bcrypt jq
|
||||||
|
|
||||||
# Create the user for running the game servers
|
# Create the user for running the game servers
|
||||||
if ! getent passwd ${systemuser}; then
|
if ! getent passwd ${systemuser}; then
|
||||||
|
|
|
@ -18,7 +18,7 @@ cd bzflag
|
||||||
make
|
make
|
||||||
make install
|
make install
|
||||||
if ! [ -L /usr/games/bzfs ]; then
|
if ! [ -L /usr/games/bzfs ]; then
|
||||||
ln -s /opt/bzflag-2.4/bin/bzfs /usr/games/
|
ln -s /opt/bzflag-${bzflag_version}/bin/bzfs /usr/games/
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -rf ${TMPDIR:-/tmp}/bzflag-build
|
rm -rf ${TMPDIR:-/tmp}/bzflag-build
|
||||||
|
|
|
@ -5,6 +5,10 @@ if [ -e /etc/systemd/system/lix.service ]; then
|
||||||
systemctl stop lix
|
systemctl stop lix
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -z ${lix_version} ] || [ "${lix_version}" = "latest" ]; then
|
||||||
|
lix_version=$(curl -s https://api.github.com/repos/SimonN/LixD/releases/latest | jq -r '.["tag_name"]' | cut -c2-)
|
||||||
|
fi
|
||||||
|
|
||||||
# Install Lix
|
# Install Lix
|
||||||
mkdir -p ${TMPDIR:-/tmp}/lix-build
|
mkdir -p ${TMPDIR:-/tmp}/lix-build
|
||||||
cd ${TMPDIR:-/tmp}/lix-build
|
cd ${TMPDIR:-/tmp}/lix-build
|
||||||
|
|
|
@ -5,9 +5,13 @@ if [ -e /etc/systemd/system/mindustry.service ]; then
|
||||||
systemctl stop mindustry
|
systemctl stop mindustry
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -z ${mindustry_version} ] || [ "${mindustry_version}" = "latest" ]; then
|
||||||
|
mindustry_version=$(curl -s https://api.github.com/repos/Anuken/Mindustry/releases?per_page=1 | jq -r '.[0]["tag_name"]' | cut -c2-)
|
||||||
|
fi
|
||||||
|
|
||||||
# Mindustry
|
# Mindustry
|
||||||
mkdir -p /opt/mindustry-v${mindustry_version}
|
mkdir -p /opt/mindustry-${mindustry_version}
|
||||||
curl --location https://github.com/Anuken/Mindustry/releases/download/v${mindustry_version}/server-release.jar > /opt/mindustry-v${mindustry_version}/mindustry.jar
|
curl --location https://github.com/Anuken/Mindustry/releases/download/v${mindustry_version}/server-release.jar > /opt/mindustry-${mindustry_version}/mindustry.jar
|
||||||
mkdir -p /var/lib/mindustry
|
mkdir -p /var/lib/mindustry
|
||||||
chown -R ${systemuser} /var/lib/mindustry
|
chown -R ${systemuser} /var/lib/mindustry
|
||||||
|
|
||||||
|
@ -18,7 +22,7 @@ After=network.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
WorkingDirectory=/var/lib/mindustry
|
WorkingDirectory=/var/lib/mindustry
|
||||||
ExecStart=/usr/bin/console2web -p 62548 /usr/lib/jvm/java-11-openjdk-amd64/bin/java -jar /opt/mindustry-v${mindustry_version}/mindustry.jar "config autosave true","config autosaveSpacing 120","host"
|
ExecStart=/usr/bin/console2web -p 62548 /usr/lib/jvm/java-11-openjdk-amd64/bin/java -jar /opt/mindustry-${mindustry_version}/mindustry.jar "config autosave true","config autosaveSpacing 120","host"
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
User=${systemuser}
|
User=${systemuser}
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ if [ -e /etc/systemd/system/openhv.service ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z ${openhv_version} ] || [ "${openhv_version}" = "latest" ]; then
|
if [ -z ${openhv_version} ] || [ "${openhv_version}" = "latest" ]; then
|
||||||
openhv_version=$(git ls-remote --refs --sort="version:refname" --tags https://github.com/OpenHV/OpenHV | tail -n1 | cut -d'/' -f3)
|
openhv_version=$(curl -s https://api.github.com/repos/OpenHV/OpenHV/releases/latest | jq -r '.["tag_name"]')
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Install OpenHV
|
# Install OpenHV
|
||||||
|
|
|
@ -6,16 +6,16 @@ if [ -e /etc/systemd/system/supertuxkart.service ]; then
|
||||||
systemctl stop supertuxkart
|
systemctl stop supertuxkart
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -z ${stk_version} ] || [ "${stk_version}" = "latest" ]; then
|
||||||
|
stk_version=$(curl -s https://api.github.com/repos/supertuxkart/stk-code/releases/latest | jq -r '.["tag_name"]')
|
||||||
|
fi
|
||||||
|
|
||||||
# Install SuperTuxKart
|
# Install SuperTuxKart
|
||||||
stk_dir="/opt/SuperTuxKart-${stk_version}"
|
stk_dir="/opt/SuperTuxKart-${stk_version}"
|
||||||
mkdir -p ${stk_dir}
|
mkdir -p ${stk_dir}
|
||||||
curl --location "https://github.com/supertuxkart/stk-code/releases/download/${stk_version}/SuperTuxKart-${stk_version}-linux-64bit.tar.xz" | tar --extract --xz --no-same-owner --strip-components=1 --directory=${stk_dir}
|
curl --location "https://github.com/supertuxkart/stk-code/releases/download/${stk_version}/SuperTuxKart-${stk_version}-linux-64bit.tar.xz" | tar --extract --xz --no-same-owner --strip-components=1 --directory=${stk_dir}
|
||||||
ln -s ${stk_dir}/bin/supertuxkart /usr/games/supertuxkart
|
ln -s ${stk_dir}/bin/supertuxkart /usr/games/supertuxkart
|
||||||
|
|
||||||
# Add firewall rules
|
|
||||||
firewall-cmd --zone=public --add-port=2757/udp --permanent
|
|
||||||
firewall-cmd --zone=public --add-port=2759/udp --permanent
|
|
||||||
|
|
||||||
# Configuration
|
# Configuration
|
||||||
cp $(dirname $0)/../configs/supertuxkart.xml /etc/supertuxkart.xml
|
cp $(dirname $0)/../configs/supertuxkart.xml /etc/supertuxkart.xml
|
||||||
|
|
||||||
|
@ -37,5 +37,6 @@ EOF
|
||||||
systemctl daemon-reload
|
systemctl daemon-reload
|
||||||
systemctl enable --now supertuxkart.service
|
systemctl enable --now supertuxkart.service
|
||||||
|
|
||||||
firewall-cmd --zone=public --add-port=2759/udp --permanent
|
# Add firewall rules
|
||||||
firewall-cmd --zone=public --add-port=2757/udp --permanent
|
firewall-cmd --zone=public --add-port=2757/udp --permanent
|
||||||
|
firewall-cmd --zone=public --add-port=2759/udp --permanent
|
||||||
|
|
|
@ -5,6 +5,10 @@ if [ -e /etc/systemd/system/teeworlds.service ]; then
|
||||||
systemctl stop teeworlds
|
systemctl stop teeworlds
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -z ${teeworlds_version} ] || [ "${teeworlds_version}" = "latest" ]; then
|
||||||
|
teeworlds_version=$(curl -s https://api.github.com/repos/teeworlds/teeworlds/releases/latest | jq -r '.["tag_name"]')
|
||||||
|
fi
|
||||||
|
|
||||||
# Teeworlds
|
# Teeworlds
|
||||||
teeworld_directory="/opt/teeworlds-${teeworlds_version}"
|
teeworld_directory="/opt/teeworlds-${teeworlds_version}"
|
||||||
mkdir -p ${teeworld_directory}
|
mkdir -p ${teeworld_directory}
|
||||||
|
|
|
@ -5,6 +5,10 @@ if [ -e /etc/systemd/system/unvanquished.service ]; then
|
||||||
systemctl stop unvanquished
|
systemctl stop unvanquished
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -z ${unvanquished_version} ] || [ "${unvanquished_version}" = "latest" ]; then
|
||||||
|
unvanquished_version=$(curl -s https://api.github.com/repos/Unvanquished/Unvanquished/releases/latest | jq -r '.["tag_name"]' | cut -c2-)
|
||||||
|
fi
|
||||||
|
|
||||||
# Unvanquished
|
# Unvanquished
|
||||||
unvanquished_directory="/opt/unvanquished-${unvanquished_version}"
|
unvanquished_directory="/opt/unvanquished-${unvanquished_version}"
|
||||||
curl --location "https://github.com/Unvanquished/Unvanquished/releases/download/v${unvanquished_version}/unvanquished_${unvanquished_version}.zip" > ${TMPDIR:-/tmp}/unvanquished.zip
|
curl --location "https://github.com/Unvanquished/Unvanquished/releases/download/v${unvanquished_version}/unvanquished_${unvanquished_version}.zip" > ${TMPDIR:-/tmp}/unvanquished.zip
|
||||||
|
|
Reference in New Issue