EmuDeck/functions/installToolAI.sh
Dragoon Dorise 1f89ab30f4
Merge from early - CloudSync 2.0, Pegasus, Darwin support (#886)
* add json for apotris.

this PR adds the needed json for accessing Apotris.

* fix pcsx2 cloud

* decky functions + Customization moved inside every emulator _init

* Decky_setClourd

* arSnes var

* last touch

* test

* Darwin wip

* darwin wip

* old EmuAI

* SRM

* RA + SRM + ESDE

* Moving more if darwin to override.sh

* Moving more if darwin to override.sh

* installToolAI + darwin ifs cleanups, more overrides :)

* fi fix

* fixed SRM parsers with ,,

* fix rm dmg

* RA flatpak first

* darwin install

* darwin fixes

* darwinnnn

* jsonjson

* darwin srm

* fix launchers

* SRM env vars moved to a function + override to darwin

* ares out for now

* fix flycast broking everything

* dont check if.cef-enable-remote-debugging

* better zenity

* fix watcher

* zenity fix

* cloudSync provider detection

* fixed paths fix

* darwin fixed paths

* fixed paths fix

* enable cloudsync

* no appinit

* last minute fixes

* weird fixes

* hash fix?

* this needs a proper cleanup...

* fixed?

* back to linkToSaveFolder for now

* better duplicate detection

* parser disabled

* cloudSync final touches

* darwin installation

* improvements

* customSRM

* Revert "customSRM"

This reverts commit 2787d2282c367801c13ee671f3fab9d198f05fb7.

* first batch

* second batch

* SGBC + Jaguar parsers

* Pegasus settings and functions

* proper order

* Path fixed

* install on setup

* SRM parser

* icon

* early beta

* chimeraOS improvements

# Conflicts:
#	setup.sh

* cosmetic

* helpers: Fix FlatPak installed check (#875)

* chimeraOS retroarch

* clear console

* Steam installation

* fix shellcheck

* path fixes

* fix SRM

* =

* Steam-ROM-Manager

* srm new path fix

* SRM_IsInstalled

* cloudsync wtf

* SRM_IsInstalled

* Steam ROM Manager proper name

* ROM

* srm stuff

* SRM_migration

* icon

* fix savedownload

* launchers

* srm icon

* ROM

* ummm

* fixes installToolAI

* ESDE Migration

* RetroArch_setConfigOverride  fix

* fix RA

* fix PCSX2QT

* back to flatpaks

* EmuDecky no internet message

* noInternet EmuDecky

* pegasus theme installer

* pegasus launchers

* Pegasus install Darwin

* Pegasus install Darwin

* Init pegasus

* ESDE Theme

* =

* >

* override getEmuInstallStatus

---------

Co-authored-by: Glazed_Belmont <48196637+GlaZedBelmont@users.noreply.github.com>
2023-10-10 22:20:54 +02:00

62 lines
2.0 KiB
Bash

#!/bin/bash
installToolAI(){
local name="$1"
local url="$2"
local fileName="$3"
local showProgress="$4"
local lastVerFile="$5"
local latestVer="$6"
if [[ "$fileName" == "" ]]; then
fileName="$name"
fi
echo "$name"
echo "$url"
echo "$fileName"
echo "$showProgress"
echo "$lastVerFile"
echo "$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)}')
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
}