#!/bin/bash

BUNDLERESOURCEPATH="$(dirname "$0")/../Resources"

#find wine
WINEUSRPATH=""
#spotlight
[ -f "$(mdfind 'kMDItemDisplayName == Wine.app' | grep -m 1 'Wine.app')/Contents/Resources/bin/wine" ] && {
	export WINEUSRPATH="$(mdfind 'kMDItemDisplayName == Wine.app' | grep -m 1 'Wine.app')/Contents/Resources"
}
[ -f "$(mdfind 'kMDItemDisplayName == Wine.app' | grep -m 1 'Wine.app')/Contents/Resources/usr/bin/wine" ] && {
	export WINEUSRPATH="$(mdfind 'kMDItemDisplayName == Wine.app' | grep -m 1 'Wine.app')/Contents/Resources/usr"
}
#old style
[ -f "/Applications/Wine.app/Contents/Resources/bin/wine" ] && {
    export WINEUSRPATH="/Applications/Wine.app/Contents/Resources"
}
[ -f "$HOME/Applications/Wine.app/Contents/Resources/bin/wine" ] && {
    export WINEUSRPATH="$HOME/Applications/Wine.app/Contents/Resources"
}
[ -f "$BUNDLERESOURCEPATH/Wine.bundle/Contents/Resources/bin/wine" ] && {
    export WINEUSRPATH="$BUNDLERESOURCEPATH/Wine.bundle/Contents/Resources"
}
#new style
[ -f "/Applications/Wine.app/Contents/Resources/usr/bin/wine" ] && {
    export WINEUSRPATH="/Applications/Wine.app/Contents/Resources/usr"
}
[ -f "$HOME/Applications/Wine.app/Contents/Resources/usr/bin/wine" ] && {
    export WINEUSRPATH="$HOME/Applications/Wine.app/Contents/Resources/usr"
}
[ -f "$BUNDLERESOURCEPATH/Wine.bundle/Contents/Resources/usr/bin/wine" ] && {
    export WINEUSRPATH="$BUNDLERESOURCEPATH/Wine.bundle/Contents/Resources/usr"
}
[ "$WINEUSRPATH"x == ""x ] && {
    echo "Wine not found!"
    exit 1
}

# create working copy
export WINEPREFIX="$HOME/Library/Application Support/com.yourcompany.winsaga_143910572315785"
"$BUNDLERESOURCEPATH/Winetricks.app/Contents/MacOS/./Winetricks" "$BUNDLERESOURCEPATH/wineprefix" "$WINEPREFIX" "$(defaults read "$BUNDLERESOURCEPATH/../Info" CFBundleName)"



# exports
export PATH="$WINEUSRPATH/bin":$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"$WINEUSRPATH/lib"
export DYLD_FALLBACK_LIBRARY_PATH="/usr/lib:$WINEUSRPATH/lib"
export FONTCONFIG_FILE="$WINEUSRPATH/etc/fonts/fonts.conf"
export WINEPATH="$WINEUSRPATH/bin"



# start wine and program, if possible in the programs root directory, change to forwardslashes
BIN_FILE="$(sed 's|\\|/|g' <<< "$(defaults read "$BUNDLERESOURCEPATH/../Info" WineProgramPath)")"
BIN_PATH="$BUNDLERESOURCEPATH/wineprefix/drive_c$(sed 's|C:||' <<< "$(dirname "$BIN_FILE")")"
if [ -d "$BIN_PATH" ]; then
    cd "$BIN_PATH"
fi
"$WINEUSRPATH/bin/wine" "$BIN_FILE" $(defaults read "$BUNDLERESOURCEPATH/../Info" WineProgramArguments)

