EmuDeck/functions/EmuScripts/emuDeckScummVM.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

138 lines
2.5 KiB
Bash

#!/bin/bash
#variables
ScummVM_emuName="ScummVM"
ScummVM_emuType="$emuDeckEmuTypeFlatpak"
ScummVM_emuPath="org.scummvm.ScummVM"
ScummVM_releaseURL=""
ScummVM_configFile="$HOME/.var/app/org.scummvm.ScummVM/config/scummvm/scummvm.ini"
#cleanupOlderThings
ScummVM_cleanup(){
echo "NYI"
}
#Install
ScummVM_install(){
installEmuFP "${ScummVM_emuName}" "${ScummVM_emuPath}" "emulator" ""
}
#Fix for autoupdate
Scummvm_install(){
ScummVM_install
}
#ApplyInitialSettings
ScummVM_init(){
configEmuFP "${ScummVM_emuName}" "${ScummVM_emuPath}" "true"
updateEmuFP "${ScummVM_emuName}" "${ScummVM_emuPath}" "emulator" ""
ScummVM_setupStorage
ScummVM_setEmulationFolder
ScummVM_setupSaves
#SRM_createParsers
ScummVM_flushEmulatorLauncher
ScummVM_setLanguage
}
ScummVM_setLanguage(){
setMSG "Setting ScummVM Language"
local language=$(locale | grep LANG | cut -d= -f2 | cut -d. -f1)
local languageOpt="gui_language="
newLanguageOpt='gui_language='"$language"
changeLine "$languageOpt" "$newLanguageOpt" "$ScummVM_configFile"
}
#update
ScummVM_update(){
configEmuFP "${ScummVM_emuName}" "${ScummVM_emuPath}"
ScummVM_setupStorage
ScummVM_setEmulationFolder
ScummVM_setupSaves
ScummVM_flushEmulatorLauncher
}
#ConfigurePaths
ScummVM_setEmulationFolder(){
gameDirOpt='browser_lastpath='
newGameDirOpt="$gameDirOpt""${romsPath}/scummvm"
changeLine "$gameDirOpt" "$newGameDirOpt" "$ScummVM_configFile"
}
#SetupSaves
ScummVM_setupSaves(){
savepath_directoryOpt='savepath='
newsavepath_directoryOpt="$savepath_directoryOpt""$savesPath/scummvm/saves"
changeLine "$savepath_directoryOpt" "$newsavepath_directoryOpt" "$ScummVM_configFile"
moveSaveFolder scummvm saves "$HOME/.var/app/org.scummvm.ScummVM/data/scummvm/saves"
}
#SetupStorage
ScummVM_setupStorage(){
echo "NYI"
}
#WipeSettings
ScummVM_wipe(){
echo "NYI"
}
#Uninstall
ScummVM_uninstall(){
uninstallEmuFP "${ScummVM_emuName}" "${ScummVM_emuPath}" "emulator" ""
}
#setABXYstyle
ScummVM_setABXYstyle(){
echo "NYI"
}
#Migrate
ScummVM_migrate(){
echo "NYI"
}
#WideScreenOn
ScummVM_wideScreenOn(){
echo "NYI"
}
#WideScreenOff
ScummVM_wideScreenOff(){
echo "NYI"
}
#BezelOn
ScummVM_bezelOn(){
echo "NYI"
}
#BezelOff
ScummVM_bezelOff(){
echo "NYI"
}
#finalExec - Extra stuff
ScummVM_finalize(){
echo "NYI"
}
ScummVM_IsInstalled(){
isFpInstalled "$ScummVM_emuPath"
}
ScummVM_resetConfig(){
ScummVM_init &>/dev/null && echo "true" || echo "false"
}
ScummVM_flushEmulatorLauncher(){
flushEmulatorLaunchers "scummvm.sh"
}