From e1385daca1836d93632fe1d46a2717593a9eb424 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 7 Apr 2025 11:29:03 +0900 Subject: [PATCH 1/6] update(manifest): ES-DE --- net.retrodeck.retrodeck.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index c24e238f..9e5ca011 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -750,8 +750,10 @@ modules: - cp -r files/* "${FLATPAK_DEST}" sources: - type: archive - url: https://github.com/RetroDECK/ES-DE/releases/latest/download/RetroDECK-ES-DE-Artifact.tar.gz - sha256: RETRODECKESDELATEST + # url: https://github.com/RetroDECK/ES-DE/releases/latest/download/RetroDECK-ES-DE-Artifact.tar.gz + # sha256: RETRODECKESDELATEST + url: https://github.com/RetroDECK/ES-DE/releases/download/feat%2Fupdate-noruntime-070425.22/RetroDECK-ES-DE-Artifact.tar.gz + sha256: 9a47f7f33405e0683009002735d4f22da04a8dd60cc9c5d835c999f2a1e24533 - name: retrodeck-theme buildsystem: simple From 4d8ea9edde81a9603e2b8d28ce56d2e13e59b283 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 7 Apr 2025 11:29:41 +0900 Subject: [PATCH 2/6] update(theme): change commit reference for RetroDECK theme --- net.retrodeck.retrodeck.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 9e5ca011..e5714edf 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -763,7 +763,7 @@ modules: sources: - type: git url: https://github.com/RetroDECK/RetroDECK-theme - commit: e9d20225b6a5e74bc867d7b1fb31baeaf2663dcc + commit: 6c9565fc8335d9cd74a56ae8a2c4dafa8cf9c513 # RUFFLE - START - FROZEN UNTIL QT 6.8 UPDATE # https://github.com/ruffle-rs/ruffle/releases From 4417af4a9b640c85c10aded97c790f2f5408f760 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 8 Apr 2025 13:31:50 +0900 Subject: [PATCH 3/6] update(metainfo): add updates for ES-DE 3.2.0 and RetroDECK theme compatibility --- net.retrodeck.retrodeck.metainfo.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/net.retrodeck.retrodeck.metainfo.xml b/net.retrodeck.retrodeck.metainfo.xml index 8e072f5a..1fd37ef6 100644 --- a/net.retrodeck.retrodeck.metainfo.xml +++ b/net.retrodeck.retrodeck.metainfo.xml @@ -90,6 +90,11 @@
  • CLI: Added optional "repair-paths" CLI option for fixing paths
  • CONFIGURATOR: added Debug level choice menu
  • +

    Updates:

    +
      +
    • ES-DE: to version 3.2.0
    • +
    • RetroDECK Theme: added compatiblity with 3.2.0 and added new features: new background option and system status indicators
    • +

    Bug fixes:

    • STEAM SYNC: Fixed issues with Zenity dialogs showing unnecessarily during Steam Sync
    • From 52ce60f164a5c053f0867a6a8954729e8fe95743 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 8 Apr 2025 13:34:11 +0900 Subject: [PATCH 4/6] update(manifest): restore latest URL and SHA256 for RetroDECK ES-DE artifact --- net.retrodeck.retrodeck.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index e5714edf..39a8e281 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -750,10 +750,8 @@ modules: - cp -r files/* "${FLATPAK_DEST}" sources: - type: archive - # url: https://github.com/RetroDECK/ES-DE/releases/latest/download/RetroDECK-ES-DE-Artifact.tar.gz - # sha256: RETRODECKESDELATEST - url: https://github.com/RetroDECK/ES-DE/releases/download/feat%2Fupdate-noruntime-070425.22/RetroDECK-ES-DE-Artifact.tar.gz - sha256: 9a47f7f33405e0683009002735d4f22da04a8dd60cc9c5d835c999f2a1e24533 + url: https://github.com/RetroDECK/ES-DE/releases/latest/download/RetroDECK-ES-DE-Artifact.tar.gz + sha256: RETRODECKESDELATEST - name: retrodeck-theme buildsystem: simple From e5f97de062b84d2d89035920f9cee0f2f3ae5279 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 8 Apr 2025 13:36:36 +0900 Subject: [PATCH 5/6] update(script): improve user prompt for test upgrade confirmation in retrodeck.sh --- retrodeck.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/retrodeck.sh b/retrodeck.sh index b441372c..50e1e30e 100644 --- a/retrodeck.sh +++ b/retrodeck.sh @@ -161,8 +161,7 @@ while [[ $# -gt 0 ]]; do ;; --test-upgrade) if [[ "$2" =~ ^.+ ]]; then - echo "You are about to test upgrading RetroDECK from version $2 to $hard_version" - read -r -p "Enter 'y' to continue, 'n' to start RetroDECK normally: " response + read -r -p "You are about to test upgrading RetroDECK from version $2 to $hard_version. Enter 'y' to continue ot 'n' to start RetroDECK normally: (y/N) " response if [[ $response == [yY] ]]; then version="$2" logging_level="debug" # Temporarily enable debug logging From f2b5e3431c7015949146b75528223c17352875a9 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 8 Apr 2025 13:36:44 +0900 Subject: [PATCH 6/6] update(post_update): enhance Steam Sync reset options with user confirmation and action selection --- functions/post_update.sh | 114 +++++++++++++++++++++++++++++++++------ 1 file changed, 99 insertions(+), 15 deletions(-) diff --git a/functions/post_update.sh b/functions/post_update.sh index 9434f384..6214fad5 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -762,24 +762,108 @@ post_update() { # In version 0.9.2b, the following changes were made that required config file updates/reset or other changes to the filesystem: # Steam Sync completely rebuilt into new manifest system. Favorites may need to be nuked and, if steam_sync is enabled will be rebuilt. This is an optional step. - if [[ -d "$steamsync_folder" && ! -z $(ls -1 "$steamsync_folder") ]]; then # If Steam Sync folder exists and is not empty - if [[ "$(configurator_generic_question_dialog "RetroDECK 0.9.2b Steam Sync Reset" "In RetroDECK 0.9.2b, we upgraded our Steam Sync feature, which may require rebuilding the shortcuts in Steam.\n\nYour ES-DE favorites will remain unchanged. Any games you have favorited will be recreated, but last-played information and custom artwork changes may be lost.\n\nIf you added RetroDECK to Steam through our Configurator, it will also be removed during this process.\n\nWould you like to refresh the RetroDECK Steam Sync system?")" == "true" ]]; then - steam-rom-manager nuke - steam_sync - if [[ "$(configurator_generic_question_dialog "RetroDECK 0.9.2b Steam Sync Reset" "The Steam Sync reset is complete.\n\nIf you had previously added a RetroDECK shortcut to Steam through the Configurator, it would have also been removed.\n\nWould you like to add the RetroDECK shortcut back now?")" == "true" ]]; then - ( - # Add RetroDECK launcher to Steam - steam-rom-manager enable --names "RetroDECK Launcher" >> "$srm_log" 2>&1 - steam-rom-manager add >> "$srm_log" 2>&1 - ) | - rd_zenity --progress \ - --title="RetroDECK Configurator: Add RetroDECK to Steam" \ - --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ - --text="Adding RetroDECK launcher to Steam, please wait..." \ - --pulsate --width=500 --height=150 --auto-close --no-cancel + while true; do + choices=$(rd_zenity --list --checklist --title="RetroDECK Steam Sync Reset Options" \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --text="In RetroDECK 0.9.2b, we upgraded our Steam Sync feature, which may require rebuilding the shortcuts in Steam.\n\nYour ES-DE favorites will remain unchanged. Any games you have favorited will be recreated, but last-played information and custom artwork changes may be lost.\n\nIf you added RetroDECK to Steam through our Configurator, it will also be removed during this process.\n\nSelect the actions you want to perform:" \ + --column="Select" --column="Action" --column="Description" --width="1100" --height="700" \ + [[ -d "$steamsync_folder" && ! -z $(ls -1 "$steamsync_folder") ]] && TRUE "Refresh Steam Sync" "Rebuild the Steam Sync system, recreating shortcuts and removing outdated data" \ + TRUE "Add RetroDECK Shortcut to Steam" "Add the RetroDECK launcher back to Steam after refreshing Steam Sync" \ + TRUE "Regenerate ES-DE Folders" "Recreate the ES-DE system folders to ensure proper structure and functionality" \ + --separator=":" \ + --extra-button="Execute All" \ + --ok-label="Execute Selected Only" \ + --cancel-label="Execute None") + + log d "User selected: $choices" + log d "User pressed: $?" + + # Check if "Execute All" button was pressed + if [[ "$choices" == "Execute All" ]]; then + execute_all=true + break + else + execute_all=false + # Split the choices into an array + IFS=":" read -r -a selected_choices <<< "$choices" + fi + + if [[ $? -eq 0 && -n "$choices" ]]; then + if ! rd_zenity --question --title="Confirmation" --text="Are you sure you want to proceed with only the selected options?\n\nThis might cause issues in RetroDECK"; then + log i "User is not sure, showing the checklist window again." + continue + else + log i "User confirmed to proceed with only the selected options." + break fi fi + + if [[ $? == 0 ]]; then + if ! rd_zenity --question --title="Confirmation" --text="Are you sure you want to skip the Steam Sync reset process?\n\nThis might cause issues in RetroDECK"; then + log i "User is not sure, showing the checklist window again." + continue + else + log i "User confirmed to proceed without any reset." + break + fi + fi + + break + done + + # Execute the selected actions + + # Refresh Steam Sync + if [[ "$execute_all" == "true" || " ${selected_choices[@]} " =~ " Refresh Steam Sync " ]]; then + log i "User agreed to refresh Steam Sync" + steam-rom-manager nuke + steam_sync fi + + # Add RetroDECK Shortcut to Steam + if [[ "$execute_all" == "true" || " ${selected_choices[@]} " =~ " Add RetroDECK Shortcut to Steam " ]]; then + log i "User agreed to add RetroDECK shortcut to Steam" + ( + steam-rom-manager enable --names "RetroDECK Launcher" >> "$srm_log" 2>&1 + steam-rom-manager add >> "$srm_log" 2>&1 + ) | + rd_zenity --progress \ + --title="RetroDECK Configurator: Add RetroDECK to Steam" \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --text="Adding RetroDECK launcher to Steam, please wait..." \ + --pulsate --width=500 --height=150 --auto-close --no-cancel + fi + + # Regenerate ES-DE Folders + if [[ "$execute_all" == "true" || " ${selected_choices[@]} " =~ " Regenerate ES-DE Folders " ]]; then + log i "User agreed to regenerate ES-DE folders" + es-de --create-system-dirs + fi + fi + + # Execute the selected actions + + # Refresh Steam Sync + if [[ "$execute_all" == "true" || " ${selected_choices[@]} " =~ " Refresh Steam Sync " ]]; then + log i "User agreed to refresh Steam Sync" + steam-rom-manager nuke + steam_sync + fi + + # Add RetroDECK Shortcut to Steam + if [[ "$execute_all" == "true" || " ${selected_choices[@]} " =~ " Add RetroDECK Shortcut to Steam " ]]; then + log i "User agreed to add RetroDECK shortcut to Steam" + ( + steam-rom-manager enable --names "RetroDECK Launcher" >> "$srm_log" 2>&1 + steam-rom-manager add >> "$srm_log" 2>&1 + ) | + rd_zenity --progress \ + --title="RetroDECK Configurator: Add RetroDECK to Steam" \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --text="Adding RetroDECK launcher to Steam, please wait..." \ + --pulsate --width=500 --height=150 --auto-close --no-cancel + fi + fi # end of 0.9.2b # The following commands are run every time.