Initial attempt to get a working wine32. This should hopefully work for a while once correctly set up.

This commit is contained in:
Storm Dragon
2025-08-07 02:04:06 -04:00
parent adefd7aab4
commit 50bb078de2
3 changed files with 65 additions and 17 deletions

View File

@@ -67,9 +67,9 @@ install_rhvoice() {
download "${RHVoice[${voiceName}]}"
winetricks -q win8 | agm_progressbox "RHVoice Setup" "Preparing Windows environment for RHVoice..."
echo "Installing RHVoice ${voiceName^}..."
wine "${cache}/${voiceFile}" &
"${WINE:-wine}" "${cache}/${voiceFile}" &
sleep 20 | agm_progressbox "RHVoice Setup" "Installing RHVoice ${voiceName^} voice..."
wineserver -k
"${WINESERVER:-wineserver}" -k
}
install_wine_bottle() {
@@ -92,9 +92,16 @@ install_wine_bottle() {
fi
export WINEPREFIX="$HOME/.local/wine${architecture}"
# Modern wine is unified - no separate wine32/wine64 executables
export WINE="wine"
export WINESERVER="wineserver"
# Use managed wine32 for SAPI compatibility, system wine for everything else
if [[ "$WINEARCH" == "win32" ]] && [[ -n "$wine32" ]]; then
export WINE="$wine32"
export WINESERVER="$wine32server"
echo "Using managed Wine32 for SAPI compatibility"
else
export WINE="wine"
export WINESERVER="wineserver"
fi
# Check if bottle already exists and is properly initialized
local bottleExists=false
@@ -106,8 +113,8 @@ install_wine_bottle() {
# Only do basic setup if bottle doesn't exist
if [[ "$bottleExists" == false ]]; then
echo -n "Creating new wine${architecture} bottle - Using "
wine --version
DISPLAY="" wineboot -u | agm_progressbox "Wine Setup" "Initializing wine bottle..."
"$WINE" --version
DISPLAY="" "$WINE" wineboot -u | agm_progressbox "Wine Setup" "Initializing wine bottle..."
# Install mono and gecko only for new bottles
monoPath="$(find /usr/share/wine/ -maxdepth 1 -type d -name mono 2> /dev/null)"
@@ -120,8 +127,8 @@ install_wine_bottle() {
download 'http://dl.winehq.org/wine/wine-gecko/2.40/wine_gecko-2.40-x86.msi'
geckoPath="${cache}/wine_gecko-2.40-x86.msi"
fi
wine msiexec /i z:"$monoPath" /quiet | agm_progressbox "Wine Setup" "Installing .NET Framework..."
wine msiexec /i z:"$geckoPath" /quiet | agm_progressbox "Wine Setup" "Installing Web Browser support..."
"$WINE" msiexec /i z:"$monoPath" /quiet | agm_progressbox "Wine Setup" "Installing .NET Framework..."
"$WINE" msiexec /i z:"$geckoPath" /quiet | agm_progressbox "Wine Setup" "Installing Web Browser support..."
fi
# Install RHVoice only if needed and not already installed