Files
mini-windrose-manager/entrypoint.sh
T

47 lines
1.2 KiB
Bash

#!/bin/bash
set -e
# Ensure wineprefix exists
if [ ! -d "$WINEPREFIX" ]; then
echo "Initializing wineprefix at $WINEPREFIX..."
mkdir -p "$WINEPREFIX"
wine64 wineboot --init || true
fi
# Install DXVK manually (no GUI installer)
DXVK_DIR="/data/dxvk/dxvk-$DXVK_VERSION"
DXVK_X64="$DXVK_DIR/x64"
DXVK_X32="$DXVK_DIR/x32"
if [ -d "$DXVK_DIR" ]; then
echo "Installing DXVK $DXVK_VERSION into wineprefix..."
# 64-bit DLLs
if [ -d "$DXVK_X64" ]; then
echo "Applying DXVK 64-bit..."
cp "$DXVK_X64"/*.dll "$WINEPREFIX/drive_c/windows/system32/" || true
fi
# 32-bit DLLs
if [ -d "$DXVK_X32" ]; then
echo "Applying DXVK 32-bit..."
cp "$DXVK_X32"/*.dll "$WINEPREFIX/drive_c/windows/syswow64/" || true
fi
# Register DLL overrides
echo "Setting DXVK DLL overrides..."
wine64 reg add "HKCU\\Software\\Wine\\DllOverrides" /v d3d11 /d native /f || true
wine64 reg add "HKCU\\Software\\Wine\\DllOverrides" /v dxgi /d native /f || true
fi
# Ensure SteamCMD exists
STEAMCMD="${STEAMCMD_DIR}/steamcmd.sh"
if [ ! -f "$STEAMCMD" ]; then
echo "SteamCMD missing!"
exit 1
fi
# Run manager service
echo "Starting mini-windrose-manager..."
node /app/dist/index.js