diff --git a/functions/global.sh b/functions/global.sh index 3afb79b5..7e8a7292 100644 --- a/functions/global.sh +++ b/functions/global.sh @@ -66,7 +66,6 @@ features="$config/retrodeck/reference_lists/features.json" es_systems="/app/share/es-de/resources/systems/linux/es_systems.xml" # ES-DE supported system list es_find_rules="/app/share/es-de/resources/systems/linux/es_find_rules.xml" # ES-DE emulator find rules - # Godot data transfer temp files godot_bios_files_checked="/var/config/retrodeck/godot/godot_bios_files_checked.tmp" @@ -236,5 +235,6 @@ fi logs_folder="$rdhome/logs" # The path of the logs folder, here we collect all the logs steamsync_folder="$rdhome/.sync" # Folder containing all the steam sync launchers for SRM steamsync_folder_tmp="$rdhome/.sync-tmp" # Temp folder containing all the steam sync launchers for SRM +cheats_folder="$rdhome/cheats" # Folder containing all the cheats for the emulators export GLOBAL_SOURCED=true \ No newline at end of file diff --git a/functions/post_update.sh b/functions/post_update.sh index b742b2c3..36cec26d 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -610,15 +610,18 @@ post_update() { # Execute the selected resets - # ES-DE reset + # RetroArch reset if [[ "$execute_all" == "true" || " ${selected_choices[@]} " =~ " RetroArch " ]]; then log i "User agreed to RetroArch reset" # Twice to toggle them once and then toggle them back to the original value make_preset_changes "borders" "all" make_preset_changes "borders" "all" - fi + # --- ALWAYS EXECUTED IN 0.9.1b --- + + create_dir "$cheats_folder/retroarch" + fi # end of 0.9.1b # The following commands are run every time. diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 5bcc5048..79956f6f 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -123,7 +123,15 @@ prepare_component() { create_dir -d /var/config/retroarch dir_prep "$bios_folder" "/var/config/retroarch/system" dir_prep "$rdhome/logs/retroarch" "/var/config/retroarch/logs" - create_dir /var/config/retroarch/shaders/ + create_dir -d "/var/config/retroarch/shaders/" + if [[ -d "$cheats_folder/retroarch" && "$(ls -A $cheats_folder/retroarch)" ]]; then + backup_file="$backup_folder/cheats/retroarch-$(date +%y%m%d).tar.gz" + create_dir "$(dirname "$backup_file")" + tar -czf "$backup_file" -C "$cheats_folder" retroarch + log i "RetroArch cheats backed up to $backup_file" + fi + create_dir -d "$cheats_folder/retroarch" + tar -xzf /app/retrodeck/cheats/retroarch.tar.gz -C "$cheats_folder/retroarch" --overwrite cp -rf /app/share/libretro/shaders /var/config/retroarch/ dir_prep "$rdhome/shaders/retroarch" "/var/config/retroarch/shaders" cp -fv $config/retroarch/retroarch.cfg /var/config/retroarch/ @@ -136,6 +144,7 @@ prepare_component() { set_setting_value "$raconf" "screenshot_directory" "$screenshots_folder" "retroarch" set_setting_value "$raconf" "log_dir" "$logs_folder" "retroarch" set_setting_value "$raconf" "rgui_browser_directory" "$roms_folder" "retroarch" + set_setting_value "$raconf" "cheat_database_path" "$cheats_folder/retroarch" fi # Shared actions diff --git a/net.retrodeck.retrodeck.metainfo.xml b/net.retrodeck.retrodeck.metainfo.xml index e970313b..28b39157 100644 --- a/net.retrodeck.retrodeck.metainfo.xml +++ b/net.retrodeck.retrodeck.metainfo.xml @@ -66,6 +66,7 @@
New Additions:
Bug fixes: