From f04828866a5278a915a75099daf2e465bc0591ce Mon Sep 17 00:00:00 2001 From: DeathByDenim Date: Wed, 21 Sep 2022 16:42:58 -0400 Subject: [PATCH] Add Shattered Paradise server --- deploy.sh | 2 ++ scripts/deploy_shatteredparadise.sh | 51 +++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100755 scripts/deploy_shatteredparadise.sh diff --git a/deploy.sh b/deploy.sh index 5794dae..4032101 100755 --- a/deploy.sh +++ b/deploy.sh @@ -43,6 +43,7 @@ export teeworldsddrace_version="16.1" export unvanquished_version="latest" export xonotic_version="0.8.5" export lix_version="latest" +export shatteredparadise_version="latest" export systemuser="onfoss" export letsencryptemail="jarno@jarno.ca" @@ -104,6 +105,7 @@ cp console2web/console2web.py /usr/bin/console2web "$(dirname "$0")"/scripts/deploy_opensoldat.sh "$(dirname "$0")"/scripts/deploy_supertuxparty.sh "$(dirname "$0")"/scripts/deploy_ufoai.sh +"$(dirname "$0")"/scripts/deploy_shatteredparadise.sh # Apply all pending firewall rules. NGINX shouldn't have to be restarted, but it seems to help. firewall-cmd --reload diff --git a/scripts/deploy_shatteredparadise.sh b/scripts/deploy_shatteredparadise.sh new file mode 100755 index 0000000..8e70f1c --- /dev/null +++ b/scripts/deploy_shatteredparadise.sh @@ -0,0 +1,51 @@ +#!/bin/bash +# Collection of scripts to deploy a server hosting several open-source games +# Copyright (C) 2022 Jarno van der Kolk +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + +set -e + +if [ -e /etc/systemd/system/shatteredparadise.service ]; then + systemctl stop shatteredparadise +fi + +if [ -z ${shatteredparadise_version} ] || [ "${shatteredparadise_version}" = "latest" ]; then + shatteredparadise_version=$(curl -s https://api.github.com/repos/ABrandau/Shattered-Paradise-SDK/releases/latest | jq -r '.["tag_name"]') +fi + +# Install Shattered Paradise +mkdir -p /opt/shatteredparadise-${shatteredparadise_version} +curl --location "https://github.com/ABrandau/Shattered-Paradise-SDK/releases/download/${shatteredparadise_version}/ShatteredParadise-${shatteredparadise_version}-x86_64.AppImage" > /opt/shatteredparadise-${shatteredparadise_version}/ShatteredParadise-x86_64.AppImage +chmod +x /opt/shatteredparadise-${shatteredparadise_version}/ShatteredParadise-x86_64.AppImage + +cat > /etc/systemd/system/shatteredparadise.service <