#!/bin/sh

# Usage:
#   proton program.exe
#
# Example Env Vars:
#   PROTONPREFIX="$HOME/proton_316"
#   PROTONVERSION="Proton 3.16"

# Folder name of the Proton version found under "steamapps/common/".
# proton_version="Proton - Experimental"
proton_version="Proton 7.0"

# Path to installation directory of Steam.
# Alternate path: "$HOME/.steam/steam"
client_dir="$HOME/.steam/steam"

# Default data folder for Proton/WINE environment.  Folder must exist.
# If the environmental variable PROTONPREFIX is set, it will overwrite env_dir.
mkdir -p "$HOME/.proton/$proton_version"
env_dir="$HOME/.proton/$proton_version"
WINEPREFIX=protontricks

# Proton modes to run
#   run = start target app
#   waitforexitandrun = wait for wineserver to shut down
#   getcompatpath = linux -> windows path
#   getnativepath = windows -> linux path
mode=run

# ENVIRONMENTAL VARIABLES
if [ -n "${PROTONPREFIX+1}" ]
then
    env_dir=$PROTONPREFIX
fi

if [ -n "${PROTONVERSION+1}" ]
then
    proton_version=$PROTONVERSION
fi

# EXECUTE
export STEAM_COMPAT_CLIENT_INSTALL_PATH=$client_dir
export STEAM_COMPAT_DATA_PATH=$env_dir
"$client_dir/steamapps/common/$proton_version/proton" $mode $*