diff --git a/.gitmodules b/.gitmodules index 038a6d59..6bcd59f5 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,9 +1,9 @@ -[submodule "rd-submodules/retroarch"] - path = rd-submodules/retroarch - url = https://github.com/flathub/org.libretro.RetroArch [submodule "rd-submodules/shared-modules"] path = rd-submodules/shared-modules url = https://github.com/flathub/shared-modules.git +[submodule "rd-submodules/retroarch"] + path = rd-submodules/retroarch + url = https://github.com/flathub/org.libretro.RetroArch.git [submodule "rd-submodules/ryujinx"] path = rd-submodules/ryujinx url = https://github.com/flathub/org.ryujinx.Ryujinx diff --git a/automation_tools/automation_task_list.cfg b/automation_tools/automation_task_list.cfg index 09a15943..8301ec03 100644 --- a/automation_tools/automation_task_list.cfg +++ b/automation_tools/automation_task_list.cfg @@ -6,7 +6,7 @@ hash^SAMEDUCKSHAPLACEHOLDER^https://buildbot.libretro.com/nightly/linux/x86_64/l hash^PPSSPPBIOSHASHPLACEHOLDER^https://github.com/hrydgard/ppsspp/archive/refs/heads/master.zip hash^MSXBIOSHASHPLACEHOLDER^http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip hash^XEMUHDDHASHPLACEHOLDER^https://github.com/mborgerson/xemu-hdd-image/releases/latest/download/xbox_hdd.qcow2.zip -hash^VITA3KSHAPLACEHOLDER^https://github.com/Vita3K/Vita3K/releases/download/continuous/ubuntu-latest.zip +hash^RANIGHTLYCORESPLACEHOLDER^https://buildbot.libretro.com/nightly/linux/x86_64/RetroArch_cores.7z latestcommit^UNIVERSALDYNAMICINPUTCOMMITPLACEHOLDER^https://github.com/Venomalia/UniversalDynamicInput^main outside_info^VERSIONPLACEHOLDER^${GITHUB_WORKSPACE}/buildid branch^THISBRANCH diff --git a/automation_tools/force_update_submodules.sh b/automation_tools/force_update_submodules.sh index 50c249c7..5c01c3ef 100755 --- a/automation_tools/force_update_submodules.sh +++ b/automation_tools/force_update_submodules.sh @@ -2,16 +2,27 @@ # WARNING: DANGEROUS! Don't use this script lightly -git submodule deinit --all -rm rd-submodules/retroarch +git submodule deinit -f --all + +rm -rf rd-submodules/retroarch git rm -rf --cached rd-submodules/retroarch rm -rf .git/modules/rd-submodules/retroarch -rm -rf shared-modules -git rm -rf --cached shared-modules -rm -rf .git/modules/shared-modules + +rm -rf rd-submodules/ryujinx +git rm -rf --cached rd-submodules/ryujinx +rm -rf .git/modules/rd-submodules/ryujinx + +rm -rf rd-submodules/shared-modules +git rm -rf --cached rd-submodules/shared-modules +rm -rf .git/modules/rd-submodules/shared-modules + +rm .gitmodules + +# Do a commit here before giving the next commands + +git submodule add https://github.com/flathub/shared-modules.git rd-submodules/shared-modules +git submodule add https://github.com/flathub/org.libretro.RetroArch.git rd-submodules/retroarch +git submodule add https://github.com/flathub/org.ryujinx.Ryujinx rd-submodules/ryujinx git submodule init -git submodule add https://github.com/flathub/shared-modules.git -git submodule add https://github.com/flathub/org.libretro.RetroArch rd-submodules/retroarch - -git submodule update --remote --merge --recursive \ No newline at end of file +git submodule update --remote --merge --recursive diff --git a/emu-configs/cemu/settings.xml b/emu-configs/cemu/settings.xml index 8b42dae2..0db3cf2b 100644 --- a/emu-configs/cemu/settings.xml +++ b/emu-configs/cemu/settings.xml @@ -7,6 +7,7 @@ 0 true false + false false true false @@ -90,11 +91,11 @@ 1 1 0 - 50 - 0 - 50 - alsa_output.pci-0000_04_00.5-platform-acp5x_mach.0.HiFi__hw_acp5x_1__sink - alsa_output.pci-0000_04_00.5-platform-acp5x_mach.0.HiFi__hw_acp5x_1__sink + 100 + 100 + 100 + alsa_output.pci-0000_04_00.1.hdmi-stereo-extra2 + alsa_output.pci-0000_04_00.1.hdmi-stereo-extra2 filter-chain-source diff --git a/emu-configs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg b/emu-configs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg index e69de29b..1049836f 100644 --- a/emu-configs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg +++ b/emu-configs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg @@ -0,0 +1 @@ +1201^1231^0000^2359^RetroDECK-Xmas-splash.svg diff --git a/emu-configs/defaults/retrodeck/retrodeck.cfg b/emu-configs/defaults/retrodeck/retrodeck.cfg index b821b596..adf10001 100644 --- a/emu-configs/defaults/retrodeck/retrodeck.cfg +++ b/emu-configs/defaults/retrodeck/retrodeck.cfg @@ -39,14 +39,14 @@ pcsx2=false retroarch=false [borders] -gb=true -gba=true -gbc=true -genesis=true -gg=true -n64=true -psx_ra=true -snes=true +gb=false +gba=false +gbc=false +genesis=false +gg=false +n64=false +psx_ra=false +snes=false [widescreen] genesis=false diff --git a/emu-configs/dolphin/GCPadNew.ini b/emu-configs/dolphin/GCPadNew.ini index bb81f4ac..1882559e 100644 --- a/emu-configs/dolphin/GCPadNew.ini +++ b/emu-configs/dolphin/GCPadNew.ini @@ -4,7 +4,7 @@ Buttons/A = SOUTH Buttons/B = EAST Buttons/X = NORTH Buttons/Y = WEST -Buttons/Z = `Full Axis 5+` +Buttons/Z = TR Buttons/Start = START Main Stick/Up = `Axis 1-` Main Stick/Down = `Axis 1+` @@ -20,8 +20,8 @@ C-Stick/Right = `Axis 3+` C-Stick/Modifier = `Ctrl` C-Stick/Modifier/Range = 50.0 C-Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 -Triggers/L = TL -Triggers/R = TR +Triggers/L = `Full Axis 2+` +Triggers/R = `Full Axis 5+` D-Pad/Up = `Axis 7-` D-Pad/Down = `Axis 7+` D-Pad/Left = `Axis 6-` diff --git a/emu-configs/rpcs3/config.yml b/emu-configs/rpcs3/config.yml index 433d5c60..2660b26e 100644 --- a/emu-configs/rpcs3/config.yml +++ b/emu-configs/rpcs3/config.yml @@ -7,7 +7,7 @@ Core: Use LLVM CPU: "" Max LLVM Compile Threads: 0 PPU LLVM Greedy Mode: false - PPU LLVM Precompilation: true + LLVM Precompilation: true Thread Scheduler Mode: Operating System Set DAZ and FTZ: false SPU Decoder: Recompiler (LLVM) @@ -33,9 +33,7 @@ Core: MFC Commands Timeout: 0 MFC Commands Shuffling In Steps: false Enable TSX: Disabled - Accurate xfloat: false - Approximate xfloat: true - Relaxed xfloat: true + XFloat Accuracy: Approximate Accurate PPU 128-byte Reservation Op Max Length: 0 Stub PPU Traps: 0 Full Width AVX-512: false @@ -61,6 +59,7 @@ Core: Max CPU Preempt Count: 0 Allow RSX CPU Preemptions: true Sleep Timers Accuracy: As Host + Usleep Time Addend: 0 Performance Report Threshold: 500 Enable Performance Report: false Assume External Debugger: false @@ -74,15 +73,16 @@ Video: Renderer: Vulkan Resolution: 1280x720 Aspect ratio: 16:9 - Frame limit: Auto + Frame limit: 30 Second Frame Limit: 0 MSAA: Auto Shader Mode: Async Shader Recompiler - Shader Precision: High + Shader Precision: Auto Write Color Buffers: false Write Depth Buffer: false Read Color Buffers: false Read Depth Buffer: false + Handle RSX Memory Tiling: false Log shader programs: false VSync: false Debug output: false @@ -104,7 +104,7 @@ Video: Strict Texture Flushing: false Multithreaded RSX: false Relaxed ZCULL Sync: false - Enable 3D: false + 3D Display Mode: Disabled Debug Program Analyser: false Accurate ZCULL stats: true Consecutive Frames To Draw: 1 @@ -123,13 +123,14 @@ Video: Disable MSL Fast Math: false Output Scaling Mode: Bilinear Vulkan: - Adapter: AMD RADV VANGOGH + Adapter: AMD Custom GPU 0405 (RADV VANGOGH) Force FIFO present mode: false Force primitive restart flag: false Exclusive Fullscreen Mode: Automatic Asynchronous Texture Streaming 2: false FidelityFX CAS Sharpening Intensity: 50 Asynchronous Queue Scheduler: Fast + VRAM allocation limit (MB): 65536 Performance Overlay: Enabled: false Enable Framerate Graph: false @@ -186,9 +187,13 @@ Input/Output: Turntable emulated controller: "Null" GHLtar emulated controller: "Null" Pad handler mode: Single-threaded + Keep pads connected: false Pad handler sleep (microseconds): 1000 Background input enabled: true Show move cursor: false + Lock overlay input to player one: false + Emulated Midi devices: Keyboardßßß@@@Keyboardßßß@@@Keyboardßßß@@@ + Load SDL GameController Mappings: true System: License Area: SCEE Language: English (US) @@ -197,6 +202,8 @@ System: Console time offset (s): 0 PSID high: 0 PSID low: 0 + HDD Model Name: "" + HDD Serial Number: "" Net: Internet enabled: Disconnected IP address: 0.0.0.0 @@ -208,15 +215,18 @@ Net: Savestate: Start Paused: false Suspend Emulation Savestate Mode: true + Compatible Savestate Mode: false Inspection Mode Savestates: false Save Disc Game Data: false Miscellaneous: Automatically start games after boot: true Exit RPCS3 when process finishes: true + Pause emulation on RPCS3 focus loss: false Start games in fullscreen mode: true Prevent display sleep while running games: true Show trophy popups: true Show shader compilation hint: true + Show PPU compilation hint: true Use native user interface: true GDB Server: 127.0.0.1:2345 Silence All Logs: false diff --git a/es-configs/es_settings.xml b/es-configs/es_settings.xml index 93de24b3..1b15f6b8 100644 --- a/es-configs/es_settings.xml +++ b/es-configs/es_settings.xml @@ -3,6 +3,7 @@ + @@ -69,6 +70,7 @@ + @@ -101,6 +103,7 @@ + @@ -113,7 +116,7 @@ - + @@ -144,11 +147,13 @@ + + - + \ No newline at end of file diff --git a/es-configs/es_systems.xml b/es-configs/es_systems.xml index d3c8068d..ff882dd5 100644 --- a/es-configs/es_systems.xml +++ b/es-configs/es_systems.xml @@ -242,17 +242,18 @@ atarijaguar atarijaguar - + - + %STARTDIR%=%EMUDIR% %PRECOMMAND_WINE% %EMULATOR_BIGPEMU-WINDOWS% %ROM% + %STARTDIR%=%EMUDIR% %PRECOMMAND_PROTON% %EMULATOR_BIGPEMU-WINDOWS% %ROM% atarijaguarcd atarijaguarcd +--> atarilynx Atari Lynx diff --git a/functions/dialogs.sh b/functions/dialogs.sh index 00393287..baaba7bb 100644 --- a/functions/dialogs.sh +++ b/functions/dialogs.sh @@ -113,7 +113,7 @@ configurator_move_folder_dialog() { unlink "$dest_root/$rd_dir_path" # In case there is already a symlink at the picked destination move "$dir_to_move" "$dest_root/$rd_dir_path" if [[ -d "$dest_root/$rd_dir_path" ]]; then # If the move succeeded - eval "$rd_dir_name"="$dest_root/$rd_dir_path" # Set the new path for that folder variable in retrodeck.cfg + declare -g "$rd_dir_name=$dest_root/$rd_dir_path" # Set the new path for that folder variable in retrodeck.cfg if [[ "$rd_dir_name" == "rdhome" ]]; then # If the whole retrodeck folder was moved... prepare_emulator "postmove" "retrodeck" fi @@ -146,7 +146,7 @@ configurator_move_folder_dialog() { else # The folder to move was not found at the path pulled from retrodeck.cfg and it needs to be reconfigured manually. configurator_generic_dialog "RetroDECK Configurator - Move Folder" "The $(basename $dir_to_move) folder was not found at the expected location.\n\nThis may have happened if the folder was moved manually.\n\nPlease select the current location of the folder." dir_to_move=$(directory_browse "RetroDECK $(basename $dir_to_move) directory location") - eval "$rd_dir_name"="$dir_to_move" + declare -g "$rd_dir_name=$dir_to_move" prepare_emulator "postmove" "all" conf_write configurator_generic_dialog "RetroDECK Configurator - Move Folder" "RetroDECK $(basename $dir_to_move) folder now configured at\n$dir_to_move." diff --git a/functions/functions.sh b/functions/functions.sh index e34a56a6..56403bbe 100644 --- a/functions/functions.sh +++ b/functions/functions.sh @@ -9,14 +9,14 @@ directory_browse() { while [ $path_selected == false ] do local target="$(zenity --file-selection --title="Choose $1" --directory)" - if [ ! -z $target ] #yes + if [ ! -z "$target" ] #yes then zenity --question --no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --title "RetroDECK" --cancel-label="No" --ok-label "Yes" \ --text="Directory $target chosen, is this correct?" if [ $? == 0 ] then path_selected=true - echo $target + echo "$target" break fi else @@ -161,7 +161,7 @@ conf_read() { if [[ "$current_section" == "" || "$current_section" == "paths" || "$current_section" == "options" ]]; then local current_setting_name=$(get_setting_name "$current_setting_line" "retrodeck") # Read the variable name from the current line local current_setting_value=$(get_setting_value "$rd_conf" "$current_setting_name" "retrodeck" "$current_section") # Read the variables value from retrodeck.cfg - eval "$current_setting_name=$current_setting_value" # Write the current setting name and value to memory + declare -g "$current_setting_name=$current_setting_value" # Write the current setting name and value to memory fi fi fi @@ -341,7 +341,7 @@ finit() { local finit_dest_choice=$(configurator_destination_choice_dialog "RetroDECK data" "Welcome to the first configuration of RetroDECK.\nThe setup will be quick but please READ CAREFULLY each message in order to avoid misconfigurations.\n\nWhere do you want your RetroDECK data folder to be located?\n\nThis folder will contain all ROMs, BIOSs and scraped data." ) echo "Choice is $finit_dest_choice" - case $finit_dest_choice in + case "$finit_dest_choice" in "Back" | "" ) # Back or X button quits rm -f "$rd_conf" # Cleanup unfinished retrodeck.cfg if first install is interrupted @@ -352,8 +352,8 @@ finit() { "Internal Storage" ) # Internal echo "Internal selected" rdhome="$HOME/retrodeck" - if [[ -L $rdhome ]]; then #Remove old symlink from existing install, if it exists - unlink $rdhome + if [[ -L "$rdhome" ]]; then #Remove old symlink from existing install, if it exists + unlink "$rdhome" fi ;; @@ -366,9 +366,9 @@ finit() { --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ --title "RetroDECK" \ --ok-label "Browse" \ - --text="SD Card was not find in the default location.\nPlease choose the SD Card root.\nA retrodeck folder will be created starting from the directory that you selected." - rdhome=$(finit_browse) # Calling the browse function - if [[ -z $rdhome ]]; then # If user hit the cancel button + --text="SD Card was not found in the default location.\nPlease choose the SD Card root.\nA retrodeck folder will be created starting from the directory that you selected." + rdhome="$(finit_browse)" # Calling the browse function + if [[ -z "$rdhome" ]]; then # If user hit the cancel button rm -f "$rd_conf" # Cleanup unfinished retrodeck.cfg if first install is interrupted exit 2 fi @@ -395,8 +395,8 @@ finit() { --title "RetroDECK" \ --ok-label "Browse" \ --text="Please choose the root folder for the RetroDECK data.\nA retrodeck folder will be created starting from the directory that you selected." - rdhome=$(finit_browse) # Calling the browse function - if [[ -z $rdhome ]]; then # If user hit the cancel button + rdhome="$(finit_browse)" # Calling the browse function + if [[ -z "$rdhome" ]]; then # If user hit the cancel button rm -f "$rd_conf" # Cleanup unfinished retrodeck.cfg if first install is interrupted exit 2 fi @@ -414,7 +414,7 @@ finit() { if [[ "$finit_options_choices" =~ (rpcs3_firmware|Enable All) ]]; then # Additional information on the firmware install process, as the emulator needs to be manually closed configurator_generic_dialog "RPCS3 Firmware Install" "You have chosen to install the RPCS3 firmware during the RetroDECK first setup.\n\nThis process will take several minutes and requires network access.\n\nRPCS3 will be launched automatically at the end of the RetroDECK setup process.\nOnce the firmware is installed, please close the emulator to finish the process." fi - + zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --title "RetroDECK" \ --text="RetroDECK will now install the needed files, which can take up to one minute.\nRetroDECK will start once the process is completed.\n\nPress OK to continue." @@ -423,7 +423,7 @@ finit() { prepare_emulator "reset" "all" build_retrodeck_current_presets deploy_helper_files - + # Optional actions based on user choices if [[ "$finit_options_choices" =~ (rpcs3_firmware|Enable All) ]]; then if [[ $(check_network_connectivity) == "true" ]]; then @@ -433,7 +433,7 @@ finit() { if [[ "$finit_options_choices" =~ (rd_controller_profile|Enable All) ]]; then install_retrodeck_controller_profile fi - if [[ "$finit_options_choices" =~ (rd_prepacks|Enable All) ]]; then + if [[ "$finit_options_choices" =~ (rd_prepacks|Enable All) ]]; then install_retrodeck_starterpack fi @@ -449,7 +449,7 @@ finit() { install_retrodeck_starterpack() { # This function will install the roms, gamelists and metadata for the RetroDECK Starter Pack, a curated selection of games the creators of RetroDECK enjoy. # USAGE: 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/.emulationstation/gamelists/doom" diff --git a/functions/global.sh b/functions/global.sh index 93dbb93c..9bfa04e8 100644 --- a/functions/global.sh +++ b/functions/global.sh @@ -126,9 +126,13 @@ if [[ ! -f "$rd_conf" ]]; then fi # Check if SD card path has changed from SteamOS update - if [[ ! -d $default_sd && "$(ls -A /run/media/deck/)" ]]; then - configurator_generic_dialog "RetroDECK Setup" "The SD card was not found in the expected location.\nThis may happen when SteamOS is updated.\n\nPlease browse to the current location of the SD card.\n\nIf you are not using an SD card, please click \"Cancel\"." - default_sd=$(directory_browse "SD Card Location") + if [[ ! -d "$default_sd" && "$(ls -A /run/media/deck/)" ]]; then + if [[ $(find media/deck/* -maxdepth 0 -type d -print | wc -l) -eq 1 ]]; then # If there is only one SD card found in the new Steam OS 3.5 location, assign it as the default + default_sd="$(find media/deck/* -maxdepth 0 -type d -print)" + else # If the default legacy path cannot be found, and there are multiple entries in the new Steam OS 3.5 SD card path, let the user pick which one to use + configurator_generic_dialog "RetroDECK Setup" "The SD card was not found in the expected location.\nThis may happen when SteamOS is updated.\n\nPlease browse to the current location of the SD card.\n\nIf you are not using an SD card, please click \"Cancel\"." + default_sd="$(directory_browse "SD Card Location")" + fi fi cp $rd_defaults $rd_conf # Load default settings file diff --git a/functions/patching.sh b/functions/patching.sh index 32380327..0ed8a7b2 100644 --- a/functions/patching.sh +++ b/functions/patching.sh @@ -17,7 +17,7 @@ set_setting_value() { sed -i '\^\['"$current_section_name"'\]^,\^\^'"$setting_name_to_change"'=^s^\^'"$setting_name_to_change"'=.*^'"$setting_name_to_change"'='"$setting_value_to_change"'^' "$1" fi if [[ "$4" == "retrodeck" && ("$current_section_name" == "" || "$current_section_name" == "paths" || "$current_section_name" == "options") ]]; then # If a RetroDECK setting is being changed, also write it to memory for immediate use - eval "$setting_name_to_change=$setting_value_to_change" + declare -g "$setting_name_to_change=$setting_value_to_change" fi ;; diff --git a/functions/post_update.sh b/functions/post_update.sh index 82496a43..e6366076 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -229,6 +229,11 @@ post_update() { set_setting_value "$ppssppcontrolsconf" "R" "1-51,10-192" "ppsspp" "ControlMapping" fi + if [[ $prev_version -le "073" ]]; then + # In version 0.7.3b, there was a bug that prevented the correct creations of the roms/system folders, so we force recreate them. + emulationstation --home /var/config/emulationstation --create-system-dirs + fi + # The following commands are run every time. if [[ -d "/var/data/dolphin-emu/Load/DynamicInputTextures" ]]; then # Refresh installed textures if they have been enabled diff --git a/functions/prepare_emulator.sh b/functions/prepare_emulator.sh index 2eb1afa2..3dfb60cd 100644 --- a/functions/prepare_emulator.sh +++ b/functions/prepare_emulator.sh @@ -19,7 +19,7 @@ prepare_emulator() { local current_setting_name=$(get_setting_name "$config_line" "retrodeck") if [[ ! $current_setting_name =~ (rdhome|sdcard) ]]; then # Ignore these locations local current_setting_value=$(get_setting_value "$rd_conf" "$current_setting_name" "retrodeck" "paths") - eval "$current_setting_name=$rdhome/$(basename $current_setting_value)" + declare -g "$current_setting_name=$rdhome/$(basename $current_setting_value)" mkdir -p "$rdhome/$(basename $current_setting_value)" fi done < <(grep -v '^\s*$' $rd_conf | awk '/^\[paths\]/{f=1;next} /^\[/{f=0} f') @@ -30,7 +30,7 @@ prepare_emulator() { if [[ ! $current_setting_name =~ (rdhome|sdcard) ]]; then # Ignore these locations local current_setting_value=$(get_setting_value "$rd_conf" "$current_setting_name" "retrodeck" "paths") if [[ -d "$rdhome/$(basename $current_setting_value)" ]]; then # If the folder exists at the new ~/retrodeck location - eval "$current_setting_name=$rdhome/$(basename $current_setting_value)" + declare -g "$current_setting_name=$rdhome/$(basename $current_setting_value)" fi fi done < <(grep -v '^\s*$' $rd_conf | awk '/^\[paths\]/{f=1;next} /^\[/{f=0} f') @@ -45,9 +45,9 @@ prepare_emulator() { 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/.emulationstation/gamelists" emulationstation --home /var/config/emulationstation --create-system-dirs update_splashscreens - dir_prep "$rdhome/gamelists" "/var/config/emulationstation/.emulationstation/gamelists" fi if [[ "$action" == "postmove" ]]; then set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings" diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index 93affa66..543b1113 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -65,12 +65,39 @@ GPL-3.0 CC0-1.0 - - https://github.com/XargonWan/RetroDECK/releases/tag/0.8.0b + + https://github.com/XargonWan/RetroDECK/releases/tag/0.7.5b -

