From 81a863b96893db3a8432aa396092e9f7d89d4e0f Mon Sep 17 00:00:00 2001 From: Roy <88516395+moraroy@users.noreply.github.com> Date: Thu, 17 Oct 2024 03:52:27 -0700 Subject: [PATCH] Update NonSteamLaunchers.sh --- NonSteamLaunchers.sh | 111 ------------------------------------------- 1 file changed, 111 deletions(-) diff --git a/NonSteamLaunchers.sh b/NonSteamLaunchers.sh index 821c8c2..0a7b866 100755 --- a/NonSteamLaunchers.sh +++ b/NonSteamLaunchers.sh @@ -2265,118 +2265,7 @@ fi sleep 15 -# Function to switch to Game Mode -switch_to_game_mode() { - echo "Switching to Game Mode..." - # Delete NonSteamLaunchersInstallation subfolder in Downloads folder - rm -rf "$download_dir" - # Delete the service file - rm -rf ${logged_in_home}/.config/systemd/user/nslgamescanner.service - # Remove the symlink - unlink ${logged_in_home}/.config/systemd/user/default.target.wants/nslgamescanner.service - # Reload the systemd user instance - systemctl --user daemon-reload - qdbus org.kde.Shutdown /Shutdown org.kde.Shutdown.logout -} -# Function to display a Zenity message -show_message() { - zenity --notification --text="$1" --timeout=1 -} - -# Set the remote repository URL -REPO_URL="https://github.com/moraroy/NonSteamLaunchersDecky/" - -# Set the local directory path -LOCAL_DIR="${logged_in_home}/homebrew/plugins/NonSteamLaunchers" - -# Set the name of the branch you want to reset -BRANCH_NAME="test" - -# Ensure the base directory exists and has the correct permissions -BASE_DIR="${logged_in_home}/homebrew/plugins" -sudo mkdir -p $BASE_DIR -sudo chmod -R u+rw $BASE_DIR -sudo chown -R $USER:$USER $BASE_DIR - -# Check if the Decky Loader and NSL Plugin exist -DECKY_LOADER_EXISTS=false -NSL_PLUGIN_EXISTS=false - -if [ -d "${logged_in_home}/homebrew/plugins" ]; then - DECKY_LOADER_EXISTS=true -fi - -if [ -d "$LOCAL_DIR" ]; then - NSL_PLUGIN_EXISTS=true -fi - -if $DECKY_LOADER_EXISTS && $NSL_PLUGIN_EXISTS; then - show_message "Decky Loader and NSL Plugin are both already installed! Checking for updates and then entering Gaming Mode..." - echo "Navigating to the plugin directory to check for updates..." - cd "$LOCAL_DIR" - echo "Fetching the latest changes..." - git fetch - echo "Resetting the plugin to the latest version..." - git reset --hard origin/$BRANCH_NAME - switch_to_game_mode - exit 0 -elif $DECKY_LOADER_EXISTS && ! $NSL_PLUGIN_EXISTS; then - USER_INPUT=$(zenity --forms --title="Authentication Required" --text="Decky Loader detected! But no NSL plugin :( Would you like to inject the plugin and switch to Game Mode?" --separator="|" --add-password="Password") -else - zenity --error --text="Decky Loader not detected. Please download and install it from their website first and re-run this script to get the NSL Plugin." - # Delete NonSteamLaunchersInstallation subfolder in Downloads folder - rm -rf "$download_dir" - exit 1 -fi - -# Extract the password -USER_PASSWORD=$(echo $USER_INPUT | cut -d'|' -f1) - -# Check if the user provided a password -if [ -z "$USER_PASSWORD" ]; then - zenity --error --text="No password entered. Exiting." - exit 1 -fi - -# Arrays to store original permissions and ownership -declare -a PERMISSIONS -declare -a OWNERSHIP -declare -a DIRECTORIES - -# Save current permissions and ownership for homebrew directory and its subdirectories -while IFS= read -r line; do - PERMISSIONS+=("$(stat -c "%a" "$line")") - OWNERSHIP+=("$(stat -c "%U:%G" "$line")") - DIRECTORIES+=("$line") -done < <(find "${logged_in_home}/homebrew" -type d) - -# Change permissions for the homebrew directory and its subdirectories -sudo chmod -R u+rw "${logged_in_home}/homebrew/" -sudo chown -R $USER:$USER "${logged_in_home}/homebrew/" - -# New method to install the plugin -mkdir -p "$LOCAL_DIR" -sudo chmod -R u+rw "$LOCAL_DIR" -sudo chown -R $USER:$USER "$LOCAL_DIR" - -# Clone the repository directly -git clone "$REPO_URL" "$LOCAL_DIR" - -# Ensure we're on the correct branch -cd "$LOCAL_DIR" -git checkout "$BRANCH_NAME" - -# Restore original permissions and ownership for homebrew directory and its subdirectories -for i in "${!DIRECTORIES[@]}"; do - sudo chmod "${PERMISSIONS[$i]}" "${DIRECTORIES[$i]}" - sudo chown "${OWNERSHIP[$i]}" "${DIRECTORIES[$i]}" -done - -show_message "Plugin installed. Switching to Game Mode..." - -# Switch to Game Mode after completion -switch_to_game_mode