EmuDeck/functions/installToolAI.sh
rawdatafeel 5dbee04a3d Cloud Services Manager/Emulators: Clean up (#1270)
* Updated installEmuAI and installEmuFP to be more dynamic
    * Allows for selecting if the application is an "emulator", "remoteplay", or "genericapplication"
        * Based off the choice, copies the respective bash file to the correct location
    * Allows for selecting file format of the downloaded AppImage (in case it's compressed and needs to be extracted)
    * Updated relevant scripts to match new changes
    * Cleaned up formatting of these two scripts
    * Cleaned up remoteplay Flatpak scripts to match new changes (allows for easier maintenance)
    * With these changes, remoteplay and generic application AppImages will now have a desktop file created
        * Added relevant desktop icons
* Added generic applications to cloud services manager
    * Added Cider, Heroic Games Launcher, Plexamp, Spotify, and Tidal
    * Moved Spotify here from remoteplay scripts
* Added chiaki4deck to remote play scripts
    * Added copying configs from Chiaki to chiaki4deck (if one does not exist already)
* Added uninstall option if bash scripts are detected in the remoteplay or generic-applications folder
    * If user installed these applications independent of EmuDeck, these folders would be empty and therefore can be skipped in the uninstallation
* Updated emulator, remoteplay, and generic-application scripts to rely more heavily on installEmuAI, installEmuFP, uninstallEmuFP, uninstallEmuAI, and uninstallGeneric
    * This should ideally improve maintenance in the future and allow for easier contribution
* Updated emulator scripts to remove redunant/outdated code
* Added emulator folder for ES-DE and Pegasus (official support was added to ES-DE)
    * Added copying emulator scripts to the emulator folder and removing when uninstalled
* Updated binupdate and flatpakupdate to be in alphabetical order/tidied these scripts
2024-09-26 12:26:39 +02:00

71 lines
2.3 KiB
Bash

#!/bin/bash
installToolAI(){
local name="$1"
local url="$2"
local fileName="$3"
local showProgress="$4"
local lastVerFile="$5"
local latestVer="$6"
if [[ -z "$fileName" ]]; then
fileName="$name"
fi
echo "1: $name"
echo "2: $url"
echo "3: $fileName"
echo "4: $showProgress"
echo "5: $lastVerFile"
echo "6: $latestVer"
echo "1, Application Name: $name"
echo "2, Application URL: $url"
echo "3, Application Filename: $fileName"
echo "4, Progress: $showProgress"
echo "5, Last Version File: $lastVerFile"
echo "6, Last Version: $latestVer"
#curl -L "$url" -o "$toolsPath/$fileName.AppImage.temp" && mv "$toolsPath/$fileName.AppImage.temp" "$toolsPath/$fileName.AppImage"
if safeDownload "$name" "$url" "$toolsPath/$fileName.AppImage" "$showProgress"; then
chmod +x "$toolsPath/$fileName.AppImage"
if [[ -n $lastVerFile ]] && [[ -n $latestVer ]]; then
echo "latest version $latestVer > $lastVerFile"
echo "$latestVer" > "$lastVerFile"
fi
else
return 1
fi
# shName=$(echo "$name" | awk '{print tolower($0)}')
# TODO: Restore this funcionality
# find "${toolsPath}/launchers/" -maxdepth 2 -type f -iname "$shName.sh" -o -type f -iname "$shName-emu.sh" | \
# while read -r f
# do
# echo "deleting $f"
# rm -f "$f"
# done
#
# find "${EMUDECKGIT}/tools/launchers/" -maxdepth 2 -type f -iname "$shName.sh" -o -type f -iname "$shName-emu.sh" | \
# while read -r l
# do
# echo "deploying $l"
# launcherFileName=$(basename "$l")
# folderName=$(dirname "$l" | sed 's!.*/!!')
# if [ $folderName == "launchers" ]; then
# folderName=""
# fi
# chmod +x "$l"
# mkdir -p "${toolsPath}/launchers/$folderName"
# cp -v -r "$l" "${toolsPath}/launchers/$folderName/$launcherFileName"
# chmod +x "${toolsPath}/launchers/$folderName/$launcherFileName"
# name=${name//-/}
# name=${name// /}
# createDesktopShortcut "$HOME/.local/share/applications/$name.desktop" \
# "$name" \
# "${toolsPath}/launchers/$folderName/$launcherFileName" \
# "false"
# done
}