News:

+

Bug fixes and other changes:

    -
  • Welcome to cooker 0.8.0b!
  • +
  • RetroDECK Team wishes you happy holidays with a festive loading screen!
  • +
  • Framework: Fixed the SD card path resolution for SteamOS 3.5
  • +
  • Configurator: Added the possibility to reset ES-DE configs via Configurator and CLI
  • +
  • RetroArch: Borders/Overlays are now disabled by default on fresh installs to prevent screen burn-in
  • +
  • RetroArch: added nightly cores, stable cores have priority over them
  • +
  • RPCS3: tweaked confing to improve performance
  • +
  • Dolphin (SA): fixed GC buttons layout. Now R1 is Z and L2/R2 are L/R
  • +
  • CEMU: tweaked audio config to choose the correct output device when docked
  • +
+

Updates:

+
    +
  • All standalone emulators to their latest versions (prior to llvm17 and 6.6 framework updates)
  • +
+
+
+ + https://github.com/XargonWan/RetroDECK/releases/tag/0.7.4b + +

Hotfix:

+
    +
  • Fixed a bug where the system folders were not correctly generated
  • +
  • Fixed a bug where the RetroDECK Configurator desktop file was not opening the Configurator from Desktop Mode
  • +
  • Fixed a bug where the theme was not showing correctly
  • +
  • Added retrodeck and configurator commands to be called from the shell or bash inside flatpak
  • +
