2023-04-27 02:15:25 +02:00
#!/bin/bash
2023-04-28 11:01:10 +02:00
chmod +x NonSteamLaunchers.sh
2023-04-27 02:15:25 +02:00
set -x
2023-04-27 22:51:00 +02:00
set -u
2023-04-28 02:14:36 +02:00
export WINEDEBUG = -all,err+all
2023-04-27 02:15:25 +02:00
2023-04-28 11:01:10 +02:00
2023-04-27 13:19:15 +02:00
# Display a list of options using zenity
2023-04-28 11:01:10 +02:00
options = $( zenity --list --text= "Which installers do you want to download and install?" --checklist --column= ":)" --column= "The default is one App ID Installation" FALSE "Seperate App IDs" TRUE "Epic Games Launcher" TRUE "GOG Galaxy" TRUE "Uplay" TRUE "Origin" TRUE "Battle.net" FALSE "Amazon Games - broken" FALSE "EA App - broken" FALSE "itch.io - broken" --width= 400 --height= 362)
2023-04-27 13:19:15 +02:00
# Check if the user selected both Origin and EA App
if [ [ $options = = *"Origin" * ] ] && [ [ $options = = *"EA App" * ] ] ; then
# User selected both Origin and EA App
zenity --error --text= "You cannot select both Origin and EA App at the same time." --width= 200 --height= 150
exit 1
fi
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Check if the user selected to use separate app IDs
if [ [ $options = = *"Seperate App IDs" * ] ] ; then
# User selected to use separate app IDs
use_separate_appids = true
else
# User did not select to use separate app IDs
use_separate_appids = false
2023-04-27 02:15:25 +02:00
fi
2023-04-27 22:51:00 +02:00
(
echo "0"
echo "# Detecting and Installing GE-Proton"
2023-04-27 13:19:15 +02:00
# Create NonSteamLaunchersInstallation subfolder in Downloads folder
mkdir -p ~/Downloads/NonSteamLaunchersInstallation
2023-04-27 02:15:25 +02:00
# Set the path to the Proton directory
proton_dir = $( find ~/.steam/root/compatibilitytools.d -maxdepth 1 -type d -name "GE-Proton*" | sort -V | tail -n1)
# Set the URLs to download GE-Proton from
ge_proton_url1 = https://github.com/GloriousEggroll/proton-ge-custom/releases/latest/download/GE-Proton.tar.gz
ge_proton_url2 = https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton7-55/GE-Proton7-55.tar.gz
# Check if GE-Proton is installed
if [ -z " $proton_dir " ] ; then
# Download GE-Proton using the first URL
2023-04-27 13:19:15 +02:00
echo "Downloading GE-Proton using the first URL"
wget $ge_proton_url1 -O ~/Downloads/NonSteamLaunchersInstallation/GE-Proton.tar.gz
2023-04-27 02:15:25 +02:00
# Check if the download succeeded
if [ $? -ne 0 ] ; then
# Download GE-Proton using the second URL
2023-04-27 13:19:15 +02:00
echo "Downloading GE-Proton using the second URL"
wget $ge_proton_url2 -O ~/Downloads/NonSteamLaunchersInstallation/GE-Proton.tar.gz
2023-04-27 02:15:25 +02:00
fi
# Check if either download succeeded
if [ $? -eq 0 ] ; then
# Install GE-Proton
2023-04-27 13:19:15 +02:00
echo "Installing GE-Proton"
tar -xvf ~/Downloads/NonSteamLaunchersInstallation/GE-Proton.tar.gz -C ~/.steam/root/compatibilitytools.d/
2023-04-27 02:15:25 +02:00
proton_dir = $( find ~/.steam/root/compatibilitytools.d -maxdepth 1 -type d -name "GE-Proton*" | sort -V | tail -n1)
else
# Handle download failure
echo "Failed to download GE-Proton"
fi
else
# Check if installed version is the latest version
installed_version = $( basename $proton_dir | sed 's/GE-Proton-//' )
latest_version = $( curl -s https://api.github.com/repos/GloriousEggroll/proton-ge-custom/releases/latest | grep tag_name | cut -d '"' -f 4)
if [ " $installed_version " != " $latest_version " ] ; then
# Download GE-Proton using the first URL
2023-04-27 22:51:00 +02:00
echo "Downloading GE-Proton using the first URL"
2023-04-27 13:19:15 +02:00
wget $ge_proton_url1 -O ~/Downloads/NonSteamLaunchersInstallation/GE-Proton.tar.gz
2023-04-27 02:15:25 +02:00
# Check if the download succeeded
if [ $? -ne 0 ] ; then
# Download GE-Proton using the second URL
2023-04-27 22:51:00 +02:00
echo "Downloading GE-Proton using the second URL"
2023-04-27 13:19:15 +02:00
wget $ge_proton_url2 -O ~/Downloads/NonSteamLaunchersInstallation/GE-Proton.tar.gz
2023-04-27 02:15:25 +02:00
fi
# Check if either download succeeded
if [ $? -eq 0 ] ; then
# Install GE-Proton
2023-04-27 22:51:00 +02:00
echo "Installing GE-Proton"
2023-04-27 13:19:15 +02:00
tar -xvf ~/Downloads/NonSteamLaunchersInstallation/GE-Proton.tar.gz -C ~/.steam/root/compatibilitytools.d/
2023-04-27 02:15:25 +02:00
proton_dir = $( find ~/.steam/root/compatibilitytools.d -maxdepth 1 -type d -name "GE-Proton*" | sort -V | tail -n1)
else
# Handle download failure
echo "Failed to download GE-Proton"
fi
fi
fi
2023-04-27 22:51:00 +02:00
echo "10"
echo "# Setting files in their place"
2023-04-27 02:15:25 +02:00
# Set the appid for the non-Steam game
appid = NonSteamLaunchers
# Set the URL to download the MSI file from
msi_url = https://launcher-public-service-prod06.ol.epicgames.com/launcher/api/installer/download/EpicGamesLauncherInstaller.msi
# Set the path to save the MSI file to
2023-04-27 13:19:15 +02:00
msi_file = ~/Downloads/NonSteamLaunchersInstallation/EpicGamesLauncherInstaller.msi
2023-04-27 02:15:25 +02:00
# Set the URL to download the second file from
exe_url = https://webinstallers.gog-statics.com/download/GOG_Galaxy_2.0.exe
# Set the path to save the second file to
2023-04-27 13:19:15 +02:00
exe_file = ~/Downloads/NonSteamLaunchersInstallation/GOG_Galaxy_2.0.exe
2023-04-27 02:15:25 +02:00
# Set the URL to download the third file from
ubi_url = https://ubi.li/4vxt9
# Set the path to save the third file to
2023-04-27 13:19:15 +02:00
ubi_file = ~/Downloads/NonSteamLaunchersInstallation/UplayInstaller.exe
2023-04-27 02:15:25 +02:00
# Set the URL to download the fourth file from
origin_url = https://taskinoz.com/downloads/OriginSetup-10.5.119.52718.exe
# Set the path to save the fourth file to
2023-04-27 13:19:15 +02:00
origin_file = ~/Downloads/NonSteamLaunchersInstallation/OriginSetup-10.5.119.52718.exe
2023-04-27 02:15:25 +02:00
# Set the URL to download the fifth file from
battle_url = https://www.battle.net/download/getInstallerForGame?os= win
# Set the path to save the fifth file to
2023-04-27 13:19:15 +02:00
battle_file = ~/Downloads/NonSteamLaunchersInstallation/BattleNetInstaller.exe
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Set the URL to download the sixth file from
amazon_url = https://download.amazongames.com/AmazonGamesSetup.exe
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Set the path to save the sixth file to
amazon_file = ~/Downloads/NonSteamLaunchersInstallation/AmazonGamesSetup.exe
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Set the URL to download the seventh file from
eaapp_url = https://origin-a.akamaihd.net/EA-Desktop-Client-Download/installer-releases/EAappInstaller.exe
# Set the path to save the seventh file to
eaapp_file = ~/Downloads/NonSteamLaunchersInstallation/EAappInstaller.exe
2023-04-27 02:15:25 +02:00
2023-04-28 11:01:10 +02:00
# Set the URL to download the eighth file from
itchio_url = https://itch.io/app/download?platform= windows
# Set the path to save the eighth file to
itchio_file = ~/Downloads/NonSteamLaunchersInstallation/itch-setup.exe
2023-04-27 22:51:00 +02:00
echo "20"
echo "# Creating folders"
2023-04-28 02:14:36 +02:00
# Create app id folder in compatdata folder if it doesn't exist and if the user selected to use a single app ID folder
if [ " $use_separate_appids " = false ] && [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
2023-04-27 02:15:25 +02:00
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
2023-04-28 02:14:36 +02:00
2023-04-27 02:15:25 +02:00
# Change working directory to Proton's
cd $proton_dir
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
# Set the STEAM_COMPAT_DATA_PATH environment variable for the first file
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
2023-04-27 13:19:15 +02:00
wait
2023-04-27 22:51:00 +02:00
echo "30"
echo "# Downloading/Installing Epic Games"
2023-04-27 13:19:15 +02:00
# Check if the user selected Epic Games Launcher
if [ [ $options = = *"Epic Games Launcher" * ] ] ; then
# User selected Epic Games Launcher
echo "User selected Epic Games Launcher"
# Set the appid for the Epic Games Launcher
if [ " $use_separate_appids " = true ] ; then
appid = EpicGamesLauncher
else
appid = NonSteamLaunchers
fi
# Create app id folder in compatdata folder if it doesn't exist
if [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
# Change working directory to Proton's
cd $proton_dir
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
# Set the STEAM_COMPAT_DATA_PATH environment variable for Epic Games Launcher
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
# Download MSI file
if [ ! -f " $msi_file " ] ; then
echo "Downloading MSI file"
wget $msi_url -O $msi_file
fi
2023-04-27 02:15:25 +02:00
# Run the MSI file using Proton with the /passive option
2023-04-27 13:19:15 +02:00
echo "Running MSI file using Proton with the /passive option"
2023-04-27 02:15:25 +02:00
" $proton_dir /proton " run MsiExec.exe /i " $msi_file " /qn
2023-04-27 13:19:15 +02:00
fi
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Wait for the MSI file to finish running
2023-04-27 02:15:25 +02:00
wait
2023-04-27 22:51:00 +02:00
echo "40"
echo "# Downloading/Installing Gog Galaxy"
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Check if the user selected GOG Galaxy
if [ [ $options = = *"GOG Galaxy" * ] ] ; then
# User selected GOG Galaxy
echo "User selected GOG Galaxy"
# Set the appid for the Gog Galaxy 2.0
if [ " $use_separate_appids " = true ] ; then
appid = GogGalaxyLauncher
else
appid = NonSteamLaunchers
fi
# Create app id folder in compatdata folder if it doesn't exist
if [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
# Change working directory to Proton's
cd $proton_dir
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
# Set the STEAM_COMPAT_DATA_PATH environment variable for Epic Games Launcher
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
# Download EXE file
if [ ! -f " $exe_file " ] ; then
echo "Downloading EXE file"
wget $exe_url -O $exe_file
fi
# Run the EXE file using Proton without the /passive option
echo "Running EXE file using Proton without the /passive option"
" $proton_dir /proton " run " $exe_file " &
2023-04-28 05:34:49 +02:00
2023-04-27 22:51:00 +02:00
echo "45"
echo "# Downloading/Installing Gog Galaxy"
2023-04-28 05:34:49 +02:00
# Continuously check for the existence of the GalaxyInstaller_XXXXX folder until it is found
while true; do
# Find the GalaxyInstaller_XXXXX folder
galaxy_installer_folder = $( find " /home/deck/.local/share/Steam/steamapps/compatdata/ $appid /pfx/drive_c/users/steamuser/Temp " -maxdepth 1 -type d -name "GalaxyInstaller_*" | head -n1)
# Check if the folder was found
if [ -n " $galaxy_installer_folder " ] ; then
# The folder was found
echo " The GalaxyInstaller_XXXXX folder was found: $galaxy_installer_folder "
break
else
# The folder was not found
echo "The GalaxyInstaller_XXXXX folder was not found. Waiting for it to be created..."
sleep 5
fi
done
# Set the path to the GalaxySetup.exe file
galaxy_setup_file = " $galaxy_installer_folder " /GalaxySetup.exe
# Set the expected size of the GalaxySetup.exe file in bytes
expected_size = 275836128
# Continuously check the size of the GalaxySetup.exe file until it has been fully downloaded
while true; do
# Get the size of the GalaxySetup.exe file in bytes
file_size = $( stat -c%s " $galaxy_setup_file " )
# Compare the size of the file with the expected size
if [ " $file_size " -eq " $expected_size " ] ; then
sleep 2
# The sizes match
echo "The size of the GalaxySetup.exe file matches the expected size."
break
else
# The sizes do not match
echo "The size of the GalaxySetup.exe file does not match the expected size. Waiting for the file to finish downloading..."
sleep 1
fi
done
# Cancel & Exit the GOG Galaxy Setup Wizard
2023-04-27 13:19:15 +02:00
pkill GalaxySetup.tmp
2023-04-28 05:34:49 +02:00
2023-04-27 13:19:15 +02:00
# Navigate to %LocalAppData%\Temp
2023-04-28 05:34:49 +02:00
cd " /home/deck/.local/share/Steam/steamapps/compatdata/ $appid /pfx/drive_c/users/steamuser/Temp "
2023-04-27 13:19:15 +02:00
# Find the GalaxyInstaller_XXXXX folder and copy it to C:\Downloads
galaxy_installer_folder = $( find . -maxdepth 1 -type d -name "GalaxyInstaller_*" | head -n1)
cp -r " $galaxy_installer_folder " ~/Downloads/NonSteamLaunchersInstallation/
# Navigate to the C:\Downloads\GalaxyInstaller_XXXXX folder
cd ~/Downloads/NonSteamLaunchersInstallation/" $( basename $galaxy_installer_folder ) "
# Run GalaxySetup.exe with the /VERYSILENT and /NORESTART options
echo "Running GalaxySetup.exe with the /VERYSILENT and /NORESTART options"
" $proton_dir /proton " run GalaxySetup.exe /VERYSILENT /NORESTART
# Wait for the EXE file to finish running
wait
fi
2023-04-28 05:34:49 +02:00
2023-04-27 13:19:15 +02:00
wait
2023-04-27 22:51:00 +02:00
echo "50"
echo "# Downloading/Installing Uplay"
2023-04-27 13:19:15 +02:00
# Check if user selected Uplay
if [ [ $options = = *"Uplay" * ] ] ; then
# User selected Uplay
echo "User selected Uplay"
# Set the appid for the Epic Games Launcher
if [ " $use_separate_appids " = true ] ; then
appid = UplayLauncher
else
appid = NonSteamLaunchers
fi
# Create app id folder in compatdata folder if it doesn't exist
if [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
# Change working directory to Proton's
cd $proton_dir
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
# Set the STEAM_COMPAT_DATA_PATH environment variable for Epic Games Launcher
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
# Download UBI file
if [ ! -f " $ubi_file " ] ; then
echo "Downloading UBI file"
wget $ubi_url -O $ubi_file
fi
# Run the UBI file using Proton with the /passive option
echo "Running UBI file using Proton with the /passive option"
2023-04-27 02:15:25 +02:00
" $proton_dir /proton " run " $ubi_file " /S
2023-04-27 13:19:15 +02:00
fi
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Wait for the UBI file to finish running
2023-04-27 02:15:25 +02:00
wait
2023-04-27 22:51:00 +02:00
echo "60"
echo "# Downloading/Installing Origin"
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Check if user selected Origin
if [ [ $options = = *"Origin" * ] ] ; then
# User selected Origin
echo "User selected Origin"
# Set the appid for the Epic Games Launcher
if [ " $use_separate_appids " = true ] ; then
appid = OriginLauncher
else
appid = NonSteamLaunchers
fi
# Create app id folder in compatdata folder if it doesn't exist
if [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
# Change working directory to Proton's
cd $proton_dir
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
# Set the STEAM_COMPAT_DATA_PATH environment variable for Epic Games Launcher
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
# Download ORIGIN file
if [ ! -f " $origin_file " ] ; then
echo "Downloading ORIGIN file"
wget $origin_url -O $origin_file
fi
# Run the ORIGIN file using Proton with the /passive option
echo "Running ORIGIN file using Proton with the /passive option"
" $proton_dir /proton " run " $origin_file " /SILENT
# Edit local.xml
sed -i 's|</Settings>| <Setting value="true" key="MigrationDisabled" type="1"/>\n <Setting key="UpdateURL" value="" type="10"/>\n <Setting key="AutoPatchGlobal" value="false" type="1"/>\n <Setting key="AutoUpdate" value="false" type="1"/>\n</Settings>|' " $HOME /.local/share/Steam/steamapps/compatdata/ $appid /pfx/drive_c/ProgramData/Origin/local.xml "
# Terminate any processes with the name Origin.exe
pkill Origin.exe
# Wait for the ORIGIN file to finish running
wait
fi
wait
2023-04-27 22:51:00 +02:00
echo "70"
echo "# Downloading/Installing Battle.net"
2023-04-27 13:19:15 +02:00
# Check if user selected Battle.net
if [ [ $options = = *"Battle.net" * ] ] ; then
# User selected Battle.net
echo "User selected Battle.net"
# Set the appid for the Epic Games Launcher
if [ " $use_separate_appids " = true ] ; then
appid = Battle.netLauncher
else
appid = NonSteamLaunchers
fi
# Create app id folder in compatdata folder if it doesn't exist
if [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
# Change working directory to Proton's
cd $proton_dir
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
# Set the STEAM_COMPAT_DATA_PATH environment variable for Epic Games Launcher
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Download BATTLE file
if [ ! -f " $battle_file " ] ; then
echo "Downloading BATTLE file"
wget $battle_url -O $battle_file
fi
# Run the BATTLE file using Proton with the /passive option
echo "Running BATTLE file using Proton with the /passive option"
" $proton_dir /proton " run " $battle_file " Battle.net-Setup.exe --lang= enUS --installpath= "C:\Program Files (x86)\Battle.net" &
sleep 90
pkill Battle.net.exe
fi
2023-04-27 02:15:25 +02:00
wait
2023-04-27 22:51:00 +02:00
echo "80"
echo "# Downloading/Installing Amazon Games"
2023-04-27 13:19:15 +02:00
# Check if user selected Amazon Games
if [ [ $options = = *"Amazon Games" * ] ] ; then
# User selected Amazon Games
echo "User selected Amazon Games"
2023-04-27 02:15:25 +02:00
2023-04-28 11:01:10 +02:00
# Set the appid for the Amazon Games Launcher
2023-04-27 13:19:15 +02:00
if [ " $use_separate_appids " = true ] ; then
appid = AmazonGamesLauncher
else
appid = NonSteamLaunchers
fi
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Create app id folder in compatdata folder if it doesn't exist
if [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
# Change working directory to Proton's
cd $proton_dir
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Set the STEAM_COMPAT_DATA_PATH environment variable for Epic Games Launcher
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Download Amazon file
if [ ! -f " $amazon_file " ] ; then
echo "Downloading Amazon file"
wget $amazon_url -O $amazon_file
fi
2023-04-28 02:14:36 +02:00
2023-04-27 13:19:15 +02:00
# Run the Amazon file using Proton with the /passive option
echo "Running Amazon file using Proton with the /passive option"
" $proton_dir /proton " run " $amazon_file " /qn
# Wait for the Amazon file to finish running
wait
fi
2023-04-27 02:15:25 +02:00
wait
2023-04-27 22:51:00 +02:00
echo "90"
echo "# Downloading/Installing EA App"
2023-04-27 13:19:15 +02:00
# Check if user selected EA App
if [ [ $options = = *"EA App" * ] ] ; then
# User selected EA App
echo "User selected EA App"
2023-04-27 02:15:25 +02:00
2023-04-28 02:14:36 +02:00
# Set the appid for the EA App Launcher
2023-04-27 13:19:15 +02:00
if [ " $use_separate_appids " = true ] ; then
2023-04-28 11:01:10 +02:00
appid = TheEAappLauncher
2023-04-27 13:19:15 +02:00
else
appid = NonSteamLaunchers
fi
# Create app id folder in compatdata folder if it doesn't exist
if [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
# Change working directory to Proton's
cd $proton_dir
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
# Set the STEAM_COMPAT_DATA_PATH environment variable for Epic Games Launcher
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
# Download EA App file
if [ ! -f " $eaapp_file " ] ; then
echo "Downloading EA App file"
wget $eaapp_url -O $eaapp_file
fi
2023-04-28 02:14:36 +02:00
2023-04-27 13:19:15 +02:00
# Run the EA App file using Proton with the /passive option
echo "Running EA App file using Proton with the /passive option"
2023-04-28 02:14:36 +02:00
" $proton_dir /proton " run " $eaapp_file "
2023-04-27 13:19:15 +02:00
# Wait for the EA App file to finish running
wait
fi
wait
2023-04-28 11:01:10 +02:00
echo "95"
echo "# Downloading/Installing itch.io"
# Check if the user selected itchio Launcher
if [ [ $options = = *"itch.io" * ] ] ; then
# User selected itchio Launcher
echo "User selected itch.io"
# Set the appid for the itchio Launcher
if [ " $use_separate_appids " = true ] ; then
appid = itchioLauncher
else
appid = NonSteamLaunchers
fi
# Create app id folder in compatdata folder if it doesn't exist
if [ ! -d " $HOME /.local/share/Steam/steamapps/compatdata/ $appid " ] ; then
mkdir -p " $HOME /.local/share/Steam/steamapps/compatdata/ $appid "
fi
# Change working directory to Proton's
cd $proton_dir
# Set the STEAM_COMPAT_CLIENT_INSTALL_PATH environment variable
export STEAM_COMPAT_CLIENT_INSTALL_PATH = "~/.local/share/Steam"
# Set the STEAM_COMPAT_DATA_PATH environment variable for Epic Games Launcher
export STEAM_COMPAT_DATA_PATH = ~/.local/share/Steam/steamapps/compatdata/$appid
# Download itchio file
if [ ! -f " $itchio_file " ] ; then
echo "Downloading itchio file"
wget $itchio_url -O $itchio_file
fi
# Run the itchio file using Proton with the /passive option
echo "Running itchio file using Proton with the /passive option"
" $proton_dir /proton " run " $itchio_file "
fi
wait
2023-04-27 02:15:25 +02:00
2023-04-27 13:19:15 +02:00
# Delete NonSteamLaunchersInstallation subfolder in Downloads folder
rm -rf ~/Downloads/NonSteamLaunchersInstallation
2023-04-27 02:15:25 +02:00
2023-04-27 22:51:00 +02:00
echo "100"
echo "# Script is finished - you may close all windows"
) |
zenity --progress \
--title= "Update Status" \
2023-04-28 05:34:49 +02:00
--text= "Starting update..." --width= 450 --height= 350\
2023-04-27 22:51:00 +02:00
--percentage= 0
if [ " $? " = -1 ] ; then
zenity --error \
--text= "Update canceled."
fi
2023-04-27 02:15:25 +02:00
2023-04-27 22:51:00 +02:00
exit