onFOSS-LAN-Gameserver/scripts/deploy_supertuxparty.sh

35 lines
794 B
Bash
Executable File

#!/bin/bash
set -e
if [ -e /etc/systemd/system/supertuxparty.service ]; then
systemctl stop supertuxparty
fi
# Install Lix
mkdir -p /opt/supertuxparty
curl 'https://supertux.party/download/latest/server.zip' > ${TMPDIR:/tmp}/server.zip
unzip -o -d /opt/supertuxparty ${TMPDIR:/tmp}/server.zip
rm ${TMPDIR:/tmp}/server.zip
# Create SystemD unit
cat > /etc/systemd/system/supertuxparty.service <<EOF
[Unit]
Description=Super Tux Party server
After=network.target
[Service]
WorkingDirectory=/opt/supertuxparty
ExecStart=/opt/supertuxparty/supertuxparty_server
Restart=on-failure
User=${systemuser}
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable --now supertuxparty.service
# Add firewall rules
firewall-cmd --zone=public --add-port=7634/udp --permanent