diff --git a/vanilla/Dockerfile b/vanilla/Dockerfile index 5ec66ba..417af2e 100644 --- a/vanilla/Dockerfile +++ b/vanilla/Dockerfile @@ -14,9 +14,8 @@ ARG INSTALL_SCRIPT=https://gitlab.fithwum.tech/fithwum/vintage-story/-/raw/maste # Install java-17 & Dependencies. RUN apt-get -y update && apt-get autoclean && apt-get autoremove \ - && apt-get install wget lsb-release -y \ - && wget https://packages.microsoft.com/config/debian/$(lsb_release -rs)/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \ - && dpkg -i packages-microsoft-prod.deb \ + && apt-get install wget pgrep screen -y \ + && useradd vintagestory -s /sbin/nologin -m \ && apt-get -y update && apt-get -y --fix-broken install \ && apt-get install -y --no-install-recommends msopenjdk-21 screen bzip2 jq \ && rm -rf /var/lib/apt/lists/* \ diff --git a/vanilla/install_script.sh b/vanilla/install_script.sh index 451e013..9e6d2a8 100644 --- a/vanilla/install_script.sh +++ b/vanilla/install_script.sh @@ -2,12 +2,12 @@ # Copyright (c) 2022 fithwum # All rights reserved -VERSION_CHECK=$(curl -s "https://piston-meta.mojang.com/VS/game/version_manifest_v2.json" | grep -Pom 1 '"url": "\K[^"]*'$VS_VERSION'.json') -VS_SERVER_FILE=$(curl -s $VERSION_CHECK | jq --raw-output '.downloads.server.url') -VS_RUN_FILE=https://gitlab.fithwum.tech/fithwum/vintage-story/-/raw/master/vanilla/run.sh +VS_VERSION=1.20.9 +VS_SERVER_FILE=https://cdn.vintagestory.at/gamefiles/stable/vs_server_linux-x64_$MC_VERSION.tar.gz +VS_RUN_FILE=https://gitlab.fithwum.tech/fithwum/vintage-story/-/raw/master/vanilla/server.sh rm -fr /VSserver/VSserver_*.jar -rm -fr /VSserver/run_*.sh +rm -fr /VSserver/server_*.sh # Main install (Debian). # Check for server files and download if needed. @@ -22,64 +22,21 @@ if [ -e /VSserver/VSserver-$VS_VERSION.jar ] echo "INFO ! Cleaning old files." mkdir /VSserver/old-server-versions/ mv /VSserver/VSserver-*.jar /VSserver/old-server-versions/ - mv /VSserver/run-*.sh /VSserver/old-server-versions/ - wget --no-cache --show-progress --progress=bar:force:noscroll $VS_SERVER_FILE -O /VSserver/VSserver-$VS_VERSION.jar + mv /VSserver/server-*.sh /VSserver/old-server-versions/ + wget --no-cache --show-progress --progress=bar:force:noscroll $VS_SERVER_FILE -O /VStemp/vs_server_linux-x64_$MC_VERSION.tar.gz fi sleep 1 # Looking for run-${VS_VERSION}.sh -if [ -e /VSserver/run-$VS_VERSION.sh ] +if [ -e /VSserver/server-$VS_VERSION.sh ] then echo " " - echo "INFO ! run-$VS_VERSION.sh found ... will use existing file." + echo "INFO ! server-$VS_VERSION.sh found ... will use existing file." else echo " " - echo "WARNING ! run.sh is out of date/missing ... will download now." - wget --no-cache --show-progress --progress=bar:force:noscroll $VS_RUN_FILE -O /VSserver/run-$VS_VERSION.sh -fi - -sleep 1 - -# Check for EULA -if [ ! -f /VSserver/eula.txt ]; then - : -else - if [ "$ACCEPT_EULA" == "false" ]; then - if grep -rq 'eula=true' /VSserver/eula.txt; then - sed -i '/eula=true/c\eula=false' /VSserver/eula.txt - fi - echo " " - echo "WARNING ! EULA not accepted, you must accept the EULA" - echo " to start the Server, putting server in sleep mode" - sleep infinity - fi -fi - -sleep 1 - -if [ ! -f /VSserver/eula.txt ]; then - echo " " - echo "WARNING ! EULA not found please stand by..." - sleep 5 -fi -if [ "$ACCEPT_EULA" == "true" ]; then - if grep -rq 'eula=false' /VSserver/eula.txt; then - sed -i '/eula=false/c\eula=true' /VSserver/eula.txt - echo " " - echo "INFO ! EULA accepted, server restarting, please wait..." - sleep 1 - exec /VSserver/run-$VS_VERSION.sh --dataPath=/VSserver - exit 0 - fi -elif [ "$ACCEPT_EULA" == "false" ]; then - echo " " - echo "WARNING ! EULA not accepted, you must accept the EULA" - echo " to start the Server, putting server in sleep mode" - sleep infinity -else - echo " " - echo "WARNING ! Something went wrong, please check EULA variable" + echo "WARNING ! server.sh is out of date/missing ... will download now." + wget --no-cache --show-progress --progress=bar:force:noscroll $VS_RUN_FILE -O /VSserver/server-$VS_VERSION.sh fi sleep 1 @@ -90,7 +47,7 @@ sleep 1 # Set permissions. chown 99:100 -R /VSserver chmod 777 -R /VSserver -chmod +x /VSserver/run-$VS_VERSION.sh +chmod +x /VSserver/server-$VS_VERSION.sh chmod +x /VSserver/VSserver-$VS_VERSION.jar sleep 1 @@ -98,6 +55,6 @@ sleep 1 # Run vintage-story server. echo " " echo "INFO ! Starting vintage-story Server $VS_VERSION" -exec /VSserver/run-$VS_VERSION.sh --dataPath=/VSserver +exec /VSserver/server-$VS_VERSION.sh --dataPath=/VSserver exit \ No newline at end of file diff --git a/vanilla/run.sh b/vanilla/server.sh similarity index 100% rename from vanilla/run.sh rename to vanilla/server.sh