From 415ec02ac5fbf4cb259014a1a1ca1e0f3bcfaef7 Mon Sep 17 00:00:00 2001 From: icenine451 Date: Tue, 21 Mar 2023 09:51:07 -0400 Subject: [PATCH 01/26] - Removed legacy PCSX2 entries - Internalized Yuzu config paths for FP --- emu-configs/yuzu/qt-config.ini | 6 +++--- es-configs/es_find_rules.xml | 12 ------------ es-configs/es_systems.xml | 1 - 3 files changed, 3 insertions(+), 16 deletions(-) diff --git a/emu-configs/yuzu/qt-config.ini b/emu-configs/yuzu/qt-config.ini index bdc3d216..3d9c68a4 100644 --- a/emu-configs/yuzu/qt-config.ini +++ b/emu-configs/yuzu/qt-config.ini @@ -805,7 +805,7 @@ cpuopt_unsafe_unfuse_fma=true cpuopt_unsafe_unfuse_fma\default=true [Data%20Storage] -dump_directory=/home/deck/.var/app/net.retrodeck.retrodeck/data/yuzu/dump +dump_directory=/var/data/yuzu/dump dump_directory\default=true gamecard_current_game=false gamecard_current_game\default=true @@ -813,13 +813,13 @@ gamecard_inserted=false gamecard_inserted\default=true gamecard_path= gamecard_path\default=true -load_directory=/home/deck/.var/app/net.retrodeck.retrodeck/data/yuzu/load +load_directory=/var/data/yuzu/load load_directory\default=true nand_directory=/home/deck/retrodeck/saves/switch/yuzu/nand nand_directory\default=true sdmc_directory=/home/deck/retrodeck/saves/switch/yuzu/sdmc sdmc_directory\default=true -tas_directory=/home/deck/.var/app/net.retrodeck.retrodeck/data/yuzu/tas +tas_directory=/var/data/yuzu/tas tas_directory\default=true use_virtual_sd=true use_virtual_sd\default=true diff --git a/es-configs/es_find_rules.xml b/es-configs/es_find_rules.xml index 3e71b426..78791834 100644 --- a/es-configs/es_find_rules.xml +++ b/es-configs/es_find_rules.xml @@ -327,18 +327,6 @@ ~/bin/pcsx2*-Qt.AppImage - - - - PCSX2 - pcsx2 - net.pcsx2.PCSX2 - - - /var/lib/flatpak/exports/bin/net.pcsx2.PCSX2 - ~/.local/share/flatpak/exports/bin/net.pcsx2.PCSX2 - - diff --git a/es-configs/es_systems.xml b/es-configs/es_systems.xml index 44f85c80..f48f4f24 100644 --- a/es-configs/es_systems.xml +++ b/es-configs/es_systems.xml @@ -1071,7 +1071,6 @@ %EMULATOR_PCSX2% -batch %ROM% .bin .BIN .chd .CHD .ciso .CISO .cso .CSO .dump .DUMP .elf .ELF .gz .GZ .m3u .M3U .mdf .MDF .img .IMG .iso .ISO .isz .ISZ .ngr .NRG %EMULATOR_RETROARCH% -L %CORE_RETROARCH%/pcsx2_libretro.so %ROM% - ps2 ps2 From b673f8ae7770b7ac008d74c90ab216e52a2baa63 Mon Sep 17 00:00:00 2001 From: icenine451 Date: Tue, 21 Mar 2023 10:01:16 -0400 Subject: [PATCH 02/26] Internalized paths for init commands. --- emu-configs/citra/qt-config.ini | 8 ++++---- emu-configs/yuzu/qt-config.ini | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/emu-configs/citra/qt-config.ini b/emu-configs/citra/qt-config.ini index 55c0bf80..3efd3d21 100644 --- a/emu-configs/citra/qt-config.ini +++ b/emu-configs/citra/qt-config.ini @@ -104,9 +104,9 @@ use_cpu_jit=true use_cpu_jit\default=true [Data%20Storage] -nand_directory=/home/deck/retrodeck/saves/n3ds/citra/nand/ +nand_directory=~retrodeck/saves/n3ds/citra/nand/ nand_directory\default=false -sdmc_directory=/home/deck/retrodeck/saves/n3ds/citra/sdmc/ +sdmc_directory=~retrodeck/saves/n3ds/citra/sdmc/ sdmc_directory\default=false use_custom_storage=true use_custom_storage\default=false @@ -335,7 +335,7 @@ Paths\gamedirs\3\deep_scan=false Paths\gamedirs\3\deep_scan\default=true Paths\gamedirs\3\expanded=true Paths\gamedirs\3\expanded\default=true -Paths\gamedirs\3\path=/home/deck/retrodeck/roms/n3ds +Paths\gamedirs\3\path=~retrodeck/roms/n3ds Paths\gamedirs\size=3 Paths\language=en Paths\language\default=false @@ -343,7 +343,7 @@ Paths\moviePlaybackPath= Paths\movieRecordPath= Paths\recentFiles=@Invalid() Paths\romsPath= -Paths\screenshotPath=/home/deck/retrodeck/screenshots +Paths\screenshotPath=~retrodeck/screenshots Paths\screenshotPath\default=false Paths\symbolsPath= Paths\videoDumpingPath= diff --git a/emu-configs/yuzu/qt-config.ini b/emu-configs/yuzu/qt-config.ini index 3d9c68a4..76f79f3c 100644 --- a/emu-configs/yuzu/qt-config.ini +++ b/emu-configs/yuzu/qt-config.ini @@ -815,9 +815,9 @@ gamecard_path= gamecard_path\default=true load_directory=/var/data/yuzu/load load_directory\default=true -nand_directory=/home/deck/retrodeck/saves/switch/yuzu/nand +nand_directory=~retrodeck/saves/switch/yuzu/nand nand_directory\default=true -sdmc_directory=/home/deck/retrodeck/saves/switch/yuzu/sdmc +sdmc_directory=~retrodeck/saves/switch/yuzu/sdmc sdmc_directory\default=true tas_directory=/var/data/yuzu/tas tas_directory\default=true @@ -995,7 +995,7 @@ Paths\gamedirs\4\deep_scan=false Paths\gamedirs\4\deep_scan\default=true Paths\gamedirs\4\expanded=true Paths\gamedirs\4\expanded\default=true -Paths\gamedirs\4\path=/home/deck/retrodeck/roms/switch +Paths\gamedirs\4\path=~retrodeck/roms/switch Paths\gamedirs\size=4 Paths\language=en Paths\language\default=false @@ -1004,7 +1004,7 @@ Paths\romsPath= Paths\symbolsPath= Screenshots\enable_screenshot_save_as=true Screenshots\enable_screenshot_save_as\default=true -Screenshots\screenshot_path=/home/deck/retrodeck/screenshots/ +Screenshots\screenshot_path=~retrodeck/screenshots/ Shortcuts\Main%20Window\Audio%20Mute\Unmute\Context=1 Shortcuts\Main%20Window\Audio%20Mute\Unmute\Context\default=true Shortcuts\Main%20Window\Audio%20Mute\Unmute\Controller_KeySeq=Home+Dpad_Right From c65a9af0d397543a8e9ca3a543c53cc62e515d4e Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 14:08:27 +0000 Subject: [PATCH 03/26] WF: restored unstucker --- .github/workflows/cooker-selfhosted.yml | 6 +++--- .github/workflows/main-selfhosted.yml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml index 32000afe..0401daab 100644 --- a/.github/workflows/cooker-selfhosted.yml +++ b/.github/workflows/cooker-selfhosted.yml @@ -17,9 +17,9 @@ jobs: runs-on: self-hosted steps: - # - name: Remove stuck mounts - # run: sudo umount -f /home/administrator/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* - # continue-on-error: true + - name: Remove stuck mounts + run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* + continue-on-error: true - name: Generate build ID id: generating_buildid diff --git a/.github/workflows/main-selfhosted.yml b/.github/workflows/main-selfhosted.yml index 7c9d2a71..24c0d8d6 100644 --- a/.github/workflows/main-selfhosted.yml +++ b/.github/workflows/main-selfhosted.yml @@ -17,9 +17,9 @@ jobs: runs-on: self-hosted steps: - # - name: Remove stuck mounts - # run: sudo umount -f /home/administrator/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* - # continue-on-error: true + - name: Remove stuck mounts + run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* + continue-on-error: true - name: Generate build ID id: generating_buildid From 5105eaf855bdc7d88ae3c910b2615199b27b4c85 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 14:10:25 +0000 Subject: [PATCH 04/26] WF: restored unstucker --- rd-submodules/retroarch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rd-submodules/retroarch b/rd-submodules/retroarch index 0b1cfb79..717b7809 160000 --- a/rd-submodules/retroarch +++ b/rd-submodules/retroarch @@ -1 +1 @@ -Subproject commit 0b1cfb79e591e10488a3262d6b38db843c39a409 +Subproject commit 717b78093797270877ec416e58082f1c71d435d8 From a7505ad4f21236dede727e18167b26bbbcf8c410 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 14:14:28 +0000 Subject: [PATCH 05/26] WF: restored unstucker [skip ci] --- .github/workflows/cooker-selfhosted.yml | 1 + .github/workflows/main-selfhosted.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml index 0401daab..33e2c18c 100644 --- a/.github/workflows/cooker-selfhosted.yml +++ b/.github/workflows/cooker-selfhosted.yml @@ -17,6 +17,7 @@ jobs: runs-on: self-hosted steps: + # Circumventing this bug: https://github.com/flatpak/flatpak-builder/issues/317 - name: Remove stuck mounts run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* continue-on-error: true diff --git a/.github/workflows/main-selfhosted.yml b/.github/workflows/main-selfhosted.yml index 24c0d8d6..7f16a70f 100644 --- a/.github/workflows/main-selfhosted.yml +++ b/.github/workflows/main-selfhosted.yml @@ -17,6 +17,7 @@ jobs: runs-on: self-hosted steps: + # Circumventing this bug: https://github.com/flatpak/flatpak-builder/issues/317 - name: Remove stuck mounts run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* continue-on-error: true From b7cc89518861df16e84a9f81b636f7e347768143 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 14:53:59 +0000 Subject: [PATCH 06/26] Updated appdata [skip ci] --- net.retrodeck.retrodeck.appdata.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index 9445e34f..7010efb4 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -66,6 +66,20 @@ GPL-3.0 CC0-1.0 + + https://github.com/XargonWan/RetroDECK/releases/tag/0.6.3b + +
    +
  • Added support support for multiple file compression via CLI.
  • +
  • Added support support for multiple file compression in the Configurator.
  • +
  • Fixed some missing layout changes.
  • +
  • Removed the reset tools command.
  • +
  • Fixed a bug in the compression tool with certain filenames with spaces.
  • +
  • Fixed a manifest bug that caused a conflict between Dolphin and Primehack in certain scenarios.
  • +
  • Shipped a new configuration to account for the config format changes made by Yuzu and Citra in the latest updates.
  • +
+
+
https://github.com/XargonWan/RetroDECK/releases/tag/0.6.2b From 725f2f412cf560c857be5017e92df066b71f739b Mon Sep 17 00:00:00 2001 From: icenine451 Date: Tue, 21 Mar 2023 11:00:44 -0400 Subject: [PATCH 07/26] Fixed incorrect folder removal in Xemu init --- functions.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions.sh b/functions.sh index 557ebbca..292abc41 100644 --- a/functions.sh +++ b/functions.sh @@ -868,7 +868,7 @@ xemu_init() { echo "------------------------" mkdir -pv $rdhome/saves/xbox/xemu/ # removing config directory to wipe legacy files - rm -rf /var/config/xemu + rm -rf /var/data/xemu mkdir -pv /var/data/xemu/ cp -fv $emuconfigs/xemu.toml /var/data/xemu/xemu.toml sed -i 's#/home/deck/retrodeck#'$rdhome'#g' /var/data/xemu/xemu.toml From 9a88203aa0a6f225aa8199f455bc5c07226e76ad Mon Sep 17 00:00:00 2001 From: icenine451 Date: Tue, 21 Mar 2023 11:09:08 -0400 Subject: [PATCH 08/26] Update Xemu init function. --- functions.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/functions.sh b/functions.sh index 292abc41..028aeea0 100644 --- a/functions.sh +++ b/functions.sh @@ -868,10 +868,11 @@ xemu_init() { echo "------------------------" mkdir -pv $rdhome/saves/xbox/xemu/ # removing config directory to wipe legacy files + rm -rf /var/config/xemu rm -rf /var/data/xemu - mkdir -pv /var/data/xemu/ - cp -fv $emuconfigs/xemu.toml /var/data/xemu/xemu.toml - sed -i 's#/home/deck/retrodeck#'$rdhome'#g' /var/data/xemu/xemu.toml + dir_prep "/var/config/xemu" "/var/data/xemu" # Creating config folder in /var/config for consistentcy and linking back to original location where emulator will look + cp -fv $emuconfigs/xemu.toml /var/config/xemu/xemu.toml + sed -i 's#/home/deck/retrodeck#'$rdhome'#g' /var/config/xemu/xemu.toml # Preparing HD dummy Image if the image is not found if [ ! -f $rdhome/bios/xbox_hdd.qcow2 ] then From 872d2e65b788e7da8160aa9c5b56a189f9c1d8ab Mon Sep 17 00:00:00 2001 From: icenine451 Date: Tue, 21 Mar 2023 11:11:20 -0400 Subject: [PATCH 09/26] Add overwriting Citra/Yuzu config on update. --- post_update.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/post_update.sh b/post_update.sh index 8fac6ffe..86030eb2 100644 --- a/post_update.sh +++ b/post_update.sh @@ -203,12 +203,18 @@ post_update() { # In version 0.6.2b, the following changes were made that required config file updates/reset: # - Put Dolphin and Primehack save states in different folders inside $rd_home/states # - Fix symlink to hard-coded PICO-8 config folder (dir_prep doesn't like ~) + # - Overwrite Citra and Yuzu configs, as controller mapping was broken due to emulator updates. dir_prep "$rdhome/states/dolphin" "/var/data/dolphin-emu/StateSaves" dir_prep "$rdhome/states/primehack" "/var/data/primehack/StateSaves" rm -rf "$HOME/~/" # Remove old incorrect location from 0.6.2b dir_prep "$bios_folder/pico-8" "$HOME/.lexaloffle/pico-8" # Store binary and config files together. The .lexaloffle directory is a hard-coded location for the PICO-8 config file, cannot be changed + + cp -fv $emuconfigs/citra/qt-config.ini /var/config/citra-emu/qt-config.ini + sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/citra-emu/qt-config.ini + cp -fvr $emuconfigs/yuzu/* /var/config/yuzu/ + sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/yuzu/qt-config.ini fi # The following commands are run every time. From 53d09964e4edf19ba522c01652d57e62a73e2d6b Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 16:14:44 +0000 Subject: [PATCH 10/26] WF: tag releases as latest [skip ci] --- .github/workflows/cooker-selfhosted.yml | 3 ++- .github/workflows/main-selfhosted.yml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml index 33e2c18c..0dbf3ad4 100644 --- a/.github/workflows/cooker-selfhosted.yml +++ b/.github/workflows/cooker-selfhosted.yml @@ -81,7 +81,8 @@ jobs: artifacts: "RetroDECK.flatpak,RetroDECK-Artifact.tar.gz" allowUpdates: true #prerelease: true - draft: false + makeLatest: true + #draft: true token: ${{ secrets.TRIGGER_BUILD_TOKEN }} repo: RetroDECK-cooker continue-on-error: true diff --git a/.github/workflows/main-selfhosted.yml b/.github/workflows/main-selfhosted.yml index 7f16a70f..66738986 100644 --- a/.github/workflows/main-selfhosted.yml +++ b/.github/workflows/main-selfhosted.yml @@ -82,7 +82,8 @@ jobs: bodyFile: "body.md" artifacts: "RetroDECK.flatpak,RetroDECK-Artifact.tar.gz" allowUpdates: true - prerelease: true + #prerelease: true + makeLatest: true token: ${{ secrets.TRIGGER_BUILD_TOKEN }} repo: RetroDECK continue-on-error: true From c655a84a6bcda921359c39127e9ffc10650a27f8 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 16:54:37 +0000 Subject: [PATCH 11/26] Appdata: beatufied --- net.retrodeck.retrodeck.appdata.xml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index 7010efb4..0fb331e0 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -36,14 +36,15 @@ -

What is Retrodeck? - RetroDECK is an emulation and retro gaming solution to catalog and play your game collection directly from Linux in one unified application. +

What is Retrodeck?

+

RetroDECK is an emulation and retro gaming solution to catalog and play your game collection directly from Linux in one unified application. It's inspired by other embedded emulation systems like AmberELEC, EmuELEC, CoreELEC, Lakka, and Batocera. RetroDECK is powered by EmulationStation Desktop Edition, that uses RetroArch and other standalone emulators to allow you to import and play your favorite games in a tidy environment. No other software is needed as everything it's already included in one package!

BETA NOTICE: RetroDECK is still in Beta and the team is actively developing and adding more features.

About the Beta: - The primary focus during the beta period is on SteamOS and the Steam Deck but we hope to expand to more devices and general Linux desktop in the future (NOTE: It can be run on Linux desktop right now but there will be some manual configurations needed for input, storage location and other tiny hickups).

+ The primary focus during the beta period is on SteamOS and the Steam Deck but we hope to expand to more devices and general Linux desktop in the future

+

NOTE: It can be run on Linux desktop right now but there will be some manual configurations needed for input, storage location and other tiny hickups.

NOTE: Albeit RetroDECK could possibily work on every distro, it's supported only on Steam Deck.

INSTALLATION INSTRUCTIONS FOR THE STEAM DECK: @@ -54,13 +55,13 @@

  • 4. [OPTIONAL] Download Steam Grids graphics for RetroDECK with BoilR
  • -

    For more detailed information check our wiki: - https://github.com/XargonWan/RetroDECK/wiki

    -

    If you want to sponsor the project: - https://www.patreon.com/RetroDECK

    -

    If you want to join the RetroDECK community check our: - Discord: https://discord.gg/Dz3szYsP8g - Reddit: https://www.reddit.com/r/RetroDECK/

    +

    For more detailed information check our wiki:

    +

    https://github.com/XargonWan/RetroDECK/wiki

    +

    If you want to sponsor the project:

    +

    https://www.patreon.com/RetroDECK

    +

    If you want to join the RetroDECK community check our:

    +

    Discord: https://discord.gg/Dz3szYsP8g

    +

    Reddit: https://www.reddit.com/r/RetroDECK/

    If you want to help out with the project join the "i-want-to-help" channel on our Discord.

    GPL-3.0 From b30a03d7a501843a3b6faaa2de822b97e2f832ac Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 16:54:51 +0000 Subject: [PATCH 12/26] Appdata: beatufied [skip ci] --- net.retrodeck.retrodeck.appdata.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index 0fb331e0..4d8cf718 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -489,4 +489,4 @@
    - \ No newline at end of file + From 1beb92465b340628122fd58be24e963c498e0ef6 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 17:10:00 +0000 Subject: [PATCH 13/26] Appdata: updated [skip ci] --- net.retrodeck.retrodeck.appdata.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index 4d8cf718..b0c007cf 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -45,7 +45,6 @@

    About the Beta: The primary focus during the beta period is on SteamOS and the Steam Deck but we hope to expand to more devices and general Linux desktop in the future

    NOTE: It can be run on Linux desktop right now but there will be some manual configurations needed for input, storage location and other tiny hickups.

    -

    NOTE: Albeit RetroDECK could possibily work on every distro, it's supported only on Steam Deck.

    INSTALLATION INSTRUCTIONS FOR THE STEAM DECK:

      From 682e62f7517866dc17168ce33cd3d4ab014decb2 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 21 Mar 2023 20:01:40 +0100 Subject: [PATCH 14/26] CITRA: removed fullscreen --- es-configs/es_systems.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/es-configs/es_systems.xml b/es-configs/es_systems.xml index f48f4f24..8597d371 100644 --- a/es-configs/es_systems.xml +++ b/es-configs/es_systems.xml @@ -824,7 +824,7 @@ Nintendo 3DS %ROMPATH%/n3ds .3ds .3DS .3dsx .3DSX .app .APP .axf .AXF .cci .CCI .cxi .CXI .elf .ELF .7z .7Z .zip .ZIP - %EMULATOR_CITRA% -f %ROM% + %EMULATOR_CITRA% %ROM% %EMULATOR_RETROARCH% -L %CORE_RETROARCH%/citra_libretro.so %ROM% %EMULATOR_RETROARCH% -L %CORE_RETROARCH%/citra2018_libretro.so %ROM% n3ds @@ -1619,4 +1619,4 @@ tools tools - \ No newline at end of file + From 5f6339e4e5088b465fe1332d76b9882778401347 Mon Sep 17 00:00:00 2001 From: icenine451 Date: Tue, 21 Mar 2023 15:08:08 -0400 Subject: [PATCH 15/26] Fix broken Configurator location --- es-configs/es_systems.xml | 2 +- es-configs/tools-gamelist.xml | 2 +- net.retrodeck.retrodeck.yml | 11 ++++++----- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/es-configs/es_systems.xml b/es-configs/es_systems.xml index f48f4f24..e590f709 100644 --- a/es-configs/es_systems.xml +++ b/es-configs/es_systems.xml @@ -1613,7 +1613,7 @@ tools RetroDECK Tools - /var/config/retrodeck/tools + /app/bin/tools .sh .SH bash %ROM% tools diff --git a/es-configs/tools-gamelist.xml b/es-configs/tools-gamelist.xml index 3e2cad3c..c1a8f052 100644 --- a/es-configs/tools-gamelist.xml +++ b/es-configs/tools-gamelist.xml @@ -1,7 +1,7 @@ - /app/bin/configurator.sh + ./configurator.sh RetroDECK Configurator Change settings, move folders and more! true diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 5321750e..492dc8b8 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1061,14 +1061,15 @@ modules: - cp -f res/splash.svg ${FLATPAK_DEST}/emulationstation/graphics/splash-orig.svg - cp -f res/icon.svg /app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg - # Tools - - mv -f es-configs/tools-gamelist.xml ${FLATPAK_DEST}/retrodeck/ - - # Launchable scripts + # RetroDECK core script - cp retrodeck.sh /app/bin/retrodeck.sh - chmod +x /app/bin/retrodeck.sh - - cp tools/configurator.sh /app/bin/configurator.sh + + # Tools + - mkdir -p /app/bin/tools + - cp tools/configurator.sh /app/bin/tools/configurator.sh - chmod +x /app/bin/configurator.sh + - cp es-configs/tools-gamelist.xml /app/bin/tools/tools-gamelist.xml # Function libraries - mkdir -p /app/libexec From bee35c1458d36aa3b7ff02ea50401d9e04296384 Mon Sep 17 00:00:00 2001 From: icenine451 Date: Tue, 21 Mar 2023 16:00:30 -0400 Subject: [PATCH 16/26] Fix issue found where sed doesn't like ~ --- emu-configs/PCSX2-QT/PCSX2.ini | 10 ++++----- emu-configs/PCSX2/PCSX2.ini | 10 ++++----- emu-configs/PCSX2/PCSX2_ui.ini | 10 ++++----- emu-configs/dolphin/Dolphin.ini | 10 ++++----- emu-configs/melonDS.ini | 10 ++++----- emu-configs/retroarch/retroarch.cfg | 6 +++--- functions.sh | 32 ++++++++++++++--------------- post_update.sh | 4 ++-- rd-submodules/retroarch | 2 +- 9 files changed, 47 insertions(+), 47 deletions(-) diff --git a/emu-configs/PCSX2-QT/PCSX2.ini b/emu-configs/PCSX2-QT/PCSX2.ini index 63e59b0e..5ed8407b 100644 --- a/emu-configs/PCSX2-QT/PCSX2.ini +++ b/emu-configs/PCSX2-QT/PCSX2.ini @@ -14,11 +14,11 @@ Theme = darkfusion [Folders] -Bios = ~/retrodeck/roms/bios -Snapshots = ~/retrodeck/screenshots -Savestates = ~/retrodeck/states/ps2/pcsx2 -MemoryCards = ~/retrodeck/saves/ps2/memcards -Logs = ~/retrodeck/.logs +Bios = RETRODECKHOMEDIR/roms/bios +Snapshots = RETRODECKHOMEDIR/screenshots +Savestates = RETRODECKHOMEDIR/states/ps2/pcsx2 +MemoryCards = RETRODECKHOMEDIR/saves/ps2/memcards +Logs = RETRODECKHOMEDIR/.logs Cheats = /var/config/PCSX2/cheats CheatsWS = /var/config/PCSX2/cheats_ws CheatsNI = cheats_ni diff --git a/emu-configs/PCSX2/PCSX2.ini b/emu-configs/PCSX2/PCSX2.ini index 56981725..e1d8bec8 100644 --- a/emu-configs/PCSX2/PCSX2.ini +++ b/emu-configs/PCSX2/PCSX2.ini @@ -296,10 +296,10 @@ Multitap2_Slot4_Filename = Mcd-Multitap2-Slot04.ps2 [Folders] -Bios = ~/retrodeck/bios -Snapshots = ~/retrodeck/screenshots -SaveStates = ~/retrodeck/states/ps2/pcsx2 -MemoryCards = ~/retrodeck/saves/ps2/pcsx2/memcards +Bios = RETRODECKHOMEDIR/bios +Snapshots = RETRODECKHOMEDIR/screenshots +SaveStates = RETRODECKHOMEDIR/states/ps2/pcsx2 +MemoryCards = RETRODECKHOMEDIR/saves/ps2/pcsx2/memcards Logs = logs Cheats = cheats CheatsWS = cheats_ws @@ -447,4 +447,4 @@ PressureModifier = 0.500000 [GameList] -RecursivePaths = ~/retrodeck/roms/ps2 \ No newline at end of file +RecursivePaths = RETRODECKHOMEDIR/roms/ps2 \ No newline at end of file diff --git a/emu-configs/PCSX2/PCSX2_ui.ini b/emu-configs/PCSX2/PCSX2_ui.ini index 14214053..8f9a5a8d 100644 --- a/emu-configs/PCSX2/PCSX2_ui.ini +++ b/emu-configs/PCSX2/PCSX2_ui.ini @@ -40,11 +40,11 @@ UseDefaultLangs=enabled UseDefaultCheats=enabled UseDefaultCheatsWS=enabled UseDefaultTextures=enabled -Bios=~/retrodeck/roms/bios -Snapshots=~/retrodeck/screenshots -Savestates=~/retrodeck/states/ps2/pcsx2 -MemoryCards=~/retrodeck/saves/ps2/memcards -Logs=~/retrodeck/.logs +Bios=RETRODECKHOMEDIR/roms/bios +Snapshots=RETRODECKHOMEDIR/screenshots +Savestates=RETRODECKHOMEDIR/states/ps2/pcsx2 +MemoryCards=RETRODECKHOMEDIR/saves/ps2/memcards +Logs=RETRODECKHOMEDIR/.logs Langs=/app/share/PCSX2/resources/locale Cheats=/var/config/PCSX2/cheats CheatsWS=/var/config/PCSX2/cheats_ws diff --git a/emu-configs/dolphin/Dolphin.ini b/emu-configs/dolphin/Dolphin.ini index bfa1e7c2..f6111c44 100644 --- a/emu-configs/dolphin/Dolphin.ini +++ b/emu-configs/dolphin/Dolphin.ini @@ -24,19 +24,19 @@ DSPHLE = True Fullscreen = True DisableScreenSaver = True [GBA] -BIOS = ~/retrodeck/bios +BIOS = RETRODECKHOMEDIR/bios Rom1 = Rom2 = Rom3 = Rom4 = SavesInRomPath = False -SavesPath = ~/retrodeck/saves/gba +SavesPath = RETRODECKHOMEDIR/saves/gba Threads = True [General] -ISOPath0 = ~/retrodeck/roms/wii -ISOPath1 = ~/retrodeck/roms/gc +ISOPath0 = RETRODECKHOMEDIR/roms/wii +ISOPath1 = RETRODECKHOMEDIR/roms/gc ISOPaths = 2 -WiiSDCardPath = ~/retrodeck/saves/wii/dolphin/sd.raw +WiiSDCardPath = RETRODECKHOMEDIR/saves/wii/dolphin/sd.raw WirelessMac = 00:17:ab:83:9b:d4 HotkeysRequireFocus = True RecursiveISOPaths = True diff --git a/emu-configs/melonDS.ini b/emu-configs/melonDS.ini index b1443132..e43cde93 100644 --- a/emu-configs/melonDS.ini +++ b/emu-configs/melonDS.ini @@ -75,9 +75,9 @@ JIT_BranchOptimisations=1 JIT_LiteralOptimisations=1 JIT_FastMemory=1 ExternalBIOSEnable=1 -BIOS9Path=~/retrodeck/bios/bios9.bin -BIOS7Path=~/retrodeck/bios/bios7.bin -FirmwarePath=~/retrodeck/bios/firmware.bin +BIOS9Path=RETRODECKHOMEDIR/bios/bios9.bin +BIOS7Path=RETRODECKHOMEDIR/bios/bios7.bin +FirmwarePath=RETRODECKHOMEDIR/bios/firmware.bin DSiBIOS9Path= DSiBIOS7Path= DSiFirmwarePath= @@ -123,8 +123,8 @@ RecentROM_6= RecentROM_7= RecentROM_8= RecentROM_9= -SaveFilePath=~/retrodeck/saves/nds/melonds -SavestatePath=~/retrodeck/states/nds/melonds +SaveFilePath=RETRODECKHOMEDIR/saves/nds/melonds +SavestatePath=RETRODECKHOMEDIR/states/nds/melonds CheatFilePath= EnableCheats=0 MouseHide=0 diff --git a/emu-configs/retroarch/retroarch.cfg b/emu-configs/retroarch/retroarch.cfg index 7ee4f8e2..78a223f0 100644 --- a/emu-configs/retroarch/retroarch.cfg +++ b/emu-configs/retroarch/retroarch.cfg @@ -3036,12 +3036,12 @@ run_ahead_hide_warnings = "false" run_ahead_secondary_instance = "true" runtime_log_directory = "default" save_file_compression = "false" -savefile_directory = "~/retrodeck/saves" +savefile_directory = "RETRODECKHOMEDIR/saves" savefiles_in_content_dir = "false" savestate_auto_index = "false" savestate_auto_load = "true" savestate_auto_save = "true" -savestate_directory = "~/retrodeck/states" +savestate_directory = "RETRODECKHOMEDIR/states" savestate_file_compression = "true" savestate_max_keep = "0" savestate_thumbnail_enable = "false" @@ -3049,7 +3049,7 @@ savestates_in_content_dir = "false" scan_without_core_match = "false" screen_brightness = "100" screen_orientation = "0" -screenshot_directory = "~/retrodeck/screenshots" +screenshot_directory = "RETRODECKHOMEDIR/screenshots" screenshots_in_content_dir = "false" settings_show_accessibility = "true" settings_show_achievements = "true" diff --git a/functions.sh b/functions.sh index 028aeea0..59f3a22a 100644 --- a/functions.sh +++ b/functions.sh @@ -763,7 +763,7 @@ yuzu_init() { rm -rf /var/config/yuzu mkdir -pv /var/config/yuzu/ cp -fvr $emuconfigs/yuzu/* /var/config/yuzu/ - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/yuzu/qt-config.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/yuzu/qt-config.ini dir_prep "$rdhome/screenshots" "/var/data/yuzu/screenshots" } @@ -775,7 +775,7 @@ dolphin_init() { rm -rf /var/config/dolphin-emu mkdir -pv /var/config/dolphin-emu/ cp -fvr "$emuconfigs/dolphin/"* /var/config/dolphin-emu/ - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/dolphin-emu/Dolphin.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/dolphin-emu/Dolphin.ini dir_prep "$rdhome/saves/gc/dolphin/EUR" "/var/data/dolphin-emu/GC/EUR" dir_prep "$rdhome/saves/gc/dolphin/USA" "/var/data/dolphin-emu/GC/USA" dir_prep "$rdhome/saves/gc/dolphin/JAP" "/var/data/dolphin-emu/GC/JAP" @@ -793,7 +793,7 @@ primehack_init() { rm -rf /var/config/primehack mkdir -pv /var/config/primehack/ cp -fvr "$emuconfigs/primehack/"* /var/config/primehack/ - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/primehack/Dolphin.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/primehack/Dolphin.ini dir_prep "$rdhome/saves/gc/primehack/EUR" "/var/data/primehack/GC/EUR" dir_prep "$rdhome/saves/gc/primehack/USA" "/var/data/primehack/GC/USA" dir_prep "$rdhome/saves/gc/primehack/JAP" "/var/data/primehack/GC/JAP" @@ -813,8 +813,8 @@ pcsx2_init() { mkdir -pv "$rdhome/saves/ps2/pcsx2/memcards" mkdir -pv "$rdhome/states/ps2/pcsx2" cp -fvr $emuconfigs/PCSX2/* /var/config/PCSX2/inis/ - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/PCSX2/inis/PCSX2_ui.ini - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/PCSX2/inis/PCSX2.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/PCSX2/inis/PCSX2_ui.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/PCSX2/inis/PCSX2.ini #dir_prep "$rdhome/states/ps2/pcsx2" "/var/config/PCSX2/sstates" #dir_prep "$rdhome/screenshots" "/var/config/PCSX2/snaps" #dir_prep "$rdhome/.logs" "/var/config/PCSX2/logs" @@ -832,8 +832,7 @@ melonds_init() { mkdir -pv "$rdhome/states/nds/melonds" dir_prep "$rdhome/bios" "/var/config/melonDS/bios" cp -fvr $emuconfigs/melonDS.ini /var/config/melonDS/ - # Replace ~/retrodeck with $rdhome as ~ cannot be understood by MelonDS - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/melonDS/melonDS.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/melonDS/melonDS.ini } citra_init() { @@ -848,7 +847,7 @@ citra_init() { dir_prep "$rdhome/bios/citra/sysdata" "/var/data/citra-emu/sysdata" dir_prep "$rdhome/.logs/citra" "/var/data/citra-emu/log" cp -fv $emuconfigs/citra/qt-config.ini /var/config/citra-emu/qt-config.ini - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/citra-emu/qt-config.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/citra-emu/qt-config.ini } rpcs3_init() { @@ -953,7 +952,7 @@ ra_init() { mkdir -pv /var/config/retroarch/config/ cp -rf $emuconfigs/retroarch/core-overrides/* /var/config/retroarch/config #rm -rf $rdhome/bios/bios # in some situations a double bios symlink is created - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/retroarch/retroarch.cfg + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/retroarch/retroarch.cfg # PPSSPP echo "--------------------------------" @@ -1054,6 +1053,7 @@ emulators_post_move() { dir_prep "$rdhome/bios" "/var/config/retroarch/system" dir_prep "$rdhome/.logs/retroarch" "/var/config/retroarch/logs" dir_prep "$rdhome/shaders/retroarch" "/var/config/retroarch/shaders" + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/retroarch/retroarch.cfg # Yuzu section dir_prep "$rdhome/bios/switch/keys" "/var/data/yuzu/keys" @@ -1062,10 +1062,10 @@ emulators_post_move() { dir_prep "$rdhome/saves/switch/yuzu/sdmc" "/var/data/yuzu/sdmc" dir_prep "$rdhome/.logs/yuzu" "/var/data/yuzu/log" dir_prep "$rdhome/screenshots" "/var/data/yuzu/screenshots" - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/yuzu/qt-config.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/yuzu/qt-config.ini # Dolphin section - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/dolphin-emu/Dolphin.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/dolphin-emu/Dolphin.ini dir_prep "$rdhome/saves/gc/dolphin/EUR" "/var/data/dolphin-emu/GC/EUR" dir_prep "$rdhome/saves/gc/dolphin/USA" "/var/data/dolphin-emu/GC/USA" dir_prep "$rdhome/saves/gc/dolphin/JAP" "/var/data/dolphin-emu/GC/JAP" @@ -1074,7 +1074,7 @@ emulators_post_move() { dir_prep "$rdhome/saves/wii/dolphin" "/var/data/dolphin-emu/Wii/" # Primehack section - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/primehack/Dolphin.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/primehack/Dolphin.ini dir_prep "$rdhome/saves/gc/primehack/EUR" "/var/data/primehack/GC/EUR" dir_prep "$rdhome/saves/gc/primehack/USA" "/var/data/primehack/GC/USA" dir_prep "$rdhome/saves/gc/primehack/JAP" "/var/data/primehack/GC/JAP" @@ -1083,17 +1083,17 @@ emulators_post_move() { dir_prep "$rdhome/saves/wii/primehack" "/var/data/primehack/Wii/" # PCSX2 section - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/PCSX2/inis/PCSX2_ui.ini - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/PCSX2/inis/PCSX2.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/PCSX2/inis/PCSX2_ui.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/PCSX2/inis/PCSX2.ini # MelonDS section dir_prep "$rdhome/bios" "/var/config/melonDS/bios" - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/melonDS/melonDS.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/melonDS/melonDS.ini # Citra section dir_prep "$rdhome/bios/citra/sysdata" "/var/data/citra-emu/sysdata" dir_prep "$rdhome/.logs/citra" "/var/data/citra-emu/log" - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/citra-emu/qt-config.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/citra-emu/qt-config.ini # RPCS3 section sed -i 's#/home/deck/retrodeck#'$rdhome'#g' /var/config/rpcs3/vfs.yml diff --git a/post_update.sh b/post_update.sh index 86030eb2..02423e11 100644 --- a/post_update.sh +++ b/post_update.sh @@ -212,9 +212,9 @@ post_update() { dir_prep "$bios_folder/pico-8" "$HOME/.lexaloffle/pico-8" # Store binary and config files together. The .lexaloffle directory is a hard-coded location for the PICO-8 config file, cannot be changed cp -fv $emuconfigs/citra/qt-config.ini /var/config/citra-emu/qt-config.ini - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/citra-emu/qt-config.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/citra-emu/qt-config.ini cp -fvr $emuconfigs/yuzu/* /var/config/yuzu/ - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/yuzu/qt-config.ini + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/yuzu/qt-config.ini fi # The following commands are run every time. diff --git a/rd-submodules/retroarch b/rd-submodules/retroarch index 717b7809..0b1cfb79 160000 --- a/rd-submodules/retroarch +++ b/rd-submodules/retroarch @@ -1 +1 @@ -Subproject commit 717b78093797270877ec416e58082f1c71d435d8 +Subproject commit 0b1cfb79e591e10488a3262d6b38db843c39a409 From 0536dc3fc56d8032739db3146506b4029d714deb Mon Sep 17 00:00:00 2001 From: icenine451 Date: Tue, 21 Mar 2023 19:25:24 -0400 Subject: [PATCH 17/26] Actually fix Configurator location --- es-configs/es_systems.xml | 2 +- net.retrodeck.retrodeck.yml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/es-configs/es_systems.xml b/es-configs/es_systems.xml index 556dbc00..84a91903 100644 --- a/es-configs/es_systems.xml +++ b/es-configs/es_systems.xml @@ -1613,7 +1613,7 @@ tools RetroDECK Tools - /app/bin/tools + /app/tools .sh .SH bash %ROM% tools diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 492dc8b8..f301f96b 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1066,10 +1066,10 @@ modules: - chmod +x /app/bin/retrodeck.sh # Tools - - mkdir -p /app/bin/tools - - cp tools/configurator.sh /app/bin/tools/configurator.sh - - chmod +x /app/bin/configurator.sh - - cp es-configs/tools-gamelist.xml /app/bin/tools/tools-gamelist.xml + - mkdir -p /app/tools + - cp tools/configurator.sh /app/tools/configurator.sh + - chmod +x /app/tools/configurator.sh + - cp es-configs/tools-gamelist.xml /app/tools/tools-gamelist.xml # Function libraries - mkdir -p /app/libexec From 7233f96c19d314e9381100e3c3b34c0103cf74cc Mon Sep 17 00:00:00 2001 From: icenine451 Date: Wed, 22 Mar 2023 08:32:21 -0400 Subject: [PATCH 18/26] Update Configurator location for CLI launch --- retrodeck.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/retrodeck.sh b/retrodeck.sh index 27af932c..5cc14430 100644 --- a/retrodeck.sh +++ b/retrodeck.sh @@ -45,7 +45,7 @@ https://retrodeck.net exit ;; --configurator*) - sh /app/bin/configurator.sh + sh /app/tools/configurator.sh exit ;; --reset-emulator*) From 4c2b74ecdb97766f021cd3cd6e5778163017522f Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 22 Mar 2023 12:35:43 +0000 Subject: [PATCH 19/26] CITRA and YUZU: whoops --- emu-configs/citra/qt-config.ini | 8 ++++---- emu-configs/yuzu/qt-config.ini | 8 ++++---- net.retrodeck.retrodeck.appdata.xml | 2 +- rd-submodules/retroarch | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/emu-configs/citra/qt-config.ini b/emu-configs/citra/qt-config.ini index 3efd3d21..62fbaa7c 100644 --- a/emu-configs/citra/qt-config.ini +++ b/emu-configs/citra/qt-config.ini @@ -104,9 +104,9 @@ use_cpu_jit=true use_cpu_jit\default=true [Data%20Storage] -nand_directory=~retrodeck/saves/n3ds/citra/nand/ +nand_directory=RETRODECKHOMEDIR/saves/n3ds/citra/nand/ nand_directory\default=false -sdmc_directory=~retrodeck/saves/n3ds/citra/sdmc/ +sdmc_directory=RETRODECKHOMEDIR/saves/n3ds/citra/sdmc/ sdmc_directory\default=false use_custom_storage=true use_custom_storage\default=false @@ -335,7 +335,7 @@ Paths\gamedirs\3\deep_scan=false Paths\gamedirs\3\deep_scan\default=true Paths\gamedirs\3\expanded=true Paths\gamedirs\3\expanded\default=true -Paths\gamedirs\3\path=~retrodeck/roms/n3ds +Paths\gamedirs\3\path=RETRODECKHOMEDIR/roms/n3ds Paths\gamedirs\size=3 Paths\language=en Paths\language\default=false @@ -343,7 +343,7 @@ Paths\moviePlaybackPath= Paths\movieRecordPath= Paths\recentFiles=@Invalid() Paths\romsPath= -Paths\screenshotPath=~retrodeck/screenshots +Paths\screenshotPath=RETRODECKHOMEDIR/screenshots Paths\screenshotPath\default=false Paths\symbolsPath= Paths\videoDumpingPath= diff --git a/emu-configs/yuzu/qt-config.ini b/emu-configs/yuzu/qt-config.ini index 76f79f3c..355cdcf8 100644 --- a/emu-configs/yuzu/qt-config.ini +++ b/emu-configs/yuzu/qt-config.ini @@ -815,9 +815,9 @@ gamecard_path= gamecard_path\default=true load_directory=/var/data/yuzu/load load_directory\default=true -nand_directory=~retrodeck/saves/switch/yuzu/nand +nand_directory=RETRODECKHOMEDIR/saves/switch/yuzu/nand nand_directory\default=true -sdmc_directory=~retrodeck/saves/switch/yuzu/sdmc +sdmc_directory=RETRODECKHOMEDIR/saves/switch/yuzu/sdmc sdmc_directory\default=true tas_directory=/var/data/yuzu/tas tas_directory\default=true @@ -995,7 +995,7 @@ Paths\gamedirs\4\deep_scan=false Paths\gamedirs\4\deep_scan\default=true Paths\gamedirs\4\expanded=true Paths\gamedirs\4\expanded\default=true -Paths\gamedirs\4\path=~retrodeck/roms/switch +Paths\gamedirs\4\path=RETRODECKHOMEDIR/roms/switch Paths\gamedirs\size=4 Paths\language=en Paths\language\default=false @@ -1004,7 +1004,7 @@ Paths\romsPath= Paths\symbolsPath= Screenshots\enable_screenshot_save_as=true Screenshots\enable_screenshot_save_as\default=true -Screenshots\screenshot_path=~retrodeck/screenshots/ +Screenshots\screenshot_path=RETRODECKHOMEDIR/screenshots/ Shortcuts\Main%20Window\Audio%20Mute\Unmute\Context=1 Shortcuts\Main%20Window\Audio%20Mute\Unmute\Context\default=true Shortcuts\Main%20Window\Audio%20Mute\Unmute\Controller_KeySeq=Home+Dpad_Right diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index b0c007cf..67284209 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -66,7 +66,7 @@ GPL-3.0 CC0-1.0 - + https://github.com/XargonWan/RetroDECK/releases/tag/0.6.3b
        diff --git a/rd-submodules/retroarch b/rd-submodules/retroarch index 0b1cfb79..717b7809 160000 --- a/rd-submodules/retroarch +++ b/rd-submodules/retroarch @@ -1 +1 @@ -Subproject commit 0b1cfb79e591e10488a3262d6b38db843c39a409 +Subproject commit 717b78093797270877ec416e58082f1c71d435d8 From 699f653e8902a38340780704eea0e13894cc967a Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 22 Mar 2023 13:01:22 +0000 Subject: [PATCH 20/26] CITRA: fixed hotkeys --- emu-configs/citra/qt-config.ini | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/emu-configs/citra/qt-config.ini b/emu-configs/citra/qt-config.ini index 62fbaa7c..f0c98ac9 100644 --- a/emu-configs/citra/qt-config.ini +++ b/emu-configs/citra/qt-config.ini @@ -369,8 +369,8 @@ Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq=- Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq\default=true Shortcuts\Main%20Window\Exit%20Citra\Context=1 Shortcuts\Main%20Window\Exit%20Citra\Context\default=true -Shortcuts\Main%20Window\Exit%20Citra\KeySeq=T -Shortcuts\Main%20Window\Exit%20Citra\KeySeq\default=false +Shortcuts\Main%20Window\Exit%20Citra\KeySeq=Ctrl+Q +Shortcuts\Main%20Window\Exit%20Citra\KeySeq\default=true Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1 Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq=Y @@ -425,8 +425,8 @@ Shortcuts\Main%20Window\Stop%20Emulation\KeySeq=F5 Shortcuts\Main%20Window\Stop%20Emulation\KeySeq\default=true Shortcuts\Main%20Window\Swap%20Screens\Context=1 Shortcuts\Main%20Window\Swap%20Screens\Context\default=true -Shortcuts\Main%20Window\Swap%20Screens\KeySeq=F9 -Shortcuts\Main%20Window\Swap%20Screens\KeySeq\default=true +Shortcuts\Main%20Window\Swap%20Screens\KeySeq=T +Shortcuts\Main%20Window\Swap%20Screens\KeySeq\default=false Shortcuts\Main%20Window\Toggle%203D\Context=2 Shortcuts\Main%20Window\Toggle%203D\Context\default=true Shortcuts\Main%20Window\Toggle%203D\KeySeq=Ctrl+3 From 5ab04cdeeb3d9ba5cf228a850a00f4aad7e2973c Mon Sep 17 00:00:00 2001 From: icenine451 Date: Wed, 22 Mar 2023 12:41:26 -0400 Subject: [PATCH 21/26] - Removed "reset tools" options as those are now in RO space - Fixed recursive symlink possibility for pico-8 setup - Fixed BIOS check tool variable name - Fixed tools gamelist dest file name --- functions.sh | 10 ---------- net.retrodeck.retrodeck.yml | 2 +- post_update.sh | 2 +- rd-submodules/retroarch | 2 +- retrodeck.sh | 13 ------------- tools/configurator.sh | 15 ++++----------- 6 files changed, 7 insertions(+), 37 deletions(-) diff --git a/functions.sh b/functions.sh index 59f3a22a..33f6f270 100644 --- a/functions.sh +++ b/functions.sh @@ -1033,15 +1033,6 @@ cli_emulator_reset() { esac } -tools_init() { - rm -rfv /var/config/retrodeck/tools/ - mkdir -pv /var/config/retrodeck/tools/ - cp -rfv /app/retrodeck/tools/* /var/config/retrodeck/tools/ - mkdir -pv /var/config/emulationstation/.emulationstation/custom_systems/tools/ - rm -rfv /var/config/retrodeck/tools/gamelist.xml - cp -fv /app/retrodeck/tools-gamelist.xml /var/config/retrodeck/tools/gamelist.xml -} - emulators_post_move() { # This script will redo the symlinks for all emulators after moving the $rdhome location without resetting other options # FUTURE WORK: The sed commands here should be replaced with set_setting_value and dir_prep should be replaced with changing paths in config files directly where possible @@ -1321,7 +1312,6 @@ finit() { ( ra_init standalones_init - tools_init ) | zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index f301f96b..7fd6917c 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1069,7 +1069,7 @@ modules: - mkdir -p /app/tools - cp tools/configurator.sh /app/tools/configurator.sh - chmod +x /app/tools/configurator.sh - - cp es-configs/tools-gamelist.xml /app/tools/tools-gamelist.xml + - cp es-configs/tools-gamelist.xml /app/tools/gamelist.xml # Function libraries - mkdir -p /app/libexec diff --git a/post_update.sh b/post_update.sh index 02423e11..2b3176cf 100644 --- a/post_update.sh +++ b/post_update.sh @@ -209,6 +209,7 @@ post_update() { dir_prep "$rdhome/states/primehack" "/var/data/primehack/StateSaves" rm -rf "$HOME/~/" # Remove old incorrect location from 0.6.2b + rm -f "$HOME/.lexaloffle/pico-8" # Remove old symlink to prevent recursion dir_prep "$bios_folder/pico-8" "$HOME/.lexaloffle/pico-8" # Store binary and config files together. The .lexaloffle directory is a hard-coded location for the PICO-8 config file, cannot be changed cp -fv $emuconfigs/citra/qt-config.ini /var/config/citra-emu/qt-config.ini @@ -219,7 +220,6 @@ post_update() { # The following commands are run every time. - tools_init update_rd_conf ) | zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \ diff --git a/rd-submodules/retroarch b/rd-submodules/retroarch index 717b7809..0b1cfb79 160000 --- a/rd-submodules/retroarch +++ b/rd-submodules/retroarch @@ -1 +1 @@ -Subproject commit 717b78093797270877ec416e58082f1c71d435d8 +Subproject commit 0b1cfb79e591e10488a3262d6b38db843c39a409 diff --git a/retrodeck.sh b/retrodeck.sh index 5cc14430..4de1c492 100644 --- a/retrodeck.sh +++ b/retrodeck.sh @@ -20,7 +20,6 @@ Arguments: --configurator Starts the RetroDECK Configurator --compress Compresses target file to .chd format. Supports .cue, .iso and .gdi formats --reset-emulator Reset one or more emulator configs to the default values - --reset-tools Reset the RetroDECK Tools section --reset-retrodeck Starts the initial RetroDECK installer (backup your data first!) For flatpak run specific options please run: flatpak run -h @@ -67,18 +66,6 @@ https://retrodeck.net exit fi ;; - --reset-tools*) - echo "You are about to reset the RetroDECK tools." - read -p "Enter 'y' to continue, 'n' to stop: " response - if [[ $response == [yY] ]]; then - tools_init - read -p "The process has been completed, press Enter key to start RetroDECK." - shift # Continue launch after previous command is finished - else - read -p "The process has been cancelled, press Enter key to exit." - exit - fi - ;; --reset-retrodeck*) echo "You are about to reset RetroDECK completely!" read -p "Enter 'y' to continue, 'n' to stop: " response diff --git a/tools/configurator.sh b/tools/configurator.sh index 9e90a15e..8cd6a7ad 100644 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -50,7 +50,6 @@ source /app/libexec/functions.sh # - Reset XEMU # - Reset Yuzu # - Reset All Emulators -# - Reset Tools # - Reset All # Code for the menus should be put in reverse order, so functions for sub-menus exists before it is called by the parent menu @@ -63,7 +62,6 @@ configurator_reset_dialog() { --column="Choice" --column="Action" \ "Reset Specific Emulator" "Reset only one specific emulator to default settings" \ "Reset All Emulators" "Reset all emulators to default settings" \ - "Reset Tools" "Reset Tools menu entries" \ "Reset All" "Reset RetroDECK to default settings" ) case $choice in @@ -156,11 +154,6 @@ configurator_reset_dialog() { configurator_process_complete_dialog "resetting all emulators" ;; -"Reset Tools" ) - tools_init - configurator_process_complete_dialog "resetting the tools menu" -;; - "Reset All" ) zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ @@ -558,11 +551,11 @@ configurator_check_bios_files_basic() { do bios_file_found="No" bios_hash_matched="No" - if [[ -f "$bios_dir/$bios_subdir$bios_file" ]]; then + if [[ -f "$bios_folder/$bios_subdir$bios_file" ]]; then bios_file_found="Yes" if [[ $bios_hash == "Unknown" ]]; then bios_hash_matched="Unknown" - elif [[ $(md5sum "$bios_dir/$bios_subdir$bios_file" | awk '{ print $1 }') == "$bios_hash" ]]; then + elif [[ $(md5sum "$bios_folder/$bios_subdir$bios_file" | awk '{ print $1 }') == "$bios_hash" ]]; then bios_hash_matched="Yes" fi fi @@ -585,11 +578,11 @@ configurator_check_bios_files_advanced() { do bios_file_found="No" bios_hash_matched="No" - if [[ -f "$bios_dir/$bios_subdir$bios_file" ]]; then + if [[ -f "$bios_folder/$bios_subdir$bios_file" ]]; then bios_file_found="Yes" if [[ $bios_hash == "Unknown" ]]; then bios_hash_matched="Unknown" - elif [[ $(md5sum "$bios_dir/$bios_subdir$bios_file" | awk '{ print $1 }') == "$bios_hash" ]]; then + elif [[ $(md5sum "$bios_folder/$bios_subdir$bios_file" | awk '{ print $1 }') == "$bios_hash" ]]; then bios_hash_matched="Yes" fi fi From f9d29fc6fcf2f73ede714d907a6ca08eb5b6f72c Mon Sep 17 00:00:00 2001 From: icenine451 Date: Wed, 22 Mar 2023 14:42:06 -0400 Subject: [PATCH 22/26] Removed unneeded /var/config/retrodeck/tools dir --- functions.sh | 3 --- post_update.sh | 3 +++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/functions.sh b/functions.sh index 33f6f270..04c93eb9 100644 --- a/functions.sh +++ b/functions.sh @@ -1278,15 +1278,12 @@ finit() { # Recreating the folder rm -rfv /var/config/emulationstation/ - rm -rfv /var/config/retrodeck/tools/ mkdir -pv /var/config/emulationstation/ # Initializing ES-DE # TODO: after the next update of ES-DE this will not be needed - let's test it emulationstation --home /var/config/emulationstation --create-system-dirs - mkdir -pv /var/config/retrodeck/tools/ - #zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --title "RetroDECK" --text="RetroDECK will now install the needed files.\nPlease wait up to one minute,\nanother message will notify when the process will be finished.\n\nPress OK to continue." # Initializing ROMs folder - Original in retrodeck home (or SD Card) diff --git a/post_update.sh b/post_update.sh index 2b3176cf..fb7e27e7 100644 --- a/post_update.sh +++ b/post_update.sh @@ -216,6 +216,9 @@ post_update() { sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/citra-emu/qt-config.ini cp -fvr $emuconfigs/yuzu/* /var/config/yuzu/ sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/yuzu/qt-config.ini + + # Remove unneeded tools folder, as location has changed to RO space + rm -rfv /var/config/retrodeck/tools/ fi # The following commands are run every time. From 2cac775b7c77b3276dfdda2da55e066617f3516d Mon Sep 17 00:00:00 2001 From: icenine451 Date: Wed, 22 Mar 2023 16:40:37 -0400 Subject: [PATCH 23/26] Fixed bug in dir_prep that made recursive symlinks --- functions.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/functions.sh b/functions.sh index 04c93eb9..1bd13cf1 100644 --- a/functions.sh +++ b/functions.sh @@ -705,6 +705,13 @@ dir_prep() { echo -e "\n[DIR PREP]\nMoving $symlink in $real" #DEBUG + # if the symlink dir is already a symlink, unlink it first, to prevent recursion + if [ -L "$symlink" ]; + then + echo "$symlink is already a symlink, unlinking to prevent recursives" #DEBUG + unlink "$symlink" + fi + # if the dest dir exists we want to backup it if [ -d "$symlink" ]; then @@ -715,6 +722,7 @@ dir_prep() { # if the real dir is already a symlink, unlink it first if [ -L "$real" ]; then + echo "$real is already a symlink, unlinking to prevent recursives" #DEBUG unlink "$real" fi From 1025f1f98ca07e89ed3ce3135824ad604e1737b1 Mon Sep 17 00:00:00 2001 From: icenine451 Date: Wed, 22 Mar 2023 16:43:10 -0400 Subject: [PATCH 24/26] PICO-8 saves symlink was backwards --- functions.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions.sh b/functions.sh index 1bd13cf1..a60da8bc 100644 --- a/functions.sh +++ b/functions.sh @@ -1312,7 +1312,7 @@ finit() { # PICO-8 dir_prep "$bios_folder/pico-8" "$HOME/.lexaloffle/pico-8" # Store binary and config files together. The .lexaloffle directory is a hard-coded location for the PICO-8 config file, cannot be changed dir_prep "$roms_folder/pico8" "$bios_folder/pico-8/carts" # Symlink default game location to RD roms for cleanliness (this location is overridden anyway by the --root_path launch argument anyway) - dir_prep "$bios_folder/pico-8/cdata" "$saves_folder/pico-8" # PICO-8 saves folder + dir_prep "$saves_folder/pico-8" "$bios_folder/pico-8/cdata" # PICO-8 saves folder ( ra_init From 5de3e6db6bc15930aa54d00e5b10483ff840b878 Mon Sep 17 00:00:00 2001 From: icenine451 Date: Wed, 22 Mar 2023 16:45:43 -0400 Subject: [PATCH 25/26] Fixing backwards PICO-8 saves at update --- post_update.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/post_update.sh b/post_update.sh index fb7e27e7..8b79912c 100644 --- a/post_update.sh +++ b/post_update.sh @@ -211,6 +211,7 @@ post_update() { rm -rf "$HOME/~/" # Remove old incorrect location from 0.6.2b rm -f "$HOME/.lexaloffle/pico-8" # Remove old symlink to prevent recursion dir_prep "$bios_folder/pico-8" "$HOME/.lexaloffle/pico-8" # Store binary and config files together. The .lexaloffle directory is a hard-coded location for the PICO-8 config file, cannot be changed + dir_prep "$saves_folder/pico-8" "$bios_folder/pico-8/cdata" # PICO-8 saves folder structure was backwards, fixing for consistency. cp -fv $emuconfigs/citra/qt-config.ini /var/config/citra-emu/qt-config.ini sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' /var/config/citra-emu/qt-config.ini From 51b03094b57bc1913b66b1a92feeb29f9c9a7326 Mon Sep 17 00:00:00 2001 From: icenine451 Date: Thu, 23 Mar 2023 12:38:19 -0400 Subject: [PATCH 26/26] Add reset confirmations to Configurator, Change location of some menu items. --- functions.sh | 14 ++++ tools/configurator.sh | 147 ++++++++++++++++++++++++++++++------------ 2 files changed, 120 insertions(+), 41 deletions(-) diff --git a/functions.sh b/functions.sh index a60da8bc..2b8509b5 100644 --- a/functions.sh +++ b/functions.sh @@ -1378,4 +1378,18 @@ configurator_destination_choice_dialog() { --text="$2") echo $choice +} + +configurator_reset_confirmation_dialog() { + # This dialog provides a confirmation for any reset functions, before the reset is actually performed. + # USAGE: $(configurator_reset_confirmation_dialog "emulator being reset" "action text") + # This function will return a "true" if the user clicks Confirm, and "false" if they click Cancel. + choice=$(zenity --title "RetroDECK Configurator Utility - Reset $1" --question --no-wrap --cancel-label="Cancel" --ok-label="Confirm" \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --text="$2") + if [[ $? == "0" ]]; then + echo "true" + else + echo "false" + fi } \ No newline at end of file diff --git a/tools/configurator.sh b/tools/configurator.sh index 8cd6a7ad..bdbb6e4b 100644 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -62,7 +62,7 @@ configurator_reset_dialog() { --column="Choice" --column="Action" \ "Reset Specific Emulator" "Reset only one specific emulator to default settings" \ "Reset All Emulators" "Reset all emulators to default settings" \ - "Reset All" "Reset RetroDECK to default settings" ) + "Reset RetroDECK" "Reset RetroDECK to default settings" ) case $choice in @@ -87,58 +87,113 @@ configurator_reset_dialog() { case $emulator_to_reset in "RetroArch" ) - ra_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "RetroArch" "Are you sure you want to reset the RetroArch emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + ra_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "Citra" ) - citra_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "Citra" "Are you sure you want to reset the Citra emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + citra_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "Dolphin" ) - dolphin_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "Dolphin" "Are you sure you want to reset the Dolphin emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + dolphin_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "Duckstation" ) - duckstation_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "Duckstation" "Are you sure you want to reset the Duckstation emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + duckstation_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "MelonDS" ) - melonds_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "MelonDS" "Are you sure you want to reset the MelonDS emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + melonds_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "PCSX2" ) - pcsx2_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "PCSX2" "Are you sure you want to reset the PCSX2 emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + pcsx2_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "PPSSPP" ) - ppssppsdl_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "PPSSPP" "Are you sure you want to reset the PPSSPP emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + ppssppsdl_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "Primehack" ) - primehack_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "Primehack" "Are you sure you want to reset the Primehack emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + primehack_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "RPCS3" ) - rpcs3_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "RPCS3" "Are you sure you want to reset the RPCS3 emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + rpcs3_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "XEMU" ) - xemu_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "XEMU" "Are you sure you want to reset the XEMU emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + xemu_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "Yuzu" ) - yuzu_init - configurator_process_complete_dialog "resetting $emulator_to_reset" + if [[ $(configurator_reset_confirmation_dialog "Yuzu" "Are you sure you want to reset the Yuzu emulator to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + yuzu_init + configurator_process_complete_dialog "resetting $emulator_to_reset" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "" ) # No selection made or Back button clicked @@ -149,19 +204,29 @@ configurator_reset_dialog() { ;; "Reset All Emulators" ) - ra_init - standalones_init - configurator_process_complete_dialog "resetting all emulators" + if [[ $(configurator_reset_confirmation_dialog "all emulators" "Are you sure you want to reset all emulators to default settings?\n\nThis process cannot be undone.") == "true" ]]; then + ra_init + standalones_init + configurator_process_complete_dialog "resetting all emulators" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; -"Reset All" ) - zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ - --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ - --title "RetroDECK Configurator Utility - Reset RetroDECK" \ - --text="You are resetting RetroDECK to its default state.\n\nAfter the process is complete you will need to exit RetroDECK and run it again, where you will go through the initial setup process." - rm -f "$lockfile" - rm -f "$rd_conf" - configurator_process_complete_dialog "resetting RetroDECK" +"Reset RetroDECK" ) + if [[ $(configurator_reset_confirmation_dialog "RetroDECK" "Are you sure you want to reset RetroDECK entirely?\n\nThis process cannot be undone.") == "true" ]]; then + zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --title "RetroDECK Configurator Utility - Reset RetroDECK" \ + --text="You are resetting RetroDECK to its default state.\n\nAfter the process is complete you will need to exit RetroDECK and run it again, where you will go through the initial setup process." + rm -f "$lockfile" + rm -f "$rd_conf" + configurator_process_complete_dialog "resetting RetroDECK" + else + configurator_generic_dialog "Reset process cancelled." + configurator_reset_dialog + fi ;; "" ) # No selection made or Back button clicked @@ -605,6 +670,7 @@ configurator_troubleshooting_tools_dialog() { choice=$(zenity --list --title="RetroDECK Configurator Utility - Change Options" --cancel-label="Back" \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \ --column="Choice" --column="Action" \ + "Move RetroDECK" "Move RetroDECK files between internal/SD card or to a custom location" \ "Multi-file game structure check" "Verify the proper structure of multi-file or multi-disc games" \ "Basic BIOS file check" "Show a list of systems that BIOS files are found for" \ "Advanced BIOS file check" "Show advanced information about common BIOS files" \ @@ -612,6 +678,11 @@ configurator_troubleshooting_tools_dialog() { case $choice in + "Move RetroDECK" ) + configurator_generic_dialog "This option will move the RetroDECK data folder (ROMs, saves, BIOS etc.) to a new location.\n\nPlease choose where to move the RetroDECK data folder." + configurator_move_dialog + ;; + "Multi-file game structure check" ) configurator_check_multifile_game_structure ;; @@ -793,19 +864,13 @@ configurator_welcome_dialog() { choice=$(zenity --list --title="RetroDECK Configurator Utility" --cancel-label="Quit" \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \ --column="Choice" --column="Action" \ - "Move RetroDECK" "Move RetroDECK files between internal/SD card or to a custom location" \ "RetroArch Presets" "Change RetroArch presets, log into RetroAchievements etc." \ "Emulator Options" "Launch and configure each emulators settings (for advanced users)" \ - "Tools and Troubleshooting" "Run RetroDECK troubleshooting tools for common issues" \ + "Tools and Troubleshooting" "Move RetroDECK to a new location, compress games and perform basic troubleshooting" \ "Reset" "Reset specific parts or all of RetroDECK" ) case $choice in - "Move RetroDECK" ) - configurator_generic_dialog "This option will move the RetroDECK data folder (ROMs, saves, BIOS etc.) to a new location.\n\nPlease choose where to move the RetroDECK data folder." - configurator_move_dialog - ;; - "RetroArch Presets" ) configurator_retroarch_options_dialog ;;