ConanServerManager/docker_images/latest/entrypoint.sh

60 lines
No EOL
1.8 KiB
Bash

#!/bin/bash
# Copied the entrypoint and slightly altered, from parkervcp's dart yolk.
cd /home/container
# Information output
echo "Running on Debian $(cat /etc/debian_version)"
echo "Current timezone: $(cat /etc/timezone)"
wine --version
if [[ $XVFB == 1 ]]; then
Xvfb :0 -screen 0 ${DISPLAY_WIDTH}x${DISPLAY_HEIGHT}x${DISPLAY_DEPTH} &
fi
# Install necessary to run packages
echo "First launch will throw some errors. Ignore them"
mkdir -p $WINEPREFIX
# Check if wine-gecko required and install it if so
echo "Installing Gecko"
WINETRICKS_RUN=${WINETRICKS_RUN/gecko}
if [ ! -f "$WINEPREFIX/gecko_x86.msi" ]; then
wget -q -O $WINEPREFIX/gecko_x86.msi http://dl.winehq.org/wine/wine-gecko/2.47.4/wine_gecko-2.47.4-x86.msi
fi
if [ ! -f "$WINEPREFIX/gecko_x86_64.msi" ]; then
wget -q -O $WINEPREFIX/gecko_x86_64.msi http://dl.winehq.org/wine/wine-gecko/2.47.4/wine_gecko-2.47.4-x86_64.msi
fi
wine msiexec /i $WINEPREFIX/gecko_x86.msi /qn /quiet /norestart /log $WINEPREFIX/gecko_x86_install.log
wine msiexec /i $WINEPREFIX/gecko_x86_64.msi /qn /quiet /norestart /log $WINEPREFIX/gecko_x86_64_install.log
# Check if wine-mono required and install it if so
echo "Installing mono"
WINETRICKS_RUN=${WINETRICKS_RUN/mono}
if [ ! -f "$WINEPREFIX/mono.msi" ]; then
wget -q -O $WINEPREFIX/mono.msi https://dl.winehq.org/wine/wine-mono/9.1.0/wine-mono-9.1.0-x86.msi
fi
wine msiexec /i $WINEPREFIX/mono.msi /qn /quiet /norestart /log $WINEPREFIX/mono_install.log
# List and install other packages
for trick in $WINETRICKS_RUN; do
echo "Installing $trick"
winetricks -q $trick
done
# Replace startup variables
MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')
echo ":/home/container$ ${MODIFIED_STARTUP}"
# Run the server
eval ${MODIFIED_STARTUP}