115e79f240
Docker-related files have been renamed and updated to better suit the GOG and Steam versions of the game. The README.md has been significantly expanded, improving explanation of server setup and usage details for each version.
41 lines
1.1 KiB
Bash
41 lines
1.1 KiB
Bash
#!/bin/bash
|
|
export HOME=/config
|
|
|
|
for modPath in /data/Stardew/game/Mods/*/
|
|
do
|
|
mod=$(basename "$modPath")
|
|
|
|
# Normalize mod name ot uppercase and only characters, eg. "Always On Server" => ENABLE_ALWAYSONSERVER_MOD
|
|
var="ENABLE_$(echo "${mod^^}" | tr -cd '[A-Z]')_MOD"
|
|
|
|
# Remove the mod if it's not enabled
|
|
if [ "${!var}" != "true" ]; then
|
|
echo "Removing ${modPath} (${var}=${!var})"
|
|
rm -rf "$modPath"
|
|
continue
|
|
fi
|
|
|
|
if [ -f "${modPath}/config.json.template" ]; then
|
|
echo "Configuring ${modPath}config.json"
|
|
|
|
# Seed the config.json only if one isn't manually mounted in (or is empty)
|
|
if [ "$(cat "${modPath}config.json" 2> /dev/null)" == "" ]; then
|
|
envsubst < "${modPath}config.json.template" > "${modPath}config.json"
|
|
fi
|
|
fi
|
|
done
|
|
|
|
# Run extra steps for certain mods
|
|
/opt/configure-remotecontrol-mod.sh
|
|
|
|
/opt/tail-smapi-log.sh &
|
|
|
|
# Ready to start!
|
|
|
|
export XAUTHORITY=~/.Xauthority
|
|
sed -i 's/env TERM=xterm $LAUNCHER "$@"/env SHELL=\/bin\/bash TERM=xterm xterm -e "\/bin\/bash -c $LAUNCHER \"$@\""/' /data/Stardew/game/Stardew\ Valley
|
|
|
|
bash -c "/data/Stardew/start.sh"
|
|
|
|
sleep 233333333333333
|