+

Known issues:

+
    +
  • Please check the know issues in the Wiki under General Infomration.
diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 55a0fa83..b6153c69 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -34,7 +34,7 @@ finish-args: - --talk-name=org.freedesktop.login1.Manager - --talk-name=org.freedesktop.portal.Flatpak.UpdateMonitor - --filesystem=xdg-run/app/com.discordapp.Discord:create - - --filesystem=xdg-config/gtk-3.0:ro + #- --filesystem=xdg-config/gtk-3.0:ro #not needed as we got --filesystem=home # Dolphin - --allow=bluetooth # PPSSPP @@ -87,9 +87,9 @@ modules: build-commands: - | - # on main please update this with the version variable, eg: VERSION='0.7.3b' + # on main please update this with the version variable, eg: VERSION='0.7.4b' # on cooker will be THISBRANCH - VERSION=0.7.3b + VERSION=THISBRANCH git checkout ${GITHUB_REF_NAME} mkdir -p ${FLATPAK_DEST}/retrodeck/ @@ -399,8 +399,10 @@ modules: - -DENABLE_BOOST=OFF sources: - type: archive - url: https://gitlab.freedesktop.org/poppler/poppler/-/archive/poppler-22.11.0/poppler-poppler-22.11.0.tar.bz2 - sha256: b8f618d5c62030034d5c8da4d3f6a740260b7620b9a31021679ce1914d327f81 + # original link not working, found a mirror + url: https://poppler.freedesktop.org/poppler-22.11.0.tar.xz + #url: https://gitlab.freedesktop.org/poppler/poppler/-/archive/poppler-22.11.0/poppler-poppler-22.11.0.tar.bz2 + sha256: 093ba9844ed774285517361c15e21a31ba4df278a499263d4403cca74f2da828 cleanup: - /lib/pkgconfig - /include @@ -572,11 +574,22 @@ modules: # RetroArch - END # Not part of the offical RetroArch manifest + # retroarch-cores-nightly must be earlier than retroarch-cores as it will overwrite this cores with the stable ones + - name: retroarch-cores-nightly + buildsystem: simple + build-commands: + - mkdir -p /app/share/libretro/cores/ + - mv -f ./RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/cores/* /app/share/libretro/cores/ + sources: + - type: archive + url: https://buildbot.libretro.com/nightly/linux/x86_64/RetroArch_cores.7z + sha256: RANIGHTLYCORESPLACEHOLDER + - name: retroarch-cores buildsystem: simple build-commands: - mkdir -p /app/share/libretro/cores/ - - mv ./RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/cores/* /app/share/libretro/cores/ + - mv -f ./RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/cores/* /app/share/libretro/cores/ sources: - type: archive url: https://buildbot.libretro.com/stable/1.16.0/linux/x86_64/RetroArch_cores.7z @@ -690,8 +703,8 @@ modules: - ln -s "${FLATPAK_DEST}/yuzu/usr/bin/yuzu" "${FLATPAK_DEST}/bin/yuzu" sources: - type: file - url: https://github.com/yuzu-emu/yuzu-mainline/releases/download/mainline-0-1618/yuzu-mainline-20231112-3cff94a38.AppImage - sha256: 4e92d6daeb1f288ca18950ed47b068fb971766ee386b012b9400b5caecad4246 + url: https://github.com/yuzu-emu/yuzu-mainline/releases/download/mainline-0-1648/yuzu-mainline-20231211-14c24e64e.AppImage + sha256: d40f61c2abf8ddd0bb53098e2d9edf0c47e1cfd89e50cf5856b8cc27dbb25bd6 # Yuzu - END @@ -777,8 +790,8 @@ modules: - ln -s "${FLATPAK_DEST}/pcsx2-qt/usr/bin/pcsx2-qt" "${FLATPAK_DEST}/bin/pcsx2-qt" sources: - type: file - url: https://github.com/PCSX2/pcsx2/releases/download/v1.7.5186/pcsx2-v1.7.5186-linux-appimage-x64-Qt.AppImage - sha256: 9fd8108c11fd273a4a0c801a6ee2da802643966e61e0a53528f7dd023ece55dd + url: https://github.com/PCSX2/pcsx2/releases/download/v1.7.5284/pcsx2-v1.7.5284-linux-appimage-x64-Qt.AppImage + sha256: b3cb23e07435f7efe7145cddd0cf4d473cc65eee8feae436b8a718fc3017721a # PCSX2 - END @@ -995,7 +1008,7 @@ modules: sources: - type: git url: https://github.com/RPCS3/rpcs3.git - commit: 75d239356a773b8211354049477d79006597505e + commit: f9d213650cfe4733937c43d93de91a17f8582820 # RPCS3 - END @@ -1133,7 +1146,8 @@ modules: url-template: https://github.com/fmtlib/fmt/archive/$version.tar.gz versions: {<: '10.0'} - - name: wxwidgets + - name: wxWidgets + buildsystem: cmake-ninja cleanup: - /bin - /include @@ -1142,13 +1156,14 @@ modules: - /share sources: - type: archive - url: https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.2.1/wxWidgets-3.2.2.1.tar.bz2 - sha256: dffcb6be71296fff4b7f8840eb1b510178f57aa2eb236b20da41182009242c02 + url: https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.4/wxWidgets-3.2.4.tar.bz2 + sha256: 0640e1ab716db5af2ecb7389dbef6138d7679261fbff730d23845ba838ca133e x-checker-data: type: anitya project-id: 5150 stable-only: true url-template: https://github.com/wxWidgets/wxWidgets/releases/download/v$version/wxWidgets-$version.tar.bz2 + versions: {'!=': 3.2.4-with-msvs2012-fix} - name: Cemu buildsystem: cmake-ninja @@ -1165,8 +1180,8 @@ modules: x-checker-data: type: git tag-pattern: ^v([\d.]+-\d+)$ - tag: v2.0-59 - commit: f3c95f72e74d8a5f5873061fbb994643c63ec9c5 + tag: v2.0-61 + commit: b6aaf6633063be47d89a8216e269e32aec5a4b49 - type: shell commands: - sed "s/set(EXPERIMENTAL_VERSION.*/set(EXPERIMENTAL_VERSION \"$(git describe diff --git a/rd-submodules/retroarch b/rd-submodules/retroarch index 9dc43930..a9682176 160000 --- a/rd-submodules/retroarch +++ b/rd-submodules/retroarch @@ -1 +1 @@ -Subproject commit 9dc439300e92338d5b2bc3fc680eedd4fe1d3b0c +Subproject commit a96821769848a711db1ed0b71883f91383e2b4ab diff --git a/rd-submodules/ryujinx b/rd-submodules/ryujinx index ff79306a..f9e0cd83 160000 --- a/rd-submodules/ryujinx +++ b/rd-submodules/ryujinx @@ -1 +1 @@ -Subproject commit ff79306a50b484ce992d02a23e091d79fcde4cac +Subproject commit f9e0cd83f366025c15de7de46621963cab793ea9 diff --git a/rd-submodules/shared-modules b/rd-submodules/shared-modules index 76809270..55a8e460 160000 --- a/rd-submodules/shared-modules +++ b/rd-submodules/shared-modules @@ -1 +1 @@ -Subproject commit 76809270588f87c6c14df96fef2dde9a7bac84f4 +Subproject commit 55a8e460c6343229597a13e973ba4855c27a1c4c diff --git a/res/extra_splashes/RetroDECK-Xmas-splash.svg b/res/extra_splashes/RetroDECK-Xmas-splash.svg new file mode 100644 index 00000000..da779565 --- /dev/null +++ b/res/extra_splashes/RetroDECK-Xmas-splash.svg @@ -0,0 +1,1736 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/retrodeck.sh b/retrodeck.sh index 763229c5..daeb3cc8 100644 --- a/retrodeck.sh +++ b/retrodeck.sh @@ -20,6 +20,7 @@ Arguments: --compress-one Compresses target file to a compatible format --compress-all Compresses all supported games into compatible format. Available formats are \"chd\", \"zip\", \"rvz\" and \"all\". --reset-emulator Reset one or more emulator configs to the default values + --reset-emulationstation Reset EmulationStation DE to default settings --reset-retrodeck Starts the initial RetroDECK installer (backup your data first!) For flatpak run specific options please run: flatpak run -h @@ -73,6 +74,18 @@ https://retrodeck.net exit fi ;; + --reset-emulationstation*) + echo "You are about to reset EmulationStation DE to default settings. Your scraped media, downloaded themes and gamelists will remain untouched." + read -p "Enter 'y' to continue, 'n' to stop: " response + if [[ $response == [yY] ]]; then + prepare_emulator "reset" "emulationstation" "cli" + read -p "The process has been completed, press Enter key to start RetroDECK." + shift # Continue launch after previous command is finished + else + read -p "The process has been cancelled, press Enter key to exit." + exit + fi + ;; --reset-retrodeck*) echo "You are about to reset RetroDECK completely!" read -p "Enter 'y' to continue, 'n' to stop: " response diff --git a/tools/configurator.sh b/tools/configurator.sh index f4153b02..7638c73d 100644 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -81,6 +81,7 @@ source /app/libexec/global.sh # - Reset XEMU # - Reset Yuzu # - Reset All Emulators +# - Reset EmulationStation DE # - Reset RetroDECK # - RetroDECK: About # - RetroDECK Version History @@ -983,6 +984,7 @@ configurator_reset_dialog() { --column="Choice" --column="Action" \ "Reset Specific Emulator" "Reset only one specific emulator to default settings" \ "Reset All Emulators" "Reset all emulators to default settings" \ + "Reset EmulationStation DE" "Reset the ES-DE frontend" \ "Reset RetroDECK" "Reset RetroDECK to default settings" ) case $choice in @@ -1052,6 +1054,20 @@ configurator_reset_dialog() { fi ;; +"Reset EmulationStation DE" ) + if [[ $(configurator_reset_confirmation_dialog "EmulationStation DE" "Are you sure you want to reset EmulationStation DE to default settings?\n\nYour scraped media, downloaded themes and gamelists will not be touched.\n\nThis process cannot be undone.") == "true" ]]; then + zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --title "RetroDECK Configurator Utility - Reset EmulationStation DE" \ + --text="You are resetting EmulationStation DE to its default settings.\n\nAfter the process is complete you will need to exit RetroDECK and run it again." + prepare_emulator "reset" "emulationstation" "configurator" + configurator_process_complete_dialog "resetting EmulationStation DE" + else + configurator_generic_dialog "RetroDeck Configurator - EmulationStation DE: Reset" "Reset process cancelled." + configurator_reset_dialog + fi +;; + "Reset RetroDECK" ) if [[ $(configurator_reset_confirmation_dialog "RetroDECK" "Are you sure you want to reset RetroDECK entirely?\n\nThis process cannot be undone.") == "true" ]]; then zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \