From f1657ba737631fef402c899b3c6d62532db196a1 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 16 Jan 2024 14:08:12 +0100 Subject: [PATCH 01/45] RYUJINX: re-added --- net.retrodeck.retrodeck.yml | 17 +++++++++++++++++ old/removed-modules.yml | 19 +------------------ 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 62c2b843..1cd5586f 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1334,6 +1334,23 @@ modules: # MAME - End + # Ryujinx Appimage - START + # https://ryujinx.org/download + + - name: Ryujinx + buildsystem: simple + build-commands: + - | + tar -zxvf ryujinx-1.1.685-linux_x64.tar.gz + mv -v publish ${FLATPAK_DEST}/ryujinx + ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx + sources: + - type: file + url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1111/ryujinx-1.1.1111-linux_x64.tar.gz + sha256: 612dd28c38e5f8657da0f1b3f54385ffbb304053bca7c9d8de027242b0c9f946 + + # Ryujinx Appimage - END + # External manifests end - name: retrodeck diff --git a/old/removed-modules.yml b/old/removed-modules.yml index 43d5cab3..04274441 100644 --- a/old/removed-modules.yml +++ b/old/removed-modules.yml @@ -112,24 +112,7 @@ # Duckstation-DontUpdate - END - # Ryujinx Appimage - START - # https://ryujinx.org/download - - # - name: Ryujinx - # buildsystem: simple - # build-commands: - # - | - # tar -zxvf ryujinx-1.1.685-linux_x64.tar.gz - # mv -v publish ${FLATPAK_DEST}/ryujinx - # ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx - # sources: - # - type: file - # url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.685/ryujinx-1.1.685-linux_x64.tar.gz - # sha256: bc4d7076106d7aa59c3a3ea22b83c553e5fa1a897815831adcf18cc13d729e15 - - # Ryujinx Appimage - END - - # Ryujinx - START + # Ryujinx - START # https://github.com/flathub/org.ryujinx.Ryujinx - name: Ryujinx From 56edb70232f0411dd0bf3274a32bef56f3c41970 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 17 Jan 2024 08:27:05 +0100 Subject: [PATCH 02/45] RYUJINX: fixed wrong tar command --- 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 1cd5586f..6dfd2de5 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1341,7 +1341,7 @@ modules: buildsystem: simple build-commands: - | - tar -zxvf ryujinx-1.1.685-linux_x64.tar.gz + tar -zxvf ryujinx-*-linux_x64.tar.gz mv -v publish ${FLATPAK_DEST}/ryujinx ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx sources: From b46fd7d26f13272a90535cd6cd198a3727feaa5b Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 30 Jan 2024 14:52:22 +0100 Subject: [PATCH 03/45] RYUJINX: updated --- net.retrodeck.retrodeck.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 125b31ba..34e15200 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1316,13 +1316,13 @@ modules: buildsystem: simple build-commands: - | - tar -zxvf ryujinx-*-linux_x64.tar.gz + tar -zxvf *.tar.gz mv -v publish ${FLATPAK_DEST}/ryujinx ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx sources: - type: file - url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1111/ryujinx-1.1.1111-linux_x64.tar.gz - sha256: 612dd28c38e5f8657da0f1b3f54385ffbb304053bca7c9d8de027242b0c9f946 + url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1151/ryujinx-1.1.1151-linux_x64.tar.gz + sha256: 34ac1d2fae46dc63cf7bdd0dfd9c819e6a4efec9aba35ee4d0f98fce63e49faa # Ryujinx Appimage - END From d00ab922feb26e2c2c71599b2189e048fa383232 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 5 Feb 2024 09:35:56 +0100 Subject: [PATCH 04/45] RYUJINX: updated to 1.1.1159 --- net.retrodeck.retrodeck.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 34e15200..27b52a61 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1321,8 +1321,8 @@ modules: ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx sources: - type: file - url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1151/ryujinx-1.1.1151-linux_x64.tar.gz - sha256: 34ac1d2fae46dc63cf7bdd0dfd9c819e6a4efec9aba35ee4d0f98fce63e49faa + url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1159/ryujinx-1.1.1159-linux_x64.tar.gz + sha256: 5f2354ae6b1c982f4f2ea4734c1320ce32dca2badb8c1f6e4216353f54faaa94 # Ryujinx Appimage - END From c9f62cddb3e61c89b0f3ef619f606b300f3f74e5 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 13 Feb 2024 11:10:10 +0100 Subject: [PATCH 05/45] RYUJINX: updated --- 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 27b52a61..d799f3a3 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1321,7 +1321,7 @@ modules: ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx sources: - type: file - url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1159/ryujinx-1.1.1159-linux_x64.tar.gz + url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1192/ryujinx-1.1.1192-linux_x64.tar.gz sha256: 5f2354ae6b1c982f4f2ea4734c1320ce32dca2badb8c1f6e4216353f54faaa94 # Ryujinx Appimage - END From 55c359987499b733e84042aeb147ebead4359e7a Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 13 Feb 2024 12:18:48 +0100 Subject: [PATCH 06/45] RYUJINX: fixed sha --- 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 d799f3a3..0062f4a5 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1322,7 +1322,7 @@ modules: sources: - type: file url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1192/ryujinx-1.1.1192-linux_x64.tar.gz - sha256: 5f2354ae6b1c982f4f2ea4734c1320ce32dca2badb8c1f6e4216353f54faaa94 + sha256: 41716233f5745a7df1e411af6bac9d828f0b6b6feb63b5ef87445b81b01dee54 # Ryujinx Appimage - END From 46b9922a98728006ceb46b547cb03e3cd517e7a2 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 14 Feb 2024 00:05:03 +0100 Subject: [PATCH 07/45] Triggering build From db3aab771fc25f67b824e7545dde797245636c49 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 14 Feb 2024 09:30:26 +0100 Subject: [PATCH 08/45] RYUJINX: added reset to cli and Configurator --- retrodeck.sh | 4 ++-- tools/configurator.sh | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/retrodeck.sh b/retrodeck.sh index edb0241a..e95920cc 100644 --- a/retrodeck.sh +++ b/retrodeck.sh @@ -57,9 +57,9 @@ https://retrodeck.net ;; --reset-component*) echo "You are about to reset one or more RetroDECK components or emulators." - echo "Available options are: es-de, retroarch, cemu, citra, dolphin, duckstation, melonds, pcsx3, pico8, ppsspp, primehack, rpcs3, xemu, yuzu, vita3k, mame, gzdoom, boilr, all" + echo "Available options are: es-de, retroarch, cemu, citra, dolphin, duckstation, melonds, pcsx3, pico8, ppsspp, primehack, rpcs3, ryujinx, xemu, yuzu, vita3k, mame, gzdoom, boilr, all" read -p "Please enter the component you would like to reset: " component - if [[ "$component" =~ ^(es-de | retroarch | cemu | citra | dolphin | duckstation | melonds | pcsx3 | pico8 | ppsspp | primehack | rpcs3 | xemu | yuzu | vita3k | mame | gzdoom | boilr | all)$ ]]; then + if [[ "$component" =~ ^(es-de | retroarch | cemu | citra | dolphin | duckstation | melonds | pcsx3 | pico8 | ppsspp | primehack | rpcs3 | ryujinx | xemu | yuzu | vita3k | mame | gzdoom | boilr | all)$ ]]; then read -p "You are about to reset $component to default settings. Enter 'y' to continue, 'n' to stop: " response if [[ $response == [yY] ]]; then prepare_component "reset" "$component" "cli" diff --git a/tools/configurator.sh b/tools/configurator.sh index 196befb2..fa86cc08 100644 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -1009,6 +1009,7 @@ configurator_reset_dialog() { "PPSSPP" "Reset the PSP emulator PPSSPP to default settings" \ "Primehack" "Reset the Metroid Prime emulator Primehack to default settings" \ "RPCS3" "Reset the PS3 emulator RPCS3 to default settings" \ + "Ryujinx" "Reset the Switch emulator Ryujinx to default settings" \ "Vita3k" "Reset the PS Vita emulator Vita3k to default settings" \ "XEMU" "Reset the XBOX emulator XEMU to default settings" \ "Yuzu" "Reset the Switch emulator Yuzu to default settings" ) From 29da4eef21c530ca50ca6e18c5d61b109aec4d89 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 14 Feb 2024 10:47:39 +0100 Subject: [PATCH 09/45] RYUJINX: fixed config file substitutions --- functions/prepare_component.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 510f2985..e8cac45c 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -549,14 +549,14 @@ prepare_component() { rm -rf "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" mkdir -p "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/system" cp -fv $emuconfigs/ryujinx/* "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" - sed -i 's#/home/deck/retrodeck#'$rdhome'#g' "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/Config.json" + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/Config.json" dir_prep "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" "/var/config/Ryujinx" else # removing config directory to wipe legacy files rm -rf /var/config/Ryujinx mkdir -p /var/config/Ryujinx/system cp -fv $emuconfigs/ryujinx/* /var/config/Ryujinx - sed -i 's#/home/deck/retrodeck#'$rdhome'#g' "$ryujinxconf" + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" fi fi if [[ "$action" == "reset" ]] || [[ "$action" == "postmove" ]]; then # Run commands that apply to both resets and moves From d1d0a938e3f13394ae35559fd2ecf8c64d5bc7e2 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 14 Feb 2024 10:47:55 +0100 Subject: [PATCH 10/45] RYUJINX: updated config file to version 49 --- emu-configs/ryujinx/Config.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/emu-configs/ryujinx/Config.json b/emu-configs/ryujinx/Config.json index e58b6ead..3c977be0 100644 --- a/emu-configs/ryujinx/Config.json +++ b/emu-configs/ryujinx/Config.json @@ -1,5 +1,5 @@ { - "version": 48, + "version": 49, "enable_file_log": true, "backend_threading": "Auto", "res_scale": 1, @@ -136,7 +136,7 @@ "enable_rumble": true }, "left_joycon": { - "button_minus": "Minus", + "button_minus": "Back", "button_l": "LeftShoulder", "button_zl": "LeftTrigger", "button_sl": "Unbound", @@ -147,7 +147,7 @@ "dpad_right": "DpadRight" }, "right_joycon": { - "button_plus": "Plus", + "button_plus": "Start", "button_r": "RightShoulder", "button_zr": "RightTrigger", "button_sl": "Unbound", @@ -166,6 +166,7 @@ ], "graphics_backend": "Vulkan", "preferred_gpu": "0x1002_0x163F", + "multiplayer_mode": 0, "multiplayer_lan_interface_id": "0", "use_hypervisor": true } From 4469e984c78f1c83aeeb84d97c44753166293c69 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 15 Feb 2024 09:34:27 +0100 Subject: [PATCH 11/45] RYUJINX: added a function to check for keys --- functions/functions.sh | 37 +++++++++++++++++++++++++++++++++++++ retrodeck.sh | 3 +++ 2 files changed, 40 insertions(+) diff --git a/functions/functions.sh b/functions/functions.sh index 98768855..5f66cbb5 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -559,6 +559,43 @@ easter_eggs() { cp -f "$new_splash_file" "$current_splash_file" # Deploy assigned splash screen } +manage_ryujinx_keys() { + # This function checks if Switch keys are existing and symlinks them inside the Ryujinx system folder + # If the symlinks are broken it recreates them + + echo "Checking Ryujinx Switch keys." #TODO logging + ryujinx_system="/var/config/Ryujinx/system" # Set the path to the Ryujinx system folder + # Check if the keys folder exists + if [ -d "$bios_folder/switch/keys" ]; then + # Check if there are files in the keys folder + if [ -n "$(find "$bios_folder/switch/keys" -maxdepth 1 -type f)" ]; then + # Iterate over each file in the keys folder + for file in "$bios_folder/switch/keys"/*; do + filename=$(basename "$file") + symlink="$ryujinx_system/$filename" + + # Check if the symlink exists and is valid + if [ -L "$symlink" ] && [ "$(readlink -f "$symlink")" = "$file" ]; then + echo "Found \"$symlink\" and it's a valid symlink." #TODO logging + continue # Skip if the symlink is already valid + fi + + # Remove broken symlink or non-symlink file + echo "Found \"$symlink\" but it's not a valid symlink. Repeiring it" #TODO logging + [ -e "$symlink" ] && rm "$symlink" + + # Create symlink + ln -s "$file" "$symlink" + echo "Created symlink: \"$symlink\"" + done + else + echo "No files found in $bios_folder/switch/keys. Continuing" #TODO logging + fi + else + echo "Directory $bios_folder/switch/keys does not exist. Maybe Ryujinx was never run. Continuing" #TODO logging + fi +} + quit_retrodeck() { pkill -f retrodeck pkill -f emulationstation diff --git a/retrodeck.sh b/retrodeck.sh index 97934a43..bc18205a 100644 --- a/retrodeck.sh +++ b/retrodeck.sh @@ -182,6 +182,9 @@ if [[ -f "$HOME/.steam/steam/controller_base/templates/RetroDECK_controller_conf fi # REMOVE BEFORE NEXT VERSION RELEASE +# Linking switch keys for Ryujinx +manage_ryujinx_keys + # Normal Startup start_retrodeck From cf5bd4019b51933c4162971df6f1edf86a0d161d Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 15 Feb 2024 09:40:04 +0100 Subject: [PATCH 12/45] RYUJINX: updated config --- emu-configs/ryujinx/Config.json | 212 +++++++++++++++++++++++++++++--- 1 file changed, 197 insertions(+), 15 deletions(-) diff --git a/emu-configs/ryujinx/Config.json b/emu-configs/ryujinx/Config.json index 3c977be0..630011ad 100644 --- a/emu-configs/ryujinx/Config.json +++ b/emu-configs/ryujinx/Config.json @@ -12,7 +12,7 @@ "graphics_shaders_dump_path": "", "logging_enable_debug": false, "logging_enable_stub": false, - "logging_enable_info": true, + "logging_enable_info": false, "logging_enable_warn": true, "logging_enable_error": true, "logging_enable_trace": false, @@ -91,13 +91,13 @@ "enable_keyboard": false, "enable_mouse": false, "hotkeys": { - "toggle_vsync": "F1", - "screenshot": "F8", - "show_ui": "F4", - "pause": "F5", - "toggle_mute": "F2", - "res_scale_up": "Unbound", - "res_scale_down": "Unbound", + "toggle_vsync": "Unknown", + "screenshot": "Unknown", + "show_ui": "F1", + "pause": "F4", + "toggle_mute": "Unknown", + "res_scale_up": "F7", + "res_scale_down": "F8", "volume_up": "Unbound", "volume_down": "Unbound" }, @@ -121,14 +121,78 @@ }, "deadzone_left": 0, "deadzone_right": 0, - "range_left": 1, + "range_left": 1.2, "range_right": 1, - "trigger_threshold": 0.5, + "trigger_threshold": 0, + "motion": { + "slot": 0, + "alt_slot": 0, + "mirror_input": false, + "dsu_server_host": "127.0.0.1", + "dsu_server_port": 26760, + "motion_backend": "CemuHook", + "sensitivity": 100, + "gyro_deadzone": 1, + "enable_motion": true + }, + "rumble": { + "strong_rumble": 2.1, + "weak_rumble": 1, + "enable_rumble": true + }, + "left_joycon": { + "button_minus": "Back", + "button_l": "LeftShoulder", + "button_zl": "LeftTrigger", + "button_sl": "Unbound", + "button_sr": "Unbound", + "dpad_up": "DpadUp", + "dpad_down": "DpadDown", + "dpad_left": "DpadLeft", + "dpad_right": "DpadRight" + }, + "right_joycon": { + "button_plus": "Start", + "button_r": "RightShoulder", + "button_zr": "RightTrigger", + "button_sl": "Unbound", + "button_sr": "Unbound", + "button_x": "Y", + "button_b": "A", + "button_y": "X", + "button_a": "B" + }, + "version": 1, + "backend": "GamepadSDL2", + "id": "0-f6790003-28de-0000-ff11-000001000000", + "controller_type": "ProController", + "player_index": "Player1" + }, + { + "left_joycon_stick": { + "joystick": "Left", + "invert_stick_x": false, + "invert_stick_y": false, + "rotate90_cw": false, + "stick_button": "LeftStick" + }, + "right_joycon_stick": { + "joystick": "Right", + "invert_stick_x": false, + "invert_stick_y": false, + "rotate90_cw": false, + "stick_button": "RightStick" + }, + "deadzone_left": 0, + "deadzone_right": 0, + "range_left": 1.2, + "range_right": 1, + "trigger_threshold": 0, "motion": { "motion_backend": "GamepadDriver", "sensitivity": 100, "gyro_deadzone": 1, - "enable_motion": true + "enable_motion": false }, "rumble": { "strong_rumble": 1, @@ -159,9 +223,127 @@ }, "version": 1, "backend": "GamepadSDL2", - "id": "0-f6790003-28de-0000-ff11-000001000000", - "controller_type": "Handheld", - "player_index": "Handheld" + "id": "1-00000003-28de-0000-ff11-000001000000", + "controller_type": "ProController", + "player_index": "Player2" + }, + { + "left_joycon_stick": { + "joystick": "Left", + "invert_stick_x": false, + "invert_stick_y": false, + "rotate90_cw": false, + "stick_button": "LeftStick" + }, + "right_joycon_stick": { + "joystick": "Right", + "invert_stick_x": false, + "invert_stick_y": false, + "rotate90_cw": false, + "stick_button": "RightStick" + }, + "deadzone_left": 0, + "deadzone_right": 0, + "range_left": 1.2, + "range_right": 1, + "trigger_threshold": 0, + "motion": { + "motion_backend": "GamepadDriver", + "sensitivity": 100, + "gyro_deadzone": 1, + "enable_motion": false + }, + "rumble": { + "strong_rumble": 1, + "weak_rumble": 1, + "enable_rumble": true + }, + "left_joycon": { + "button_minus": "Back", + "button_l": "LeftShoulder", + "button_zl": "LeftTrigger", + "button_sl": "Unbound", + "button_sr": "Unbound", + "dpad_up": "DpadUp", + "dpad_down": "DpadDown", + "dpad_left": "DpadLeft", + "dpad_right": "DpadRight" + }, + "right_joycon": { + "button_plus": "Start", + "button_r": "RightShoulder", + "button_zr": "RightTrigger", + "button_sl": "Unbound", + "button_sr": "Unbound", + "button_x": "Y", + "button_b": "A", + "button_y": "X", + "button_a": "B" + }, + "version": 1, + "backend": "GamepadSDL2", + "id": "2-00000003-28de-0000-ff11-000001000000", + "controller_type": "ProController", + "player_index": "Player3" + }, + { + "left_joycon_stick": { + "joystick": "Left", + "invert_stick_x": false, + "invert_stick_y": false, + "rotate90_cw": false, + "stick_button": "LeftStick" + }, + "right_joycon_stick": { + "joystick": "Right", + "invert_stick_x": false, + "invert_stick_y": false, + "rotate90_cw": false, + "stick_button": "RightStick" + }, + "deadzone_left": 0, + "deadzone_right": 0, + "range_left": 1.2, + "range_right": 1, + "trigger_threshold": 0, + "motion": { + "motion_backend": "GamepadDriver", + "sensitivity": 100, + "gyro_deadzone": 1, + "enable_motion": false + }, + "rumble": { + "strong_rumble": 1, + "weak_rumble": 1, + "enable_rumble": true + }, + "left_joycon": { + "button_minus": "Back", + "button_l": "LeftShoulder", + "button_zl": "LeftTrigger", + "button_sl": "Unbound", + "button_sr": "Unbound", + "dpad_up": "DpadUp", + "dpad_down": "DpadDown", + "dpad_left": "DpadLeft", + "dpad_right": "DpadRight" + }, + "right_joycon": { + "button_plus": "Start", + "button_r": "RightShoulder", + "button_zr": "RightTrigger", + "button_sl": "Unbound", + "button_sr": "Unbound", + "button_x": "Y", + "button_b": "A", + "button_y": "X", + "button_a": "B" + }, + "version": 1, + "backend": "GamepadSDL2", + "id": "3-00000003-28de-0000-ff11-000001000000", + "controller_type": "ProController", + "player_index": "Player4" } ], "graphics_backend": "Vulkan", @@ -169,4 +351,4 @@ "multiplayer_mode": 0, "multiplayer_lan_interface_id": "0", "use_hypervisor": true -} +} \ No newline at end of file From ee664d7ac13fb31b3d5071c1eb168253168102fe Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 15 Feb 2024 13:59:21 +0100 Subject: [PATCH 13/45] RYUJINX: binary was symlinked instead of wrapper, fixed --- 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 50ff205c..406c4454 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1319,7 +1319,7 @@ modules: - | tar -zxvf *.tar.gz mv -v publish ${FLATPAK_DEST}/ryujinx - ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx + ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx.sh ${FLATPAK_DEST}/bin/Ryujinx sources: - type: file url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1192/ryujinx-1.1.1192-linux_x64.tar.gz From 483c7e4421f041cfe53217a3097a895b3f8e8dae Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 15 Feb 2024 14:00:30 +0100 Subject: [PATCH 14/45] RYUJINX: binary was symlinked instead of wrapper, fixed -fix --- 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 406c4454..824ca769 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1319,7 +1319,7 @@ modules: - | tar -zxvf *.tar.gz mv -v publish ${FLATPAK_DEST}/ryujinx - ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx.sh ${FLATPAK_DEST}/bin/Ryujinx + ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx.sh sources: - type: file url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1192/ryujinx-1.1.1192-linux_x64.tar.gz From 345acb94b1a4c25e0b99c500e725691076bb0925 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 15 Feb 2024 14:45:55 +0100 Subject: [PATCH 15/45] RYUJINX: removing keys folder symlinking --- functions/prepare_component.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index e8cac45c..4ea009c0 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -559,9 +559,9 @@ prepare_component() { sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" fi fi - if [[ "$action" == "reset" ]] || [[ "$action" == "postmove" ]]; then # Run commands that apply to both resets and moves - dir_prep "$bios_folder/switch/keys" "/var/config/Ryujinx/system" - fi + # if [[ "$action" == "reset" ]] || [[ "$action" == "postmove" ]]; then # Run commands that apply to both resets and moves + # dir_prep "$bios_folder/switch/keys" "/var/config/Ryujinx/system" + # fi if [[ "$action" == "postmove" ]]; then # Run only post-move commands sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" # This is an unfortunate one-off because set_setting_value does not currently support JSON fi From 4c7c30f46796c8c4d707fb6c2c32a3e88f408b35 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 15 Feb 2024 14:48:51 +0100 Subject: [PATCH 16/45] RYUJINX: removing keys folder symlinking --- functions/prepare_component.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 4ea009c0..42905a09 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -547,14 +547,14 @@ prepare_component() { echo "------------------------" if [[ $multi_user_mode == "true" ]]; then rm -rf "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" - mkdir -p "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/system" + #mkdir -p "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/system" cp -fv $emuconfigs/ryujinx/* "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/Config.json" dir_prep "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" "/var/config/Ryujinx" else # removing config directory to wipe legacy files rm -rf /var/config/Ryujinx - mkdir -p /var/config/Ryujinx/system + #mkdir -p /var/config/Ryujinx/system cp -fv $emuconfigs/ryujinx/* /var/config/Ryujinx sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" fi From c0ffc1ae52e51c04acafbb5bb053950c90496793 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 15 Feb 2024 15:46:50 +0100 Subject: [PATCH 17/45] Triggering build From 534084b59cd37c119c5568c196d64a2169a66fe2 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 19 Feb 2024 16:24:48 +0100 Subject: [PATCH 18/45] ES-DE: changed branch in manifest --- 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 5d895820..5e5aba2e 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -419,7 +419,7 @@ modules: sources: - type: git url: https://github.com/XargonWan/RetroDECK-ES-DE - branch: cebbeff3b5f834fd9adaeb1f5dc9e0da6b106599 + branch: update/3.0 - type: shell commands: - sed -i 's#"EMULATIONSTATION-DE V" + Utils::String::toUpper(PROGRAM_VERSION_STRING)#"RetroDECK From 8541752e2ece326e610cde9532227634aa8a311b Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 20 Feb 2024 08:50:54 +0100 Subject: [PATCH 19/45] ES-DE: fixed systems path from unix to linux --- net.retrodeck.retrodeck.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 5e5aba2e..d95c2908 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -407,7 +407,7 @@ modules: - '*.la' # When updating this module remember to check those: - # https://gitlab.com/es-de/emulationstation-de/-/blob/[VERSION]/resources/systems/unix/es_find_rules.xml + # https://gitlab.com/es-de/emulationstation-de/-/blob/[VERSION]/resources/systems/linux/es_find_rules.xml # But we don't include them 1:1 as RetroDECK got some specific configs in some cases - name: ES-DE buildsystem: cmake-ninja @@ -1302,10 +1302,10 @@ modules: - mkdir -p ${FLATPAK_DEST}/retrodeck # Prep the ES-DE and RetroArch config files - I will have to SED/XMLSTARLET them soon - - rm -rf /app/share/emulationstation/resources/systems/unix/es_find_rules.xml - - cp es-configs/es_find_rules.xml /app/share/emulationstation/resources/systems/unix/ - - rm -rf /app/share/emulationstation/resources/systems/unix/es_systems.xml - - cp es-configs/es_systems.xml /app/share/emulationstation/resources/systems/unix/ + - rm -rf /app/share/emulationstation/resources/systems/linux/es_find_rules.xml + - cp es-configs/es_find_rules.xml /app/share/emulationstation/resources/systems/linux/ + - rm -rf /app/share/emulationstation/resources/systems/linux/es_systems.xml + - cp es-configs/es_systems.xml /app/share/emulationstation/resources/systems/linux/ # These must be put in home folder, managed by retrodeck.sh - cp es-configs/es_settings.xml ${FLATPAK_DEST}/retrodeck/es_settings.xml - mv -f -t ${FLATPAK_DEST}/retrodeck es-configs/rd_prepacks From 8fec21f9ad5c7421c408a232f333255d1a969526 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 20 Feb 2024 21:18:29 +0100 Subject: [PATCH 20/45] ES-DE: updating paths to es-de folder --- functions/global.sh | 2 +- net.retrodeck.retrodeck.yml | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/functions/global.sh b/functions/global.sh index b71b1b3e..60f7a966 100644 --- a/functions/global.sh +++ b/functions/global.sh @@ -29,7 +29,7 @@ splashscreen_dir="/var/config/emulationstation/ES-DE/resources/graphics/extra_sp current_splash_file="/var/config/emulationstation/ES-DE/resources/graphics/splash.svg" # The active splash file that will be shown on boot default_splash_file="/var/config/emulationstation/ES-DE/resources/graphics/splash-orig.svg" # The default RetroDECK splash screen multi_user_emulator_config_dirs="$emuconfigs/defaults/retrodeck/reference_lists/multi_user_emulator_config_dirs.cfg" # A list of emulator config folders that can be safely linked/unlinked entirely in multi-user mode -rd_es_themes="/app/share/emulationstation/themes" # The directory where themes packaged with RetroDECK are stored +rd_es_themes="/app/share/es-de/themes" # The directory where themes packaged with RetroDECK are stored lockfile="/var/config/retrodeck/.lock" # where the lockfile is located default_sd="/run/media/mmcblk0p1" # Steam Deck SD default path hard_version="$(cat '/app/retrodeck/version')" # hardcoded version (in the readonly filesystem) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index d95c2908..c330496a 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -433,8 +433,8 @@ modules: - name: art-book-next-es-de buildsystem: simple build-commands: - - mkdir -p ${FLATPAK_DEST}/share/emulationstation/themes/art-book-next-es-de/ - - mv -f * ${FLATPAK_DEST}/share/emulationstation/themes/art-book-next-es-de/ + - mkdir -p ${FLATPAK_DEST}/share/es-de/themes/art-book-next-es-de/ + - mv -f * ${FLATPAK_DEST}/share/es-de/themes/art-book-next-es-de/ sources: - type: git url: https://github.com/anthonycaccese/art-book-next-es-de.git @@ -1302,16 +1302,16 @@ modules: - mkdir -p ${FLATPAK_DEST}/retrodeck # Prep the ES-DE and RetroArch config files - I will have to SED/XMLSTARLET them soon - - rm -rf /app/share/emulationstation/resources/systems/linux/es_find_rules.xml - - cp es-configs/es_find_rules.xml /app/share/emulationstation/resources/systems/linux/ - - rm -rf /app/share/emulationstation/resources/systems/linux/es_systems.xml - - cp es-configs/es_systems.xml /app/share/emulationstation/resources/systems/linux/ + - rm -rf /app/share/es-de/resources/systems/linux/es_find_rules.xml + - cp es-configs/es_find_rules.xml /app/share/es-de/resources/systems/linux/ + - rm -rf /app/share/es-de/resources/systems/linux/es_systems.xml + - cp es-configs/es_systems.xml /app/share/es-de/resources/systems/linux/ # These must be put in home folder, managed by retrodeck.sh - cp es-configs/es_settings.xml ${FLATPAK_DEST}/retrodeck/es_settings.xml - mv -f -t ${FLATPAK_DEST}/retrodeck es-configs/rd_prepacks # Logo, res, move graphics directory away from default location so splash can be changed after build - - mv -f -t ${FLATPAK_DEST}/retrodeck /app/share/emulationstation/resources/graphics + - mv -f -t ${FLATPAK_DEST}/retrodeck /app/share/es-de/resources/graphics - cp -f res/splash.svg ${FLATPAK_DEST}/retrodeck/graphics/splash.svg - cp -f res/splash.svg ${FLATPAK_DEST}/retrodeck/graphics/splash-orig.svg - cp -rf res/extra_splashes/ ${FLATPAK_DEST}/retrodeck/graphics From eb126928910e67d201ac138b38eed436180475e3 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 21 Feb 2024 10:00:52 +0100 Subject: [PATCH 21/45] ES-DE: changing more paths --- es-configs/es_settings.xml | 2 +- functions/050_save_migration.sh | 6 +- functions/functions.sh | 14 +-- functions/global.sh | 8 +- functions/post_update.sh | 6 +- functions/prepare_component.sh | 12 +-- net.retrodeck.retrodeck.yml | 4 - rd-submodules/es-de/GuiMenu.cpp.patch | 38 ------- rd-submodules/es-de/GuiMenu.h.patch | 10 -- .../es-de/GuiThemeDownloader.cpp.patch | 10 -- rd-submodules/es-de/ViewController.cpp.patch | 101 ------------------ rd-submodules/es-de/Window.cpp.patch | 9 -- rd-submodules/es-de/patch_helper.sh | 31 ------ tools/configurator.sh | 2 +- 14 files changed, 26 insertions(+), 227 deletions(-) delete mode 100644 rd-submodules/es-de/GuiMenu.cpp.patch delete mode 100644 rd-submodules/es-de/GuiMenu.h.patch delete mode 100644 rd-submodules/es-de/GuiThemeDownloader.cpp.patch delete mode 100644 rd-submodules/es-de/ViewController.cpp.patch delete mode 100644 rd-submodules/es-de/Window.cpp.patch delete mode 100755 rd-submodules/es-de/patch_helper.sh diff --git a/es-configs/es_settings.xml b/es-configs/es_settings.xml index cad78b67..117f1800 100644 --- a/es-configs/es_settings.xml +++ b/es-configs/es_settings.xml @@ -145,7 +145,7 @@ - + diff --git a/functions/050_save_migration.sh b/functions/050_save_migration.sh index 41213705..786686fc 100644 --- a/functions/050_save_migration.sh +++ b/functions/050_save_migration.sh @@ -28,12 +28,12 @@ save_migration() { fi # Doing the dir prep as we don't know from which version we came - dir_prep "$media_folder" "/var/config/emulationstation/ES-DE/downloaded_media" - dir_prep "$themes_folder" "/var/config/emulationstation/ES-DE/themes" + dir_prep "$media_folder" "/var/config/es-de/ES-DE/downloaded_media" + dir_prep "$themes_folder" "/var/config/es-de/ES-DE/themes" mkdir -pv $rdhome/logs #this was added later, maybe safe to remove in a few versions # Resetting es_settings, now we need it but in the future I should think a better solution, maybe with sed - cp -fv /app/retrodeck/es_settings.xml /var/config/emulationstation/ES-DE/es_settings.xml + cp -fv /app/retrodeck/es_settings.xml /var/config/es-de/ES-DE/es_settings.xml # 0.4 -> 0.5 # Perform save and state migration if needed diff --git a/functions/functions.sh b/functions/functions.sh index a03d1e35..b5bf389d 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -486,9 +486,9 @@ install_retrodeck_starterpack() { ## DOOM section ## cp /app/retrodeck/extras/doom1.wad "$roms_folder/doom/doom1.wad" # No -f in case the user already has it - mkdir -p "/var/config/emulationstation/ES-DE/gamelists/doom" - if [[ ! -f "/var/config/emulationstation/ES-DE/gamelists/doom/gamelist.xml" ]]; then # Don't overwrite an existing gamelist - cp "/app/retrodeck/rd_prepacks/doom/gamelist.xml" "/var/config/emulationstation/ES-DE/gamelists/doom/gamelist.xml" + mkdir -p "/var/config/es-de/ES-DE/gamelists/doom" + if [[ ! -f "/var/config/es-de/ES-DE/gamelists/doom/gamelist.xml" ]]; then # Don't overwrite an existing gamelist + cp "/app/retrodeck/rd_prepacks/doom/gamelist.xml" "/var/config/es-de/ES-DE/gamelists/doom/gamelist.xml" fi mkdir -p "$media_folder/doom" unzip -oq "/app/retrodeck/rd_prepacks/doom/doom.zip" -d "$media_folder/doom/" @@ -519,8 +519,8 @@ update_splashscreens() { # This script will purge any existing ES graphics and reload them from RO space into somewhere ES will look for it # USAGE: update_splashscreens - rm -rf /var/config/emulationstation/ES-DE/resources/graphics - rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/emulationstation/ES-DE/resources/graphics/" + rm -rf /var/config/es-de/ES-DE/resources/graphics + rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/es-de/ES-DE/resources/graphics/" } deploy_helper_files() { @@ -564,12 +564,12 @@ easter_eggs() { quit_retrodeck() { pkill -f retrodeck - pkill -f emulationstation + pkill -f es-de } start_retrodeck() { easter_eggs # Check if today has a surprise splashscreen and load it if so # normal startup echo "Starting RetroDECK v$version" - emulationstation --home /var/config/emulationstation + es-de --home /var/config/es-de } diff --git a/functions/global.sh b/functions/global.sh index 60f7a966..9a6ba230 100644 --- a/functions/global.sh +++ b/functions/global.sh @@ -25,9 +25,9 @@ zip_compressable_extensions="$emuconfigs/defaults/retrodeck/reference_lists/zip_ easter_egg_checklist="$emuconfigs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg" # A config file listing days and times when special splash screens should show up input_validation="$emuconfigs/defaults/retrodeck/reference_lists/input_validation.cfg" # A config file listing valid CLI inputs finit_options_list="$emuconfigs/defaults/retrodeck/reference_lists/finit_options_list.cfg" # A config file listing available optional installs during finit -splashscreen_dir="/var/config/emulationstation/ES-DE/resources/graphics/extra_splashes" # The default location of extra splash screens -current_splash_file="/var/config/emulationstation/ES-DE/resources/graphics/splash.svg" # The active splash file that will be shown on boot -default_splash_file="/var/config/emulationstation/ES-DE/resources/graphics/splash-orig.svg" # The default RetroDECK splash screen +splashscreen_dir="/var/config/es-de/ES-DE/resources/graphics/extra_splashes" # The default location of extra splash screens +current_splash_file="/var/config/es-de/ES-DE/resources/graphics/splash.svg" # The active splash file that will be shown on boot +default_splash_file="/var/config/es-de/ES-DE/resources/graphics/splash-orig.svg" # The default RetroDECK splash screen multi_user_emulator_config_dirs="$emuconfigs/defaults/retrodeck/reference_lists/multi_user_emulator_config_dirs.cfg" # A list of emulator config folders that can be safely linked/unlinked entirely in multi-user mode rd_es_themes="/app/share/es-de/themes" # The directory where themes packaged with RetroDECK are stored lockfile="/var/config/retrodeck/.lock" # where the lockfile is located @@ -58,7 +58,7 @@ yuzuconf="/var/config/yuzu/qt-config.ini" # ES-DE config files -es_settings="/var/config/emulationstation/ES-DE/es_settings.xml" +es_settings="/var/config/es-de/ES-DE/es_settings.xml" # RetroArch config files diff --git a/functions/post_update.sh b/functions/post_update.sh index ec9acee5..2355807c 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -241,8 +241,10 @@ post_update() { # - Install RetroDECK controller profile in desired location TODO # - Change section name in retrodeck.cfg for ABXY button swap preset sed -i 's^nintendo_button_layout^abxy_button_swap^' "$rd_conf" # This is a one-off sed statement as there are no functions for replacing section names - mv -f /var/config/emulationstation/.emulationstation /var/config/emulationstation/ES-DE # in 3.0 .emulationstation was moved into ES-DE - ln -s /var/config/emulationstation/ES-DE /var/config/emulationstation/.emulationstation # symlinking it to mantain the compatibility # TODO: remove this symlink n 0.9.0b + # in 3.0 .emulationstation was moved into ES-DE + mv -f /var/config/es-de/ /var/config/es-de/ES-DE + mv -f /var/config/es-de/.emulationstation /var/config/es-de/ES-DE + ln -s /var/config/es-de/ES-DE /var/config/es-de/.emulationstation # symlinking it to mantain the compatibility # TODO: remove this symlink n 0.9.0b fi # if [[ $prev_version -le "090" ]]; then diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 206fc3dc..e09258d2 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -39,21 +39,21 @@ prepare_component() { if [[ "$component" =~ ^(es-de|ES-DE|all)$ ]]; then # For use after ESDE-related folders are moved or a reset if [[ "$action" == "reset" ]]; then - rm -rf /var/config/emulationstation/ - mkdir -p /var/config/emulationstation/ES-DE/ - cp -f /app/retrodeck/es_settings.xml /var/config/emulationstation/ES-DE/es_settings.xml + rm -rf /var/config/es-de/ + mkdir -p /var/config/es-de/ES-DE/ + cp -f /app/retrodeck/es_settings.xml /var/config/es-de/ES-DE/es_settings.xml set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings" set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings" set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings" - dir_prep "$rdhome/gamelists" "/var/config/emulationstation/ES-DE/gamelists" - emulationstation --home /var/config/emulationstation --create-system-dirs + dir_prep "$rdhome/gamelists" "/var/config/es-de/ES-DE/gamelists" + es-de --home /var/config/es-de --create-system-dirs update_splashscreens fi if [[ "$action" == "postmove" ]]; then set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings" set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings" set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings" - dir_prep "$rdhome/gamelists" "/var/config/emulationstation/ES-DE/gamelists" + dir_prep "$rdhome/gamelists" "/var/config/es-de/ES-DE/gamelists" fi fi diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index c330496a..ae428e37 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -421,10 +421,6 @@ modules: url: https://github.com/XargonWan/RetroDECK-ES-DE branch: update/3.0 - type: shell - commands: - - sed -i 's#"EMULATIONSTATION-DE V" + Utils::String::toUpper(PROGRAM_VERSION_STRING)#"RetroDECK - v'$(cat ${FLATPAK_DEST}/retrodeck/version)', ES-DE v" + Utils::String::toUpper(PROGRAM_VERSION_STRING)#g' - es-app/src/guis/GuiMenu.cpp # ES-DE - END diff --git a/rd-submodules/es-de/GuiMenu.cpp.patch b/rd-submodules/es-de/GuiMenu.cpp.patch deleted file mode 100644 index b0c035ea..00000000 --- a/rd-submodules/es-de/GuiMenu.cpp.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -au1r emulationstation-de/es-app/src/guis/GuiMenu.cpp emulationstation-de/es-app/src/guis/GuiMenu.cpp ---- emulationstation-de/es-app/src/guis/GuiMenu.cpp 2023-08-23 13:12:15.617292576 +0200 -+++ emulationstation-de/es-app/src/guis/GuiMenu.cpp 2023-08-23 13:44:10.736412006 +0200 -@@ -67,2 +67,4 @@ - -+ addEntry("RETRODECK CONFIGURATOR", mMenuColorPrimary, false, [this] { openRetroDeckConfigurator(); }); -+ - if (!Settings::getInstance()->getBool("ForceKiosk") && -@@ -70,3 +72,3 @@ - #if defined(__APPLE__) -- addEntry("QUIT EMULATIONSTATION", mMenuColorPrimary, false, [this] { openQuitMenu(); }); -+ addEntry("QUIT RETRODECK", mMenuColorPrimary, false, [this] { openQuitMenu(); }); - #else -@@ -75,3 +77,3 @@ - else -- addEntry("QUIT EMULATIONSTATION", mMenuColorPrimary, false, [this] { openQuitMenu(); }); -+ addEntry("QUIT RETRODECK", mMenuColorPrimary, false, [this] { openQuitMenu(); }); - #endif -@@ -1758,3 +1760,3 @@ - auto quitText = std::make_shared( -- "QUIT EMULATIONSTATION", Font::get(FONT_SIZE_MEDIUM), mMenuColorPrimary); -+ "QUIT RETRODECK", Font::get(FONT_SIZE_MEDIUM), mMenuColorPrimary); - quitText->setSelectable(true); -@@ -1910 +1912,14 @@ - } -+ -+void GuiMenu::openRetroDeckConfigurator() -+{ -+ // Launch the configurator.sh script -+ std::string command; -+ std::string startDirectory; -+ bool runInBackground; -+ command = "bash /app/tools/configurator.sh"; -+ startDirectory = "/app/tools"; -+ runInBackground = false; -+ int result = Utils::Platform::launchGameUnix(command, startDirectory, runInBackground); -+ // You can add any checks for the script's outcome here. -+} diff --git a/rd-submodules/es-de/GuiMenu.h.patch b/rd-submodules/es-de/GuiMenu.h.patch deleted file mode 100644 index 13a6b687..00000000 --- a/rd-submodules/es-de/GuiMenu.h.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -au1r emulationstation-de/es-app/src/guis/GuiMenu.h emulationstation-de/es-app/src/guis/GuiMenu.h ---- emulationstation-de/es-app/src/guis/GuiMenu.h 2023-08-23 13:12:15.617292576 +0200 -+++ emulationstation-de/es-app/src/guis/GuiMenu.h 2023-08-23 13:50:20.978700234 +0200 -@@ -46,2 +46,3 @@ - void openOtherOptions(); -+ void openRetroDeckConfigurator(); - void openQuitMenu(); -@@ -54 +55,2 @@ - #endif // ES_APP_GUIS_GUI_MENU_H -+ diff --git a/rd-submodules/es-de/GuiThemeDownloader.cpp.patch b/rd-submodules/es-de/GuiThemeDownloader.cpp.patch deleted file mode 100644 index 8dd35293..00000000 --- a/rd-submodules/es-de/GuiThemeDownloader.cpp.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -au1r emulationstation-de/es-app/src/guis/GuiThemeDownloader.cpp emulationstation-de/es-app/src/guis/GuiThemeDownloader.cpp ---- emulationstation-de/es-app/src/guis/GuiThemeDownloader.cpp 2023-11-03 16:25:01.115126901 +0100 -+++ emulationstation-de/es-app/src/guis/GuiThemeDownloader.cpp 2023-11-03 16:26:18.882607724 +0100 -@@ -602,4 +602,4 @@ - getHelpStyle(), -- "IT SEEMS AS IF YOU'RE NOT RUNNING THE LATEST ES-DE RELEASE, PLEASE UPGRADE BEFORE " -- "PROCEEDING AS THESE THEMES MAY NOT BE COMPATIBLE WITH YOUR VERSION", -+ "ES-DE THEME ENGINE WAS UPDATED UPSTREAM. THESE THEMES MAY NOT BE COMPATIBLE WITH THE CURRENT RETRODECK VERSION." -+ "CHECK IF A NEW RETRODECK UPDATE IS AVAILABLE, ELSE PLEASE WAIT FOR IT OR PROCEED AT YOUR OWN RISK.", - "OK", [] { return; }, "", nullptr, "", nullptr, nullptr, true)); diff --git a/rd-submodules/es-de/ViewController.cpp.patch b/rd-submodules/es-de/ViewController.cpp.patch deleted file mode 100644 index 8d677c37..00000000 --- a/rd-submodules/es-de/ViewController.cpp.patch +++ /dev/null @@ -1,101 +0,0 @@ -diff -au1r emulationstation-de/es-app/src/views/ViewController.cpp emulationstation-de/es-app/src/views/ViewController.cpp ---- emulationstation-de/es-app/src/views/ViewController.cpp 2023-11-04 15:09:24.332178777 -0400 -+++ emulationstation-de/es-app/src/views/ViewController.cpp 2023-11-04 15:13:59.015780009 -0400 -@@ -195,91 +195,3 @@ - mNoGamesMessageBox = new GuiMsgBox( -- HelpStyle(), mNoGamesErrorMessage + mRomDirectory, "CHANGE ROM DIRECTORY", -- [this] { -- std::string currentROMDirectory; --#if defined(_WIN64) -- currentROMDirectory = Utils::String::replace(FileData::getROMDirectory(), "/", "\\"); --#else -- currentROMDirectory = FileData::getROMDirectory(); --#endif -- if (Settings::getInstance()->getBool("VirtualKeyboard")) { -- mWindow->pushGui(new GuiTextEditKeyboardPopup( -- HelpStyle(), 0.0f, "ENTER ROM DIRECTORY PATH", currentROMDirectory, -- [this, currentROMDirectory](const std::string& newROMDirectory) { -- if (currentROMDirectory != newROMDirectory) { -- Settings::getInstance()->setString( -- "ROMDirectory", Utils::String::trim(newROMDirectory)); -- Settings::getInstance()->saveFile(); --#if defined(_WIN64) -- mRomDirectory = -- Utils::String::replace(FileData::getROMDirectory(), "/", "\\"); --#else -- mRomDirectory = FileData::getROMDirectory(); --#endif -- mNoGamesMessageBox->changeText(mNoGamesErrorMessage + mRomDirectory); -- mWindow->pushGui(new GuiMsgBox(HelpStyle(), -- "ROM DIRECTORY SETTING SAVED, RESTART\n" -- "THE APPLICATION TO RESCAN THE SYSTEMS", -- "OK", nullptr, "", nullptr, "", nullptr, -- nullptr, true, true)); -- } -- }, -- false, "SAVE", "SAVE CHANGES?", "Currently configured path:", -- currentROMDirectory, "LOAD CURRENTLY CONFIGURED PATH", -- "CLEAR (LEAVE BLANK TO RESET TO DEFAULT PATH)")); -- } -- else { -- mWindow->pushGui(new GuiTextEditPopup( -- HelpStyle(), "ENTER ROM DIRECTORY PATH", currentROMDirectory, -- [this](const std::string& newROMDirectory) { -- Settings::getInstance()->setString("ROMDirectory", -- Utils::String::trim(newROMDirectory)); -- Settings::getInstance()->saveFile(); --#if defined(_WIN64) -- mRomDirectory = -- Utils::String::replace(FileData::getROMDirectory(), "/", "\\"); --#else -- mRomDirectory = FileData::getROMDirectory(); --#endif -- mNoGamesMessageBox->changeText(mNoGamesErrorMessage + mRomDirectory); -- mWindow->pushGui(new GuiMsgBox(HelpStyle(), -- "ROM DIRECTORY SETTING SAVED, RESTART\n" -- "THE APPLICATION TO RESCAN THE SYSTEMS", -- "OK", nullptr, "", nullptr, "", nullptr, -- nullptr, true)); -- }, -- false, "SAVE", "SAVE CHANGES?", "Currently configured path:", -- currentROMDirectory, "LOAD CURRENTLY CONFIGURED PATH", -- "CLEAR (LEAVE BLANK TO RESET TO DEFAULT PATH)")); -- } -- }, -- "CREATE DIRECTORIES", -- [this] { -- mWindow->pushGui(new GuiMsgBox( -- HelpStyle(), -- "THIS WILL CREATE DIRECTORIES FOR ALL THE\n" -- "GAME SYSTEMS DEFINED IN es_systems.xml\n\n" -- "THIS MAY CREATE A LOT OF FOLDERS SO IT'S\n" -- "ADVICED TO REMOVE THE ONES YOU DON'T NEED", -- "PROCEED", -- [this] { -- if (!SystemData::createSystemDirectories()) { -- mWindow->pushGui(new GuiMsgBox(HelpStyle(), -- "THE SYSTEM DIRECTORIES WERE SUCCESSFULLY\n" -- "GENERATED, EXIT THE APPLICATION AND PLACE\n" -- "YOUR GAMES IN THE NEWLY CREATED FOLDERS", -- "OK", nullptr, "", nullptr, "", nullptr, -- nullptr, true)); -- } -- else { -- mWindow->pushGui(new GuiMsgBox(HelpStyle(), -- "ERROR CREATING THE SYSTEM DIRECTORIES,\n" -- "PERMISSION PROBLEMS OR DISK FULL?\n\n" -- "SEE THE LOG FILE FOR MORE DETAILS", -- "OK", nullptr, "", nullptr, "", nullptr, -- nullptr, true)); -- } -- }, -- "CANCEL", nullptr, "", nullptr, nullptr, false)); -- }, -- "QUIT", -+ HelpStyle(), mNoGamesErrorMessage + mRomDirectory, "QUIT", - [] { -@@ -289,3 +201,3 @@ - }, -- nullptr, true, false, -+ "", nullptr, "", nullptr, nullptr, true, true, - (mRenderer->getIsVerticalOrientation() ? diff --git a/rd-submodules/es-de/Window.cpp.patch b/rd-submodules/es-de/Window.cpp.patch deleted file mode 100644 index c099d83b..00000000 --- a/rd-submodules/es-de/Window.cpp.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -au1r emulationstation-de/es-core/src/Window.cpp emulationstation-de/es-core/src/Window.cpp ---- emulationstation-de/es-core/src/Window.cpp 2023-08-29 14:14:17.208301836 +0200 -+++ emulationstation-de/es-core/src/Window.cpp 2023-08-29 14:12:37.307334069 +0200 - -@@ -181,3 +181,3 @@ - progressBarRect.barPosY += borderThickness; -- progressBarRect.color = 0x79010FFF; -+ progressBarRect.color = 0xC858E6FF; - mProgressBarRectangles.emplace_back(progressBarRect); diff --git a/rd-submodules/es-de/patch_helper.sh b/rd-submodules/es-de/patch_helper.sh deleted file mode 100755 index 27923b97..00000000 --- a/rd-submodules/es-de/patch_helper.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/bash - -mkdir /tmp - -branch="00a226062fff37209d98e0ab048ac89af50ecacc" -git clone "https://gitlab.com/es-de/emulationstation-de.git" /tmp/emulationstation-de - -pushd . -cd /tmp/emulationstation-de -git checkout $branch -popd - -mkdir patches-tmp - -cp /tmp/emulationstation-de/es-app/src/guis/GuiMenu.cpp ./patches-tmp -cp /tmp/emulationstation-de/es-app/src/guis/GuiMenu.h ./patches-tmp -cp /tmp/emulationstation-de/es-app/src/views/ViewController.cpp ./patches-tmp -cp /tmp/emulationstation-de/es-core/src/Window.cpp ./patches-tmp -cp /tmp/emulationstation-de/es-app/src/guis/GuiThemeDownloader.cpp ./patches-tmp - -read -p "Please edit the files in \"patches-tmp\" and press enter to continue." - -diff -au1r /tmp/emulationstation-de/es-app/src/guis/GuiMenu.cpp ./patches-tmp/GuiMenu.cpp > GuiMenu.cpp.patch -diff -au1r /tmp/emulationstation-de/es-app/src/guis/GuiMenu.h ./patches-tmp/GuiMenu.h > GuiMenu.h.patch -diff -au1r /tmp/emulationstation-de/es-app/src/views/ViewController.cpp ./patches-tmp/ViewController.cpp > ViewController.cpp.patch -diff -au1r /tmp/emulationstation-de/es-core/src/Window.cpp ./patches-tmp/Window.cpp > Window.cpp.patch -diff -au1r /tmp/emulationstation-de/es-app/src/guis/GuiThemeDownloader.cpp ./patches-tmp/GuiThemeDownloader.cpp > GuiThemeDownloader.cpp.patch - -rm -rf patches-tmp - -echo "Done, now please remeber to edit the headers of the patch files with the correct paths." \ No newline at end of file diff --git a/tools/configurator.sh b/tools/configurator.sh index d474a279..437e99fc 100644 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -1348,7 +1348,7 @@ configurator_usb_import_dialog() { "${external_devices[@]}") if [[ ! -z "$choice" ]]; then - emulationstation --home "$choice" --create-system-dirs + es-de --home "$choice" --create-system-dirs rm -rf "$choice/ES-DE" # Cleanup unnecessary folder fi else From f8a86faa4be45efddaa1cb79025d9142faa02a0d Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 21 Feb 2024 14:26:23 +0100 Subject: [PATCH 22/45] ES-DE: changing more paths, again --- es-configs/es_settings.xml | 2 +- functions/050_save_migration.sh | 6 +++--- functions/functions.sh | 12 ++++++------ functions/global.sh | 8 ++++---- functions/prepare_component.sh | 8 ++++---- 5 files changed, 18 insertions(+), 18 deletions(-) diff --git a/es-configs/es_settings.xml b/es-configs/es_settings.xml index 117f1800..8ec2ff62 100644 --- a/es-configs/es_settings.xml +++ b/es-configs/es_settings.xml @@ -145,7 +145,7 @@ - + diff --git a/functions/050_save_migration.sh b/functions/050_save_migration.sh index 786686fc..55f3d679 100644 --- a/functions/050_save_migration.sh +++ b/functions/050_save_migration.sh @@ -28,12 +28,12 @@ save_migration() { fi # Doing the dir prep as we don't know from which version we came - dir_prep "$media_folder" "/var/config/es-de/ES-DE/downloaded_media" - dir_prep "$themes_folder" "/var/config/es-de/ES-DE/themes" + dir_prep "$media_folder" "/var/config/ES-DE/downloaded_media" + dir_prep "$themes_folder" "/var/config/ES-DE/themes" mkdir -pv $rdhome/logs #this was added later, maybe safe to remove in a few versions # Resetting es_settings, now we need it but in the future I should think a better solution, maybe with sed - cp -fv /app/retrodeck/es_settings.xml /var/config/es-de/ES-DE/es_settings.xml + cp -fv /app/retrodeck/es_settings.xml /var/config/ES-DE/es_settings.xml # 0.4 -> 0.5 # Perform save and state migration if needed diff --git a/functions/functions.sh b/functions/functions.sh index 6ac742f3..c69d69ed 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -486,9 +486,9 @@ install_retrodeck_starterpack() { ## DOOM section ## cp /app/retrodeck/extras/doom1.wad "$roms_folder/doom/doom1.wad" # No -f in case the user already has it - mkdir -p "/var/config/es-de/ES-DE/gamelists/doom" - if [[ ! -f "/var/config/es-de/ES-DE/gamelists/doom/gamelist.xml" ]]; then # Don't overwrite an existing gamelist - cp "/app/retrodeck/rd_prepacks/doom/gamelist.xml" "/var/config/es-de/ES-DE/gamelists/doom/gamelist.xml" + mkdir -p "/var/config/ES-DE/gamelists/doom" + if [[ ! -f "/var/config/ES-DE/gamelists/doom/gamelist.xml" ]]; then # Don't overwrite an existing gamelist + cp "/app/retrodeck/rd_prepacks/doom/gamelist.xml" "/var/config/ES-DE/gamelists/doom/gamelist.xml" fi mkdir -p "$media_folder/doom" unzip -oq "/app/retrodeck/rd_prepacks/doom/doom.zip" -d "$media_folder/doom/" @@ -519,8 +519,8 @@ update_splashscreens() { # This script will purge any existing ES graphics and reload them from RO space into somewhere ES will look for it # USAGE: update_splashscreens - rm -rf /var/config/es-de/ES-DE/resources/graphics - rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/es-de/ES-DE/resources/graphics/" + rm -rf /var/config/ES-DE/resources/graphics + rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/ES-DE/resources/graphics/" } deploy_helper_files() { @@ -631,5 +631,5 @@ start_retrodeck() { easter_eggs # Check if today has a surprise splashscreen and load it if so # normal startup echo "Starting RetroDECK v$version" - es-de --home /var/config/es-de + es-de --home /var/config/ES-DE } diff --git a/functions/global.sh b/functions/global.sh index 9a6ba230..ef5b760f 100644 --- a/functions/global.sh +++ b/functions/global.sh @@ -25,9 +25,9 @@ zip_compressable_extensions="$emuconfigs/defaults/retrodeck/reference_lists/zip_ easter_egg_checklist="$emuconfigs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg" # A config file listing days and times when special splash screens should show up input_validation="$emuconfigs/defaults/retrodeck/reference_lists/input_validation.cfg" # A config file listing valid CLI inputs finit_options_list="$emuconfigs/defaults/retrodeck/reference_lists/finit_options_list.cfg" # A config file listing available optional installs during finit -splashscreen_dir="/var/config/es-de/ES-DE/resources/graphics/extra_splashes" # The default location of extra splash screens -current_splash_file="/var/config/es-de/ES-DE/resources/graphics/splash.svg" # The active splash file that will be shown on boot -default_splash_file="/var/config/es-de/ES-DE/resources/graphics/splash-orig.svg" # The default RetroDECK splash screen +splashscreen_dir="/var/config/ES-DE/resources/graphics/extra_splashes" # The default location of extra splash screens +current_splash_file="/var/config/ES-DE/resources/graphics/splash.svg" # The active splash file that will be shown on boot +default_splash_file="/var/config/ES-DE/resources/graphics/splash-orig.svg" # The default RetroDECK splash screen multi_user_emulator_config_dirs="$emuconfigs/defaults/retrodeck/reference_lists/multi_user_emulator_config_dirs.cfg" # A list of emulator config folders that can be safely linked/unlinked entirely in multi-user mode rd_es_themes="/app/share/es-de/themes" # The directory where themes packaged with RetroDECK are stored lockfile="/var/config/retrodeck/.lock" # where the lockfile is located @@ -58,7 +58,7 @@ yuzuconf="/var/config/yuzu/qt-config.ini" # ES-DE config files -es_settings="/var/config/es-de/ES-DE/es_settings.xml" +es_settings="/var/config/ES-DE/es_settings.xml" # RetroArch config files diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 95b1d0ac..1b293919 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -40,12 +40,12 @@ prepare_component() { if [[ "$component" =~ ^(es-de|ES-DE|all)$ ]]; then # For use after ESDE-related folders are moved or a reset if [[ "$action" == "reset" ]]; then rm -rf /var/config/es-de/ - mkdir -p /var/config/es-de/ES-DE/ - cp -f /app/retrodeck/es_settings.xml /var/config/es-de/ES-DE/es_settings.xml + mkdir -p /var/config/ES-DE/ + cp -f /app/retrodeck/es_settings.xml /var/config/ES-DE/es_settings.xml set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings" set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings" set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings" - dir_prep "$rdhome/gamelists" "/var/config/es-de/ES-DE/gamelists" + dir_prep "$rdhome/gamelists" "/var/config/ES-DE/gamelists" es-de --home /var/config/es-de --create-system-dirs update_splashscreens fi @@ -53,7 +53,7 @@ prepare_component() { set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings" set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings" set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings" - dir_prep "$rdhome/gamelists" "/var/config/es-de/ES-DE/gamelists" + dir_prep "$rdhome/gamelists" "/var/config/ES-DE/gamelists" fi fi From 42df8149e1878b481a63cf874beed1770da72218 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 21 Feb 2024 14:26:37 +0100 Subject: [PATCH 23/45] ES-DE: post update scripts cleanup --- functions/post_update.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/functions/post_update.sh b/functions/post_update.sh index 2355807c..5a3dec56 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -242,9 +242,7 @@ post_update() { # - Change section name in retrodeck.cfg for ABXY button swap preset sed -i 's^nintendo_button_layout^abxy_button_swap^' "$rd_conf" # This is a one-off sed statement as there are no functions for replacing section names # in 3.0 .emulationstation was moved into ES-DE - mv -f /var/config/es-de/ /var/config/es-de/ES-DE - mv -f /var/config/es-de/.emulationstation /var/config/es-de/ES-DE - ln -s /var/config/es-de/ES-DE /var/config/es-de/.emulationstation # symlinking it to mantain the compatibility # TODO: remove this symlink n 0.9.0b + mv -f /var/config/emulationstation /var/config/ES-DE fi # if [[ $prev_version -le "090" ]]; then From 049f7a80a93dfc40779f34037b1eaba1cb6c27d6 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 21 Feb 2024 21:39:44 +0100 Subject: [PATCH 24/45] ES-DE: changing more paths, again and again --- functions/050_save_migration.sh | 2 +- functions/functions.sh | 2 +- functions/global.sh | 2 +- functions/prepare_component.sh | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/functions/050_save_migration.sh b/functions/050_save_migration.sh index 55f3d679..42632f1f 100644 --- a/functions/050_save_migration.sh +++ b/functions/050_save_migration.sh @@ -33,7 +33,7 @@ save_migration() { mkdir -pv $rdhome/logs #this was added later, maybe safe to remove in a few versions # Resetting es_settings, now we need it but in the future I should think a better solution, maybe with sed - cp -fv /app/retrodeck/es_settings.xml /var/config/ES-DE/es_settings.xml + cp -fv /app/retrodeck/es_settings.xml /var/config/ES-DE/settings/es_settings.xml # 0.4 -> 0.5 # Perform save and state migration if needed diff --git a/functions/functions.sh b/functions/functions.sh index f1d0a7cb..4f393f43 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -651,5 +651,5 @@ start_retrodeck() { easter_eggs # Check if today has a surprise splashscreen and load it if so # normal startup echo "Starting RetroDECK v$version" - es-de --home /var/config/ES-DE + es-de --home /var/config/ } diff --git a/functions/global.sh b/functions/global.sh index 6c8d889f..be52f198 100644 --- a/functions/global.sh +++ b/functions/global.sh @@ -62,7 +62,7 @@ yuzuconf="/var/config/yuzu/qt-config.ini" # ES-DE config files -es_settings="/var/config/ES-DE/es_settings.xml" +es_settings="/var/config/ES-DE/settings/es_settings.xml" # RetroArch config files diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index edeeda55..e0059e43 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -42,12 +42,12 @@ prepare_component() { if [[ "$action" == "reset" ]]; then rm -rf /var/config/es-de/ mkdir -p /var/config/ES-DE/ - cp -f /app/retrodeck/es_settings.xml /var/config/ES-DE/es_settings.xml + cp -f /app/retrodeck/es_settings.xml /var/config/ES-DE/settings/es_settings.xml set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings" set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings" set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings" dir_prep "$rdhome/gamelists" "/var/config/ES-DE/gamelists" - es-de --home /var/config/es-de --create-system-dirs + es-de --home /var/config/ES-DE --create-system-dirs update_splashscreens fi if [[ "$action" == "postmove" ]]; then From 965795d00a47b743a2c86d827c289c34ebae8a7b Mon Sep 17 00:00:00 2001 From: XargonWan Date: Wed, 21 Feb 2024 21:40:06 +0100 Subject: [PATCH 25/45] ES-DE: updated es_settings for 3.0 --- es-configs/es_settings.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/es-configs/es_settings.xml b/es-configs/es_settings.xml index 8ec2ff62..50cd7b18 100644 --- a/es-configs/es_settings.xml +++ b/es-configs/es_settings.xml @@ -2,6 +2,7 @@ + @@ -21,6 +22,7 @@ + @@ -65,6 +67,7 @@ + @@ -145,6 +148,7 @@ + @@ -152,6 +156,7 @@ + From 91d67db37ebaf1238da6a4d21d18ed1c2f5c8846 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Fri, 23 Feb 2024 10:00:50 +0100 Subject: [PATCH 26/45] SPLASHES: fixed splashes directory --- functions/functions.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/functions/functions.sh b/functions/functions.sh index 4f393f43..1c8024a5 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -539,8 +539,10 @@ update_splashscreens() { # This script will purge any existing ES graphics and reload them from RO space into somewhere ES will look for it # USAGE: update_splashscreens - rm -rf /var/config/ES-DE/resources/graphics - rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/ES-DE/resources/graphics/" + rm -rf /var/config/ES-DE/ES-DE/resources/graphics + rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/ES-DE/ES-DE/resources/graphics/" + + # NOTE: for some reason some stuff is still created in ES-DE/ES-DE so this path is correct } deploy_helper_files() { From 7dd5e618dc105075be949944838c1d736b080f2a Mon Sep 17 00:00:00 2001 From: XargonWan Date: Fri, 23 Feb 2024 15:50:03 +0100 Subject: [PATCH 27/45] SPLASHES: fixed splashes directory, again --- functions/functions.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/functions/functions.sh b/functions/functions.sh index 1c8024a5..2567037b 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -539,10 +539,9 @@ update_splashscreens() { # This script will purge any existing ES graphics and reload them from RO space into somewhere ES will look for it # USAGE: update_splashscreens - rm -rf /var/config/ES-DE/ES-DE/resources/graphics - rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/ES-DE/ES-DE/resources/graphics/" + rm -rf /var/config/ES-DE/resources/graphics + rsync -rlD --mkpath "/app/retrodeck/graphics/" "/var/config/ES-DE/resources/graphics/" - # NOTE: for some reason some stuff is still created in ES-DE/ES-DE so this path is correct } deploy_helper_files() { From 2bf3a68026ee1daf5774afc4aaede230bab7efab Mon Sep 17 00:00:00 2001 From: XargonWan Date: Sat, 24 Feb 2024 08:50:32 +0100 Subject: [PATCH 28/45] ES-DE: fixed wrong folders, creating until settings folder --- functions/prepare_component.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 0c5f56f8..b22982f9 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -40,8 +40,8 @@ prepare_component() { if [[ "$component" =~ ^(es-de|ES-DE|all)$ ]]; then # For use after ESDE-related folders are moved or a reset if [[ "$action" == "reset" ]]; then - rm -rf /var/config/es-de/ - mkdir -p /var/config/ES-DE/ + rm -rf /var/config/ES-DE + mkdir -p /var/config/ES-DE/settings cp -f /app/retrodeck/es_settings.xml /var/config/ES-DE/settings/es_settings.xml set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings" set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings" From bd9197ca5925767ba338d473228fc764e73d762d Mon Sep 17 00:00:00 2001 From: XargonWan Date: Sat, 24 Feb 2024 08:57:46 +0100 Subject: [PATCH 29/45] Vita3K: minor fixes to text messages [skip ci] --- functions/functions.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/functions/functions.sh b/functions/functions.sh index d7589ec4..b5470eb0 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -295,8 +295,8 @@ update_rpcs3_firmware() { } update_vita3k_firmware() { - download_file "http://dus01.psv.update.playstation.net/update/psv/image/2022_0209/rel_f2c7b12fe85496ec88a0391b514d6e3b/PSVUPDAT.PUP" "/tmp/PSVUPDAT.PUP" "Vita3K Firmware file 1" - download_file "http://dus01.psp2.update.playstation.net/update/psp2/image/2019_0924/sd_8b5f60b56c3da8365b973dba570c53a5/PSP2UPDAT.PUP?dest=us" "/tmp/PSP2UPDAT.PUP" "Vita3K Firmware file 2" + download_file "http://dus01.psv.update.playstation.net/update/psv/image/2022_0209/rel_f2c7b12fe85496ec88a0391b514d6e3b/PSVUPDAT.PUP" "/tmp/PSVUPDAT.PUP" "Vita3K Firmware file: PSVUPDAT.PUP" + download_file "http://dus01.psp2.update.playstation.net/update/psp2/image/2019_0924/sd_8b5f60b56c3da8365b973dba570c53a5/PSP2UPDAT.PUP?dest=us" "/tmp/PSP2UPDAT.PUP" "Vita3K Firmware file: PSP2UPDAT.PUP" Vita3K --firmware /tmp/PSVUPDAT.PUP Vita3K --firmware /tmp/PSP2UPDAT.PUP } From 7cb2c82ba2706becfdad91668b24902781f2da09 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Sun, 25 Feb 2024 15:52:04 +0100 Subject: [PATCH 30/45] RYUJINX: updated component premaration --- functions/prepare_component.sh | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index dc2c89e0..21536480 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -542,6 +542,8 @@ prepare_component() { fi if [[ "$component" =~ ^(ryujunx|Ryujinx|all)$ ]]; then + # NOTE: for techincal reasons the system folder of Ryujinx IS NOT a sumlink of the bios/switch/keys as not only the keys are located there + # When RetroDECK starts there is a "manage_ryujinx_keys" function that symlinks the keys only in Rryujinx/system. if [[ "$action" == "reset" ]]; then # Run reset-only commands echo "------------------------" echo "Initializing RYUJINX" @@ -549,15 +551,22 @@ prepare_component() { if [[ $multi_user_mode == "true" ]]; then rm -rf "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" #mkdir -p "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/system" + # TODO: add /var/config/Ryujinx/system system folder management cp -fv $emuconfigs/ryujinx/* "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/Config.json" dir_prep "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" "/var/config/Ryujinx" + # TODO: add nand (saves) folder management + # TODO: add "registered" folder management else # removing config directory to wipe legacy files rm -rf /var/config/Ryujinx - #mkdir -p /var/config/Ryujinx/system + mkdir -p /var/config/Ryujinx/system cp -fv $emuconfigs/ryujinx/* /var/config/Ryujinx sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" + # Linking switch nand/saves folder + rm -rf /var/config/Ryujinx/bis + dir_prep "$saves_folder/switch/nand" "/var/config/Ryujinx/bis" + dir_prep "$bios_folder/switch/registered" "/var/config/Ryujinx/bis/system/Contents/registered" fi fi # if [[ "$action" == "reset" ]] || [[ "$action" == "postmove" ]]; then # Run commands that apply to both resets and moves @@ -622,8 +631,8 @@ prepare_component() { rm -rf "$multi_user_data_folder/$SteamAppUser/config/yuzu" mkdir -p "$multi_user_data_folder/$SteamAppUser/config/yuzu" cp -fvr "$emuconfigs/yuzu/"* "$multi_user_data_folder/$SteamAppUser/config/yuzu/" - set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "nand_directory" "$saves_folder/switch/yuzu/nand" "yuzu" "Data%20Storage" - set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "sdmc_directory" "$saves_folder/switch/yuzu/sdmc" "yuzu" "Data%20Storage" + set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "nand_directory" "$saves_folder/switch/nand" "yuzu" "Data%20Storage" + set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "sdmc_directory" "$saves_folder/switch/sdmc" "yuzu" "Data%20Storage" set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "Paths\gamedirs\4\path" "$roms_folder/switch" "yuzu" "UI" set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "Screenshots\screenshot_path" "$screenshots_folder" "yuzu" "UI" dir_prep "$multi_user_data_folder/$SteamAppUser/config/yuzu" "/var/config/yuzu" From a2cf1f329a3bbf4914ec832e60df85807a0a02b4 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Sun, 25 Feb 2024 15:52:35 +0100 Subject: [PATCH 31/45] YUZU: unifying nand and sdmc folders wit Ryujinx --- emu-configs/yuzu/qt-config.ini | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/emu-configs/yuzu/qt-config.ini b/emu-configs/yuzu/qt-config.ini index a1e63a4d..b4a4feff 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=RETRODECKHOMEDIR/saves/switch/yuzu/nand +nand_directory=RETRODECKHOMEDIR/saves/switch/nand nand_directory\default=true -sdmc_directory=RETRODECKHOMEDIR/saves/switch/yuzu/sdmc +sdmc_directory=RETRODECKHOMEDIR/saves/switch/sdmc sdmc_directory\default=true tas_directory=/var/data/yuzu/tas tas_directory\default=true From de06dc46c88634a098b2cbd5db3d45baa9c2495d Mon Sep 17 00:00:00 2001 From: XargonWan Date: Sun, 25 Feb 2024 15:52:59 +0100 Subject: [PATCH 32/45] RYUJINX: fixing keys linker --- functions/functions.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/functions/functions.sh b/functions/functions.sh index c78fb81a..9ce6a359 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -587,15 +587,15 @@ manage_ryujinx_keys() { # If the symlinks are broken it recreates them echo "Checking Ryujinx Switch keys." #TODO logging - ryujinx_system="/var/config/Ryujinx/system" # Set the path to the Ryujinx system folder + local ryujinx_system="/var/config/Ryujinx/system" # Set the path to the Ryujinx system folder # Check if the keys folder exists if [ -d "$bios_folder/switch/keys" ]; then # Check if there are files in the keys folder if [ -n "$(find "$bios_folder/switch/keys" -maxdepth 1 -type f)" ]; then # Iterate over each file in the keys folder for file in "$bios_folder/switch/keys"/*; do - filename=$(basename "$file") - symlink="$ryujinx_system/$filename" + local filename=$(basename "$file") + local symlink="$ryujinx_system/$filename" # Check if the symlink exists and is valid if [ -L "$symlink" ] && [ "$(readlink -f "$symlink")" = "$file" ]; then @@ -604,7 +604,7 @@ manage_ryujinx_keys() { fi # Remove broken symlink or non-symlink file - echo "Found \"$symlink\" but it's not a valid symlink. Repeiring it" #TODO logging + echo "Found \"$symlink\" but it's not a valid symlink. Repairing it" #TODO logging [ -e "$symlink" ] && rm "$symlink" # Create symlink From fa4dcfebd6cf4a6401f8d297ae73f0d834238502 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Sun, 25 Feb 2024 15:53:37 +0100 Subject: [PATCH 33/45] RYUJINX: unifyng saves with Yuzu --- functions/post_update.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/functions/post_update.sh b/functions/post_update.sh index ec9acee5..504773f3 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -243,6 +243,16 @@ post_update() { sed -i 's^nintendo_button_layout^abxy_button_swap^' "$rd_conf" # This is a one-off sed statement as there are no functions for replacing section names mv -f /var/config/emulationstation/.emulationstation /var/config/emulationstation/ES-DE # in 3.0 .emulationstation was moved into ES-DE ln -s /var/config/emulationstation/ES-DE /var/config/emulationstation/.emulationstation # symlinking it to mantain the compatibility # TODO: remove this symlink n 0.9.0b + + # YUZU - Switch saves are now unified for both Yuzu and Ryujinx + mv $saves_folder/switch/yuzu/* $saves_folder/switch + rm -rf $saves_folder/switch/yuzu + set_setting_value "$yuzuconf" "nand_directory" "$saves_folder/switch/nand" "yuzu" "Data%20Storage" + set_setting_value "$yuzuconf" "sdmc_directory" "$saves_folder/switch/sdmc" "yuzu" "Data%20Storage" + + # TODO: init Vita3K + # TODO: init Ryujinx + # TODO: init GZDoom fi # if [[ $prev_version -le "090" ]]; then From 1a0e13135484d14daf7d84bd9ac67e225b3ebc6b Mon Sep 17 00:00:00 2001 From: XargonWan Date: Sun, 25 Feb 2024 16:15:40 +0100 Subject: [PATCH 34/45] ES-DE: needed update steps --- functions/post_update.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/functions/post_update.sh b/functions/post_update.sh index 5a3dec56..6dc65eae 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -241,8 +241,13 @@ post_update() { # - Install RetroDECK controller profile in desired location TODO # - Change section name in retrodeck.cfg for ABXY button swap preset sed -i 's^nintendo_button_layout^abxy_button_swap^' "$rd_conf" # This is a one-off sed statement as there are no functions for replacing section names + # in 3.0 .emulationstation was moved into ES-DE mv -f /var/config/emulationstation /var/config/ES-DE + mv -f /var/config/ES-DE/.emulationstation/* /var/config/ES-DE + rm -rf /var/config/ES-DE/.emulationstation + rm -f /var/config/ES-DE/es_settings.xml + prepare_component "reset" "es-de" fi # if [[ $prev_version -le "090" ]]; then From 5fae1b986660507bc1b57bc651f9c2bb4d48fce8 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 26 Feb 2024 13:47:22 +0100 Subject: [PATCH 35/45] MAME: added wrapper --- emu-configs/mame/{cfg => }/default.cfg | 0 emu-configs/mame/mame-rdwrapper.sh | 3 +++ es-configs/es_find_rules.xml | 2 +- net.retrodeck.retrodeck.yml | 4 ++++ tools/configurator.sh | 2 +- 5 files changed, 9 insertions(+), 2 deletions(-) rename emu-configs/mame/{cfg => }/default.cfg (100%) create mode 100755 emu-configs/mame/mame-rdwrapper.sh diff --git a/emu-configs/mame/cfg/default.cfg b/emu-configs/mame/default.cfg similarity index 100% rename from emu-configs/mame/cfg/default.cfg rename to emu-configs/mame/default.cfg diff --git a/emu-configs/mame/mame-rdwrapper.sh b/emu-configs/mame/mame-rdwrapper.sh new file mode 100755 index 00000000..e6c98fcd --- /dev/null +++ b/emu-configs/mame/mame-rdwrapper.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +mame -inipath /var/config/mame \ No newline at end of file diff --git a/es-configs/es_find_rules.xml b/es-configs/es_find_rules.xml index 112a4a40..165086b4 100644 --- a/es-configs/es_find_rules.xml +++ b/es-configs/es_find_rules.xml @@ -463,7 +463,7 @@ - mame + mame-rdwrapper.sh org.mamedev.MAME diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index b7ab4bb8..d1efc458 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1358,6 +1358,10 @@ modules: - cp emu-configs/gzdoom/gzdoom.sh ${FLATPAK_DEST}/bin/gzdoom.sh - chmod +x ${FLATPAK_DEST}/bin/gzdoom.sh + # MAME wrapper + - cp emu-configs/mame/mame-rdwrapper.sh ${FLATPAK_DEST}/bin/mame-rdwrapper.sh + - chmod +x ${FLATPAK_DEST}/bin/mame-rdwrapper.sh + sources: - type: git url: https://github.com/XargonWan/RetroDECK.git diff --git a/tools/configurator.sh b/tools/configurator.sh index ee5509eb..6ffa3b42 100644 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -476,7 +476,7 @@ configurator_open_emulator_dialog() { ;; "MAME" ) - mame + mame-rdwrapper.sh ;; "MelonDS" ) From d8f550755f70ca8ad306a6e1ca3dd09f559ba959 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 26 Feb 2024 13:47:40 +0100 Subject: [PATCH 36/45] MAME: added folder creation --- functions/prepare_component.sh | 63 ++++++++++++++++++++++++++++++---- 1 file changed, 57 insertions(+), 6 deletions(-) diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index ef2fa19f..ea55f3db 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -700,14 +700,65 @@ prepare_component() { echo "Initializing MAME" echo "----------------------" + # TODO: probably some of these needs to be put elsewhere mkdir -p $saves_folder/mame-sa - mkdir -p "/var/config/mame" + mkdir -p "$saves_folder/mame-sa/nvram" + mkdir -p "$states_folder/mame-sa" + mkdir -p "$rdhome/screenshots/mame-sa" + mkdir -p "$saves_folder/mame-sa/diff" + + mkdir -p "/var/config/ctrlr" + mkdir -p "/var/config/mame/ini" + mkdir -p "/var/config/mame/cfg" + mkdir -p "/var/config/mame/inp" + + mkdir -p "/var/data/mame/plugin-data" + mkdir -p "/var/data/mame/hash" + mkdir -p "/var/data/mame/assets/samples" + mkdir -p "/var/data/mame/assets/artwork" + mkdir -p "/var/data/mame/assets/fonts" + mkdir -p "/var/data/mame/cheat" + mkdir -p "/var/data/mame/assets/crosshair" + mkdir -p "/var/data/mame/plugins" + mkdir -p "/var/data/mame/assets/language" + mkdir -p "/var/data/mame/assets/software" + mkdir -p "/var/data/mame/assets/comments" + mkdir -p "/var/data/mame/assets/share" + mkdir -p "/var/data/mame/dats" + mkdir -p "/var/data/mame/folders" + mkdir -p "/var/data/mame/assets/cabinets" + mkdir -p "/var/data/mame/assets/cpanel" + mkdir -p "/var/data/mame/assets/pcb" + mkdir -p "/var/data/mame/assets/flyers" + mkdir -p "/var/data/mame/assets/titles" + mkdir -p "/var/data/mame/assets/ends" + mkdir -p "/var/data/mame/assets/marquees" + mkdir -p "/var/data/mame/assets/artwork-preview" + mkdir -p "/var/data/mame/assets/bosses" + mkdir -p "/var/data/mame/assets/logo" + mkdir -p "/var/data/mame/assets/scores" + mkdir -p "/var/data/mame/assets/versus" + mkdir -p "/var/data/mame/assets/gameover" + mkdir -p "/var/data/mame/assets/howto" + mkdir -p "/var/data/mame/assets/select" + mkdir -p "/var/data/mame/assets/icons" + mkdir -p "/var/data/mame/assets/covers" + mkdir -p "/var/data/mame/assets/ui" + dir_prep "$saves_folder/mame-sa/hiscore" "/var/config/mame/hiscore" - cp -fvr "$emuconfigs/mame/"** "/var/config/mame" - sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/*.ini" - sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/*.ini" - sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/*.ini" - sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/*.ini" + cp -fvr "$emuconfigs/mame/mame.ini" "/var/config/mame" + cp -fvr "$emuconfigs/mame/ui.ini" "/var/config/mame" + cp -fvr "$emuconfigs/mame/default.cfg" "/var/config/mame" + + sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/mame.ini" + sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/mame.ini" + sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/mame.ini" + sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/mame.ini" + + sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/ui.ini" + sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/ui.ini" + sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/ui.ini" + sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/ui.ini" fi if [[ "$component" =~ ^(gzdoom|GZDOOM|all)$ ]]; then From e0e71b984a18fd340651f44f8649e0dd45200b21 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 26 Feb 2024 13:48:44 +0100 Subject: [PATCH 37/45] POST_UPDATE: added resets for mame, vita3k and gzdoom [skip ci] --- functions/post_update.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/functions/post_update.sh b/functions/post_update.sh index ec9acee5..104029e4 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -243,6 +243,10 @@ post_update() { sed -i 's^nintendo_button_layout^abxy_button_swap^' "$rd_conf" # This is a one-off sed statement as there are no functions for replacing section names mv -f /var/config/emulationstation/.emulationstation /var/config/emulationstation/ES-DE # in 3.0 .emulationstation was moved into ES-DE ln -s /var/config/emulationstation/ES-DE /var/config/emulationstation/.emulationstation # symlinking it to mantain the compatibility # TODO: remove this symlink n 0.9.0b + + prepare_component "reset" "mame" + prepare_component "reset" "vita3k" + prepare_component "reset" "gzdoom" fi # if [[ $prev_version -le "090" ]]; then From fb0cb02de23f1e95d3b3ee1789a1c6ef964a7428 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 26 Feb 2024 13:50:47 +0100 Subject: [PATCH 38/45] CONFIGURATOR: fixed prepare_component dialog [skip ci] --- tools/configurator.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/configurator.sh b/tools/configurator.sh index 6ffa3b42..92531451 100644 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -1055,7 +1055,7 @@ configurator_reset_dialog() { --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \ --text="Which component do you want to reset to default?" \ --column="Component" --column="Action" \ - "BoilR" "Reset BoilR that manages the sync and scraping toward Steam library" \ + "BoilR" "Reset BoilR that manages the sync and scraping toward Steam library" \ "ES-DE" "Reset the ES-DE frontend" \ ) # TODO: "GyroDSU" "Reset the gyroscope manager GyroDSU" From c07daf9af7d7d5edc2d4cef2b0bc1c780fd52e2e Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 26 Feb 2024 14:25:08 +0100 Subject: [PATCH 39/45] RYUJINX: fixed configurator call command [skip ci] --- tools/configurator.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/configurator.sh b/tools/configurator.sh index 92531451..aa4ffbb7 100644 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -500,7 +500,7 @@ configurator_open_emulator_dialog() { ;; "Ryujinx" ) - ryujinx-wrapper + Ryujinx.sh ;; "Vita3K" ) From e6775b84d21eb5f3fc21fa2474a943edbb6f744d Mon Sep 17 00:00:00 2001 From: XargonWan Date: Mon, 26 Feb 2024 14:52:55 +0100 Subject: [PATCH 40/45] SWITCH: separated the saves between Yuzu and Ryujinf cause of different directory structure [skip ci] --- functions/post_update.sh | 6 ------ functions/prepare_component.sh | 10 ++++++---- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/functions/post_update.sh b/functions/post_update.sh index 504773f3..21bb5219 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -244,12 +244,6 @@ post_update() { mv -f /var/config/emulationstation/.emulationstation /var/config/emulationstation/ES-DE # in 3.0 .emulationstation was moved into ES-DE ln -s /var/config/emulationstation/ES-DE /var/config/emulationstation/.emulationstation # symlinking it to mantain the compatibility # TODO: remove this symlink n 0.9.0b - # YUZU - Switch saves are now unified for both Yuzu and Ryujinx - mv $saves_folder/switch/yuzu/* $saves_folder/switch - rm -rf $saves_folder/switch/yuzu - set_setting_value "$yuzuconf" "nand_directory" "$saves_folder/switch/nand" "yuzu" "Data%20Storage" - set_setting_value "$yuzuconf" "sdmc_directory" "$saves_folder/switch/sdmc" "yuzu" "Data%20Storage" - # TODO: init Vita3K # TODO: init Ryujinx # TODO: init GZDoom diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 21536480..107890aa 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -556,6 +556,7 @@ prepare_component() { sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/Config.json" dir_prep "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" "/var/config/Ryujinx" # TODO: add nand (saves) folder management + # TODO: add nand (saves) folder management # TODO: add "registered" folder management else # removing config directory to wipe legacy files @@ -565,8 +566,9 @@ prepare_component() { sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" # Linking switch nand/saves folder rm -rf /var/config/Ryujinx/bis - dir_prep "$saves_folder/switch/nand" "/var/config/Ryujinx/bis" - dir_prep "$bios_folder/switch/registered" "/var/config/Ryujinx/bis/system/Contents/registered" + dir_prep "$saves_folder/switch/ryujinx/nand" "/var/config/Ryujinx/bis" + dir_prep "$saves_folder/switch/ryujinx/sdcard" "/var/config/Ryujinx/sdcard" + dir_prep "$bios_folder/switch/ryujinx/registered" "/var/config/Ryujinx/bis/system/Contents/registered" fi fi # if [[ "$action" == "reset" ]] || [[ "$action" == "postmove" ]]; then # Run commands that apply to both resets and moves @@ -631,8 +633,8 @@ prepare_component() { rm -rf "$multi_user_data_folder/$SteamAppUser/config/yuzu" mkdir -p "$multi_user_data_folder/$SteamAppUser/config/yuzu" cp -fvr "$emuconfigs/yuzu/"* "$multi_user_data_folder/$SteamAppUser/config/yuzu/" - set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "nand_directory" "$saves_folder/switch/nand" "yuzu" "Data%20Storage" - set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "sdmc_directory" "$saves_folder/switch/sdmc" "yuzu" "Data%20Storage" + set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "nand_directory" "$saves_folder/switch/yuzu/nand" "yuzu" "Data%20Storage" + set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "sdmc_directory" "$saves_folder/switch/yuzu/sdmc" "yuzu" "Data%20Storage" set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "Paths\gamedirs\4\path" "$roms_folder/switch" "yuzu" "UI" set_setting_value "$multi_user_data_folder/$SteamAppUser/config/yuzu/qt-config.ini" "Screenshots\screenshot_path" "$screenshots_folder" "yuzu" "UI" dir_prep "$multi_user_data_folder/$SteamAppUser/config/yuzu" "/var/config/yuzu" From d96da39876127ec6ca7390f7e6abdf36910f829d Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 27 Feb 2024 10:13:42 +0100 Subject: [PATCH 41/45] MAME: paths fixed --- functions/prepare_component.sh | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index ca6e8be0..f7d22f32 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -712,7 +712,7 @@ prepare_component() { echo "----------------------" # TODO: probably some of these needs to be put elsewhere - mkdir -p $saves_folder/mame-sa + mkdir -p "$saves_folder/mame-sa" mkdir -p "$saves_folder/mame-sa/nvram" mkdir -p "$states_folder/mame-sa" mkdir -p "$rdhome/screenshots/mame-sa" @@ -757,19 +757,19 @@ prepare_component() { mkdir -p "/var/data/mame/assets/ui" dir_prep "$saves_folder/mame-sa/hiscore" "/var/config/mame/hiscore" - cp -fvr "$emuconfigs/mame/mame.ini" "/var/config/mame" - cp -fvr "$emuconfigs/mame/ui.ini" "/var/config/mame" - cp -fvr "$emuconfigs/mame/default.cfg" "/var/config/mame" + cp -fvr "$emuconfigs/mame/mame.ini" "/var/config/mame/cfg" + cp -fvr "$emuconfigs/mame/ui.ini" "/var/config/mame/cfg" + cp -fvr "$emuconfigs/mame/default.cfg" "/var/config/mame/cfg" - sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/mame.ini" - sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/mame.ini" - sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/mame.ini" - sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/mame.ini" + sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/cfg/mame.ini" + sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/cfg/mame.ini" + sed -i 's#RETRODECKSAVESDIR#'$saves_folder'#g' "/var/config/mame/cfg/mame.ini" + sed -i 's#RETRODECKSTATESDIR#'$states_folder'#g' "/var/config/mame/cfg/mame.ini" - sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/ui.ini" - sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/ui.ini" - sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/ui.ini" - sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/ui.ini" + sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/cfg/ui.ini" + sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/cfg/ui.ini" + sed -i 's#RETRODECKSAVESDIR#'$saves_folder'#g' "/var/config/mame/cfg/ui.ini" + sed -i 's#RETRODECKSTATESDIR#'$states_folder'#g' "/var/config/mame/cfg/ui.ini" fi if [[ "$component" =~ ^(gzdoom|GZDOOM|all)$ ]]; then From 91de66061c3a22a7a9d543fea737ee466bcc6617 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 27 Feb 2024 10:13:53 +0100 Subject: [PATCH 42/45] MAME: added hotkeys --- emu-configs/mame/default.cfg | 214 ++++++++++++++++++++++++++++++++++- 1 file changed, 212 insertions(+), 2 deletions(-) diff --git a/emu-configs/mame/default.cfg b/emu-configs/mame/default.cfg index 7fbdab04..a8e51abf 100644 --- a/emu-configs/mame/default.cfg +++ b/emu-configs/mame/default.cfg @@ -13,19 +13,74 @@ JOYCODE_1_SELECT + + + NONE + + + + + NONE + + + + + NONE + + KEYCODE_LCONTROL KEYCODE_M + + + KEYCODE_LCONTROL KEYCODE_Q + + + + + KEYCODE_DEL + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + KEYCODE_LCONTROL KEYCODE_P + + + NONE + + - KEYCODE_LCONTROL KEYCODE_MINUSPAD + KEYCODE_LCONTROL KEYCODE_MINUS @@ -38,9 +93,44 @@ KEYCODE_LCONTROL KEYCODE_A + + + KEYCODE_LCONTROL KEYCODE_R + + + + + KEYCODE_LCONTROL KEYCODE_N + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + - KEYCODE_LCONTROL KEYCODE_PLUSPAD + KEYCODE_LCONTROL KEYCODE_MINUS + + + + + NONE @@ -48,6 +138,126 @@ KEYCODE_LCONTROL KEYCODE_X + + + NONE + + + + + NONE + + + + + KEYCODE_LCONTROL KEYCODE_C + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + NONE + + + + + KEYCODE_LCONTROL KEYCODE_ENTER + + + + + NONE + + + + + KEYCODE_LCONTROL KEYCODE_Y + + + + + KEYCODE_LCONTROL KEYCODE_U + + + + + NONE + + From 4e5aac11e509507d1d392c64c8db01ed1a90523c Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 27 Feb 2024 10:35:19 +0100 Subject: [PATCH 43/45] MAME: paths fixed #2 --- functions/prepare_component.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index f7d22f32..e37750cb 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -762,12 +762,12 @@ prepare_component() { cp -fvr "$emuconfigs/mame/default.cfg" "/var/config/mame/cfg" sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/cfg/mame.ini" - sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/cfg/mame.ini" + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "/var/config/mame/cfg/mame.ini" sed -i 's#RETRODECKSAVESDIR#'$saves_folder'#g' "/var/config/mame/cfg/mame.ini" sed -i 's#RETRODECKSTATESDIR#'$states_folder'#g' "/var/config/mame/cfg/mame.ini" sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/cfg/ui.ini" - sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/cfg/ui.ini" + sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "/var/config/mame/cfg/ui.ini" sed -i 's#RETRODECKSAVESDIR#'$saves_folder'#g' "/var/config/mame/cfg/ui.ini" sed -i 's#RETRODECKSTATESDIR#'$states_folder'#g' "/var/config/mame/cfg/ui.ini" fi From a7a03d84c9c704fcbcaf8d7db34c700b636e517d Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 27 Feb 2024 10:49:57 +0100 Subject: [PATCH 44/45] APPDATA: updated --- net.retrodeck.retrodeck.appdata.xml | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index 0f530fdd..39d98f1d 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -65,26 +65,28 @@ GPL-3.0 CC0-1.0 - + https://github.com/XargonWan/RetroDECK/releases/tag/0.8.0b -

CRITICAL:

-
    -
  • DEEP TEST: prepare_emulator function is now called prepare_component, eidted even in the cli and split it into the Configurator, so we need to test if the reset emulator works as supposed, if the cli and the Configurator is consistent.
  • -
+

+ WARNING: + The post update script is initializing es-de 3.0, vita3k, mame-sa and ryujinx when coming from a version ealrier that 0.8.0b. Tp fully test this build you must come from a build 0.7.6b or previous otherwise you will surely encounter issues. Else reset RetroDECK but be aware that will not be a proper testing. +

Changes:

    +
  • ES-DE: updated to 3.0
  • +
  • Added new system: RYUJINX
  • Added new system: SOLARUS
  • Added new engine: GZDOOM
  • -
  • Added new emulator: Vita3K - Reset the emulator to grap the lates changes
  • +
  • Added new emulator: Vita3K
  • Added new emulator: MAME (Standalone)
  • PPSSPP: added hotkeys
  • +
  • MAME: added hotkeys
  • +
  • SCUMMVM: added hotkeys
  • DOLPHIN: improved wiimote pointer emulation for controllers
  • -
  • Added Steam Sync (with BoilR)
  • Quit button after emulators reset should act as an actual full quit button
  • Created a quit_retrodeck function to ease the quit in the scripts.
  • Logs folder is now in retrodeck/logs (previously was .logs)
  • -
  • The post update script is initializing vita3k, mame and boilr when coming from a version ealrier that 0.8.0, this don't work in cokker and must be resetted manually (for boilr reset RetroDECK)
  • RPCS3 is now running via shortcut (.desktop file) by default - WARN THE USERS TO MIGRATE
  • Added controller config for PS4 and PS5
  • Controller config overhaul
  • @@ -93,21 +95,18 @@

    Fixes:

    • Fixed DUCKSTATION memory card folder
    • -
    • Fixed RPCS3 saves folder (wrong symlink) - WRN THE USERS TO BACKUP
    • -
    • Fixed issues that prevents Steam Sync to work correctly
    • +
    • Fixed RPCS3 saves folder (wrong symlink) - WARN THE USERS TO BACKUP

    Issues:

      -
    • !!! WARNING !!! Steam Sync is now REPLACING your Standalone BoilR links with RetroDECK's, use it at your own risk!
    • +
    • Vita3K firmware downloader is failing. Workaround: run the downloader twice
    • GZDOOM: the controller for player 2+ is not correctly configured
    • quit_retrodeck function seems to not working correctly
    • -
    • MAME (Standalone) paths should be fixed

    Missing:

    • GZDOOM: hotkeys
    • SOLARUS: hotkeys
    • -
    • MAME (Standalone): hotkeys
    • A proper reset script for the new emulators, now it's just a draft (only Vita3K is done)
    From b04d9f4ce7c101a626bec8b24b05f1ca1766adf3 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Tue, 27 Feb 2024 11:08:56 +0100 Subject: [PATCH 45/45] MAME: added all possible rompaths [skip ci] --- emu-configs/mame/mame.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/emu-configs/mame/mame.ini b/emu-configs/mame/mame.ini index f47c2062..bacecbdb 100644 --- a/emu-configs/mame/mame.ini +++ b/emu-configs/mame/mame.ini @@ -8,7 +8,7 @@ writeconfig 0 # CORE SEARCH PATH OPTIONS # homepath /var/data/mame/plugin-data -rompath RETRODECKROMSDIR/mame/;RETRODECKROMSDIR/arcade/;RETRODECKROMSDIR/bbcmicro/ +rompath RETRODECKROMSDIR/adam;RETRODECKROMSDIR/amstradcpc;RETRODECKROMSDIR/apple2;RETRODECKROMSDIR/apple2gs;RETRODECKROMSDIR/arcade;RETRODECKROMSDIR/arcadia;RETRODECKROMSDIR/archimedes;RETRODECKROMSDIR/astrocde;RETRODECKROMSDIR/atari7800;RETRODECKROMSDIR/atarijaguar;RETRODECKROMSDIR/bbcmicro;RETRODECKROMSDIR/cdimono1;RETRODECKROMSDIR/channelf;RETRODECKROMSDIR/consolearcade;RETRODECKROMSDIR/cps;RETRODECKROMSDIR/cps1;RETRODECKROMSDIR/cps2;RETRODECKROMSDIR/cps3;RETRODECKROMSDIR/crvision;RETRODECKROMSDIR/daphne;RETRODECKROMSDIR/electron;RETRODECKROMSDIR/fm7;RETRODECKROMSDIR/fmtowns;RETRODECKROMSDIR/gamate;RETRODECKROMSDIR/gameandwatch;RETRODECKROMSDIR/gamecom;RETRODECKROMSDIR/gmaster;RETRODECKROMSDIR/gx4000;RETRODECKROMSDIR/intellivision;RETRODECKROMSDIR/laserdisc;RETRODECKROMSDIR/lcdgames;RETRODECKROMSDIR/mame;RETRODECKROMSDIR/megaduck;RETRODECKROMSDIR/model2;RETRODECKROMSDIR/neogeo;RETRODECKROMSDIR/neogeocd;RETRODECKROMSDIR/neogeocdjp;RETRODECKROMSDIR/odyssey2;RETRODECKROMSDIR/pv1000;RETRODECKROMSDIR/scv;RETRODECKROMSDIR/stv;RETRODECKROMSDIR/supervision;RETRODECKROMSDIR/supracan;RETRODECKROMSDIR/ti99;RETRODECKROMSDIR/vectrex;RETRODECKROMSDIR/videopac;RETRODECKROMSDIR/vsmile;RETRODECKROMSDIR/x68000 hashpath /var/data/mame/hash samplepath /var/data/mame/assets/samples artpath /var/data/mame/assets/artwork