mirror of
https://github.com/RetroDECK/RetroDECK.git
synced 2024-12-01 01:55:42 +00:00
XargonWan
573964e5b2
* Feat/ruffle (#884)
* CEMU: added wrapper + RPCS3 fixes
* THE GREAT FOLDER MOVE (aka let's see how much things I can break in a single commit)
* emu: fixed dest filename for the wrapper
* Cemu: fixing wrapper installation
* CEMU: fixed wrapper again [skip ci]
* MANIFEST: cleanup [skip ci]
* MANIFEST: cleanup [skip ci]
* MANIFEST: trying to add LLVM to solve PCSX2, Duckstation issues
* MANIFEST: adding llvm doesn't change the situation, removed
* MANIFEST: trying to add vulkan
* MANIFEST: trying to add vulkan - removed as it should be already in (and that's broken)
* VULKAN: testing some libraries
* Create Godot.yml
* Rename main.yml to godot.yml
* Update godot.yml
* Update godot.yml
* Update godot.yml
* Update godot.yml
* VULKAN: trying to add shaderc
* VULKAN: trying to add shaderc - nope [skip ci]
* Added logging as a function.
Added github workflow to build configurator
On branch feat/godot-configurator
Changes to be committed:
new file: .github/workflows/build-configurator.yml
new file: tools/configurator/basic
modified: tools/configurator/components/bios_check/bios_check.gd
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
modified: tools/configurator/scripts/class_functions.gd
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
modified: tools/configurator/export_presets.cfg
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/export_presets.cfg
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.gd
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.gd
* Theme and Theme Inheritance
On branch feat/godot-configurator
Changes to be committed:
new file: tools/configurator/assets/fonts/OpenDyslexic3/OpenDyslexic3-Bold.ttf
new file: tools/configurator/assets/fonts/OpenDyslexic3/OpenDyslexic3-Bold.ttf.import
new file: tools/configurator/assets/fonts/OpenDyslexic3/OpenDyslexic3-Regular.ttf
new file: tools/configurator/assets/fonts/OpenDyslexic3/OpenDyslexic3-Regular.ttf.import
new file: tools/configurator/assets/fonts/akrobat/Akrobat-Black.otf
new file: tools/configurator/assets/fonts/akrobat/Akrobat-Black.otf.import
new file: tools/configurator/assets/fonts/akrobat/Akrobat-Bold.otf
new file: tools/configurator/assets/fonts/akrobat/Akrobat-Bold.otf.import
new file: tools/configurator/assets/fonts/akrobat/Akrobat-ExtraLight.otf
new file: tools/configurator/assets/fonts/akrobat/Akrobat-ExtraLight.otf.import
new file: tools/configurator/assets/fonts/akrobat/Akrobat-Light.otf
new file: tools/configurator/assets/fonts/akrobat/Akrobat-Light.otf.import
new file: tools/configurator/assets/fonts/akrobat/Akrobat-Regular.otf
new file: tools/configurator/assets/fonts/akrobat/Akrobat-Regular.otf.import
new file: tools/configurator/assets/fonts/akrobat/Akrobat-SemiBold.otf
new file: tools/configurator/assets/fonts/akrobat/Akrobat-SemiBold.otf.import
new file: tools/configurator/assets/fonts/akrobat/akrobat-extrabold-webfont.ttf
new file: tools/configurator/assets/fonts/akrobat/akrobat-extrabold-webfont.ttf.import
new file: tools/configurator/assets/fonts/munro/munro-narrow.ttf
new file: tools/configurator/assets/fonts/munro/munro-narrow.ttf.import
new file: tools/configurator/assets/fonts/munro/munro-small.ttf
new file: tools/configurator/assets/fonts/munro/munro-small.ttf.import
new file: tools/configurator/assets/fonts/munro/munro.ttf
new file: tools/configurator/assets/fonts/munro/munro.ttf.import
new file: tools/configurator/assets/graphics/Rekku/Rekku-test.xcf
new file: tools/configurator/assets/graphics/Rekku/base.png
new file: tools/configurator/assets/graphics/Rekku/base.png.import
new file: tools/configurator/assets/graphics/Rekku/blink1.png
new file: tools/configurator/assets/graphics/Rekku/blink1.png.import
new file: tools/configurator/assets/graphics/Rekku/blink2.png
new file: tools/configurator/assets/graphics/Rekku/blink2.png.import
new file: tools/configurator/assets/graphics/Rekku/eyes-open.png
new file: tools/configurator/assets/graphics/Rekku/eyes-open.png.import
new file: tools/configurator/assets/graphics/Rekku/mouth-A.png
new file: tools/configurator/assets/graphics/Rekku/mouth-A.png.import
new file: tools/configurator/assets/graphics/Rekku/mouth-O.png
new file: tools/configurator/assets/graphics/Rekku/mouth-O.png.import
new file: tools/configurator/assets/graphics/Rekku/mouth-base.png
new file: tools/configurator/assets/graphics/Rekku/mouth-base.png.import
new file: tools/configurator/assets/graphics/Rekku/rekku-blink-down.png
new file: tools/configurator/assets/graphics/Rekku/rekku-blink-down.png.import
new file: tools/configurator/assets/graphics/Rekku/rekku-blink-up.png
new file: tools/configurator/assets/graphics/Rekku/rekku-blink-up.png.import
new file: tools/configurator/assets/graphics/Rekku/rekku-idle.png
new file: tools/configurator/assets/graphics/Rekku/rekku-idle.png.import
new file: tools/configurator/assets/graphics/Rekku/rekku-speak1.png
new file: tools/configurator/assets/graphics/Rekku/rekku-speak1.png.import
new file: tools/configurator/assets/graphics/Rekku/rekku-speak2.png
new file: tools/configurator/assets/graphics/Rekku/rekku-speak2.png.import
new file: tools/configurator/assets/graphics/retrodeck.png
new file: tools/configurator/assets/graphics/retrodeck.png.import
new file: tools/configurator/assets/themes/accesible_theme.tres
new file: tools/configurator/assets/themes/default_theme.tres
new file: tools/configurator/assets/themes/modern_theme.tres
new file: tools/configurator/assets/themes/retro_theme.tres
modified: tools/configurator/components/bios_check/bios_check.gd
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/components/popup.gd
* Added Emulator Select and Pick options.
On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* Rekku and Logo animations
On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
Untracked files:
tools/configurator/assets/graphics/retrodeck_base.png
tools/configurator/assets/graphics/retrodeck_base.png.import
tools/configurator/assets/graphics/retrodeck_base_anim.png
tools/configurator/assets/graphics/retrodeck_base_anim.png.import
tools/configurator/assets/graphics/retrodeck_base_anim.xcf
tools/configurator/assets/graphics/retrodeck_base_shake0.png
tools/configurator/assets/graphics/retrodeck_base_shake0.png.import
tools/configurator/assets/graphics/retrodeck_base_shake1.png
tools/configurator/assets/graphics/retrodeck_base_shake1.png.import
tools/configurator/assets/graphics/retrodeck_base_shake2.png
tools/configurator/assets/graphics/retrodeck_base_shake2.png.import
tools/configurator/assets/graphics/retrodeck_base_shake3.png
tools/configurator/assets/graphics/retrodeck_base_shake3.png.import
tools/configurator/assets/graphics/retrodeck_base_shake4.png
tools/configurator/assets/graphics/retrodeck_base_shake4.png.import
tools/configurator/rekku_animated.tscn
* Add Wobble!
On branch feat/godot-configurator
Changes to be committed:
new file: tools/configurator/assets/graphics/retrodeck_base.png
new file: tools/configurator/assets/graphics/retrodeck_base.png.import
new file: tools/configurator/assets/graphics/retrodeck_base_anim.png
new file: tools/configurator/assets/graphics/retrodeck_base_anim.png.import
new file: tools/configurator/assets/graphics/retrodeck_base_anim.xcf
new file: tools/configurator/assets/graphics/retrodeck_base_shake0.png
new file: tools/configurator/assets/graphics/retrodeck_base_shake0.png.import
new file: tools/configurator/assets/graphics/retrodeck_base_shake1.png
new file: tools/configurator/assets/graphics/retrodeck_base_shake1.png.import
new file: tools/configurator/assets/graphics/retrodeck_base_shake2.png
new file: tools/configurator/assets/graphics/retrodeck_base_shake2.png.import
new file: tools/configurator/assets/graphics/retrodeck_base_shake3.png
new file: tools/configurator/assets/graphics/retrodeck_base_shake3.png.import
new file: tools/configurator/assets/graphics/retrodeck_base_shake4.png
new file: tools/configurator/assets/graphics/retrodeck_base_shake4.png.import
new file: tools/configurator/rekku_animated.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/components/bios_check/bios_check.gd
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* ES-DE: testing out the new compact menu
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.tscn
* ES-DE: testing out the new compact menu - newer build
* Add change data for about us section via a csv
On branch feat/godot-configurator
Changes to be committed:
new file: tools/configurator/assets/data_lists/tk_about.Description.translation
new file: tools/configurator/assets/data_lists/tk_about.URL.translation
new file: tools/configurator/assets/data_lists/tk_about.csv
new file: tools/configurator/assets/data_lists/tk_about.csv.import
modified: tools/configurator/emu_list.yml
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
modified: tools/configurator/scripts/class_functions.gd
new file: tools/configurator/tk_about.gd
* On branch feat/godot-configurator
Changes to be committed:
deleted: configurator/assets/data_lists/tk_about.Description.translation
deleted: configurator/assets/data_lists/tk_about.URL.translation
deleted: configurator/assets/data_lists/tk_about.csv.import
new file: configurator/export/configurator.console.exe
new file: configurator/export/configurator.exe
new file: configurator/export/configurator.pck
new file: configurator/export/configurator.sh
new file: configurator/export/configurator.x86_64
renamed: configurator/assets/data_lists/tk_about.csv -> configurator/export/tk_about.txt
modified: configurator/export_presets.cfg
modified: configurator/tk_about.gd
new file: configurator/tk_about.txt
* Improved parsing of files for pulling out data
On branch feat/godot-configurator
Changes to be committed:
modified: main.gd
modified: res/pixel_ui_theme/RetroDECKTheme.tres
modified: scripts/class_functions.gd
modified: tk_about.gd
modified: tk_about.txt
* ES-DE: testing out the new compact menu - newer build 2
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/components/bios_check/bios_check.gd
new file: tools/configurator/data_list.json
new file: tools/configurator/data_list.yml
modified: tools/configurator/main.gd
modified: tools/configurator/project.godot
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
modified: tools/configurator/scripts/class_functions.gd
modified: tools/configurator/tk_about.gd
* Adding json support and supporting class
On branch feat/godot-configurator
Changes to be committed:
deleted: tools/configurator/basic
new file: tools/configurator/data.json
modified: tools/configurator/data_list.json
modified: tools/configurator/main.gd
modified: tools/configurator/project.godot
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
new file: tools/configurator/scripts/app_data.gd
modified: tools/configurator/scripts/class_functions.gd
new file: tools/configurator/scripts/data_handler.gd
new file: tools/configurator/scripts/emulator.gd
new file: tools/configurator/scripts/emulator_option.gd
new file: tools/configurator/scripts/emulator_property.gd
new file: tools/configurator/scripts/link.gd
new file: tools/configurator/scripts/save_manager.gd
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/data_list.json
modified: tools/configurator/export/configurator.pck
deleted: tools/configurator/export/tk_about.txt
modified: tools/configurator/main.gd
modified: tools/configurator/project.godot
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
modified: tools/configurator/scripts/data_handler.gd
modified: tools/configurator/scripts/emulator_property.gd
modified: tools/configurator/tk_about.gd
tools/configurator/export/data_list.json
* On branch feat/godot-configurator
Changes to be committed:
new file: tools/configurator/export/data_list.json
* Now includes modify json. Need cleaning up!
On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/data_list.json
modified: tools/configurator/export/configurator.pck
modified: tools/configurator/main.gd
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
modified: tools/configurator/scripts/data_handler.gd
* ES-DE: testing out the new compact menu - newer build 3
* Manifest: renaming es-de module to stick with the repo name for updating purposes
* ES-DE: updated module with new artifact URL and SHA256 [skip ci]
* Revert "ES-DE: updated module with new artifact URL and SHA256 [skip ci]"
This reverts commit b85ad1573d
.
* If this breaks to gzdoom is ok
* If this breaks to gzdoom is ok - fix
* Migrated to the new latest links
* MAME: frixed url
* PCSX2: updated to 2.1.55
* Tidying up
On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.gd
modified: tools/configurator/project.godot
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
modified: tools/configurator/scripts/data_handler.gd
deleted: tools/configurator/scripts/save_manager.gd
* On branch feat/godot-configurator
Changes to be committed:
deleted: tools/configurator/data.json
modified: tools/configurator/main.gd
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
modified: tools/configurator/scripts/data_handler.gd
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/scripts/data_handler.gd
modified: tools/configurator/tk_about.gd
* On branch feat/godot-configurator
Changes to be committed:
deleted: tools/configurator/assets/graphics/Rekku/Rekku-test.xcf
deleted: tools/configurator/assets/graphics/Rekku/base.png
deleted: tools/configurator/assets/graphics/Rekku/base.png.import
deleted: tools/configurator/assets/graphics/Rekku/blink1.png
deleted: tools/configurator/assets/graphics/Rekku/blink1.png.import
deleted: tools/configurator/assets/graphics/Rekku/blink2.png
deleted: tools/configurator/assets/graphics/Rekku/blink2.png.import
deleted: tools/configurator/assets/graphics/Rekku/eyes-open.png
deleted: tools/configurator/assets/graphics/Rekku/eyes-open.png.import
deleted: tools/configurator/assets/graphics/Rekku/mouth-A.png
deleted: tools/configurator/assets/graphics/Rekku/mouth-A.png.import
deleted: tools/configurator/assets/graphics/Rekku/mouth-O.png
deleted: tools/configurator/assets/graphics/Rekku/mouth-O.png.import
deleted: tools/configurator/assets/graphics/Rekku/mouth-base.png
deleted: tools/configurator/assets/graphics/Rekku/mouth-base.png.import
deleted: tools/configurator/assets/graphics/Rekku/rekku-blink-down.png
deleted: tools/configurator/assets/graphics/Rekku/rekku-blink-down.png.import
deleted: tools/configurator/assets/graphics/Rekku/rekku-blink-up.png
deleted: tools/configurator/assets/graphics/Rekku/rekku-blink-up.png.import
deleted: tools/configurator/assets/graphics/Rekku/rekku-idle.png
deleted: tools/configurator/assets/graphics/Rekku/rekku-idle.png.import
deleted: tools/configurator/assets/graphics/Rekku/rekku-speak1.png
deleted: tools/configurator/assets/graphics/Rekku/rekku-speak1.png.import
deleted: tools/configurator/assets/graphics/Rekku/rekku-speak2.png
deleted: tools/configurator/assets/graphics/Rekku/rekku-speak2.png.import
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/export_presets.cfg
modified: tools/configurator/main.gd
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/components/bios_check/bios_check.gd
modified: tools/configurator/main.tscn
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/components/bios_check/bios_check.gd
new file: tools/configurator/components/logs.tscn
new file: tools/configurator/components/logs/logs_popup_content.tscn
modified: tools/configurator/components/popup.tscn
modified: tools/configurator/data_list.json
deleted: tools/configurator/export/data_list.json
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* Trying a new workflow
* Trying a new workflow - fix
* Trying a new workflow - fix 2
* Reverting workfolw edits
* WORKFLOW: targetting the old repo for the release
* WORKFLOW: updated some actions to a newever version to avoid deprecation at the end of the year
* MISSING_LIBS: trying to fetch libshaderc
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/components/logs.tscn
renamed: tools/configurator/components/logs/logs_popup_content.tscn -> tools/configurator/components/logs_view/logs_popup_content.tscn
new file: tools/configurator/components/logs_view/view_log.gd
modified: tools/configurator/components/popup.gd
modified: tools/configurator/components/popup.tscn
modified: tools/configurator/data_list.json
modified: tools/configurator/main.gd
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
new file: tools/configurator/retrodeck.json
modified: tools/configurator/scripts/class_functions.gd
modified: tools/configurator/scripts/data_handler.gd
modified: tools/configurator/tk_about.gd
* On branch feat/godot-configurator
Changes to be committed:
deleted: tools/configurator/components/logs.tscn
modified: tools/configurator/components/logs_view/logs_popup_content.tscn
deleted: tools/configurator/components/logs_view/view_log.gd
modified: tools/configurator/components/popup.tscn
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
modified: net.retrodeck.retrodeck.yml
modified: tools/configurator/export_presets.cfg
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* MANIFEST: removng a newline
* Please enter the commit message for your changes. Lines starting
with '#' will be ignored, and an empty message aborts the commit.
On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
new file: tools/configurator/assets/icons/128/app.xemu.xemu.png
new file: tools/configurator/assets/icons/128/app.xemu.xemu.png.import
new file: tools/configurator/assets/icons/128/duckstation-nogui.png
new file: tools/configurator/assets/icons/128/duckstation-nogui.png.import
new file: tools/configurator/assets/icons/128/duckstation.png
new file: tools/configurator/assets/icons/128/duckstation.png.import
new file: tools/configurator/assets/icons/128/net.kuribo64.melonDS.png
new file: tools/configurator/assets/icons/128/net.kuribo64.melonDS.png.import
new file: tools/configurator/assets/icons/128/net.pcsx2.PCSX2.png
new file: tools/configurator/assets/icons/128/net.pcsx2.PCSX2.png.import
new file: tools/configurator/assets/icons/128/net.retrodeck.retrodeck.png
new file: tools/configurator/assets/icons/128/net.retrodeck.retrodeck.png.import
new file: tools/configurator/assets/icons/128/net.rpcs3.RPCS3.png
new file: tools/configurator/assets/icons/128/net.rpcs3.RPCS3.png.import
new file: tools/configurator/assets/icons/128/org.DolphinEmu.dolphin-emu.png
new file: tools/configurator/assets/icons/128/org.DolphinEmu.dolphin-emu.png.import
new file: tools/configurator/assets/icons/128/org.citra_emu.citra.png
new file: tools/configurator/assets/icons/128/org.citra_emu.citra.png.import
new file: tools/configurator/assets/icons/128/org.mamedev.MAME.png
new file: tools/configurator/assets/icons/128/org.mamedev.MAME.png.import
new file: tools/configurator/assets/icons/128/org.ppsspp.PPSSPP.png
new file: tools/configurator/assets/icons/128/org.ppsspp.PPSSPP.png.import
new file: tools/configurator/assets/icons/128/org.ppsspp.PPSSPP_.png
new file: tools/configurator/assets/icons/128/org.ppsspp.PPSSPP_.png.import
new file: tools/configurator/assets/icons/128/org.ryujinx.Ryujinx.png
new file: tools/configurator/assets/icons/128/org.ryujinx.Ryujinx.png.import
new file: tools/configurator/assets/icons/128/org.zdoom.GZDoom.png
new file: tools/configurator/assets/icons/128/org.zdoom.GZDoom.png.import
new file: tools/configurator/assets/icons/128/retroarch.png
new file: tools/configurator/assets/icons/128/retroarch.png.import
new file: tools/configurator/assets/icons/16/app.xemu.xemu.png
new file: tools/configurator/assets/icons/16/app.xemu.xemu.png.import
new file: tools/configurator/assets/icons/16/duckstation-nogui.png
new file: tools/configurator/assets/icons/16/duckstation-nogui.png.import
new file: tools/configurator/assets/icons/16/duckstation.png
new file: tools/configurator/assets/icons/16/duckstation.png.import
new file: tools/configurator/assets/icons/16/net.pcsx2.PCSX2.png
new file: tools/configurator/assets/icons/16/net.pcsx2.PCSX2.png.import
new file: tools/configurator/assets/icons/16/net.retrodeck.retrodeck.png
new file: tools/configurator/assets/icons/16/net.retrodeck.retrodeck.png.import
new file: tools/configurator/assets/icons/16/net.rpcs3.RPCS3.png
new file: tools/configurator/assets/icons/16/net.rpcs3.RPCS3.png.import
new file: tools/configurator/assets/icons/16/org.DolphinEmu.dolphin-emu.png
new file: tools/configurator/assets/icons/16/org.DolphinEmu.dolphin-emu.png.import
new file: tools/configurator/assets/icons/16/org.gnome.Yelp.png
new file: tools/configurator/assets/icons/16/org.gnome.Yelp.png.import
new file: tools/configurator/assets/icons/16/org.mamedev.MAME.png
new file: tools/configurator/assets/icons/16/org.mamedev.MAME.png.import
new file: tools/configurator/assets/icons/16/org.ppsspp.PPSSPP.png
new file: tools/configurator/assets/icons/16/org.ppsspp.PPSSPP.png.import
new file: tools/configurator/assets/icons/16/org.ppsspp.PPSSPP_.png
new file: tools/configurator/assets/icons/16/org.ppsspp.PPSSPP_.png.import
new file: tools/configurator/assets/icons/16/org.ryujinx.Ryujinx.png
new file: tools/configurator/assets/icons/16/org.ryujinx.Ryujinx.png.import
new file: tools/configurator/assets/icons/16/org.xfce.session.png
new file: tools/configurator/assets/icons/16/org.xfce.session.png.import
new file: tools/configurator/assets/icons/16/org.zdoom.GZDoom.png
new file: tools/configurator/assets/icons/16/org.zdoom.GZDoom.png.import
new file: tools/configurator/assets/icons/16/retroarch.png
new file: tools/configurator/assets/icons/16/retroarch.png.import
new file: tools/configurator/assets/icons/16/security-medium.png
new file: tools/configurator/assets/icons/16/security-medium.png.import
new file: tools/configurator/assets/icons/32/retroarch.png
new file: tools/configurator/assets/icons/32/retroarch.png.import
new file: tools/configurator/assets/icons/dolphin-emu (1).svg
new file: tools/configurator/assets/icons/dolphin-emu (1).svg.import
new file: tools/configurator/assets/icons/dolphin-emu (2).svg
new file: tools/configurator/assets/icons/dolphin-emu (2).svg.import
new file: tools/configurator/assets/icons/dolphin-emu.svg
new file: tools/configurator/assets/icons/dolphin-emu.svg.import
new file: tools/configurator/assets/icons/retroarch (1).svg
new file: tools/configurator/assets/icons/retroarch (1).svg.import
new file: tools/configurator/assets/icons/retroarch (2).svg
new file: tools/configurator/assets/icons/retroarch (2).svg.import
new file: tools/configurator/assets/icons/retroarch.svg
new file: tools/configurator/assets/icons/retroarch.svg.import
new file: tools/configurator/assets/icons/retroarch2.svg
new file: tools/configurator/assets/icons/retroarch2.svg.import
new file: tools/configurator/assets/icons/retroarch_invert.svg
new file: tools/configurator/assets/icons/retroarch_invert.svg.import
modified: tools/configurator/main.gd
modified: tools/configurator/main.tscn
modified: tools/configurator/project.godot
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* Icons!
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/project.godot
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/main.gd
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/export/configurator.pck
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-configurator.yml
* On branch feat/godot-configurator
Changes to be committed:
new file: .github/workflows/buid-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/buid-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
deleted: .github/workflows/buid-gdc.yml
Untracked files:
.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
new file: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* Create gd-test.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* modified: ../../.github/workflows/build-gdc.yml
modified: data_list.json
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* modified: data_list.json
modified: export_presets.cfg
modified: res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
deleted: ../../.github/workflows/godot.yml
* On branch feat/godot-configurator
Changes to be committed:
deleted: ../../.github/workflows/gd-test.yml
* Create test.yml
* Delete .github/workflows/test.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
new file: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-configurator.yml
modified: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: export_presets.cfg
modified: res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
deleted: .github/workflows/go-simple.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/export_presets.cfg
* On branch feat/godot-configurator
Changes to be committed:
modified: tools/configurator/export_presets.cfg
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
deleted: ../../.github/workflows/build-configurator.yml
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* modified: main.tscn
modified: res/pixel_ui_theme/RetroDECKTheme.tres
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
modified: ../../net.retrodeck.retrodeck.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: ../../.github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
modified: net.retrodeck.retrodeck.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: .github/workflows/build-gdc.yml
modified: net.retrodeck.retrodeck.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch feat/godot-configurator
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch cooker
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch cooker
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* GoDot Configurator install - Easy Mode ;)
On branch cooker
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
modified: tools/configurator/data_list.json
deleted: tools/configurator/export/configurator.console.exe
deleted: tools/configurator/export/configurator.pck
deleted: tools/configurator/export/configurator.sh
deleted: tools/configurator/export/configurator.x86_64
renamed: tools/configurator/export/configurator.exe -> tools/configurator/export/godot_configurator.x86_64
modified: tools/configurator/export_presets.cfg
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* Embeded file test
On branch cooker
Changes to be committed:
modified: .github/workflows/build-gdc.yml
modified: tools/configurator/export_presets.cfg
modified: tools/configurator/project.godot
modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres
* On branch cooker
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch cooker
Changes to be committed:
modified: .github/workflows/build-gdc.yml
* On branch cooker
Changes to be committed:
renamed: .github/workflows/build-gdc.yml -> .github/workflows/build-configurator.yml
* On branch cooker
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch cooker
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch cooker
Changes to be committed:
modified: automation_tools/automation_task_list.cfg
modified: net.retrodeck.retrodeck.yml
* On branch cooker
Changes to be committed:
modified: automation_tools/automation_task_list.cfg
* On branch cooker
Changes to be committed:
modified: automation_tools/automation_task_list.cfg
* Test new ruffle maninfest
On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* Tidying up a bit
On branch cooker
Changes to be committed:
modified: automation_tools/automation_task_list.cfg
deleted: tools/configurator/export/configurator.console.exe
deleted: tools/configurator/export/configurator.exe
deleted: tools/configurator/export/configurator.pck
deleted: tools/configurator/export/configurator.sh
deleted: tools/configurator/export/configurator.x86_64
deleted: tools/configurator/export/godot_configurator.x86_64
* On branch cooker
Changes to be committed:
modified: tools/configurator/export_presets.cfg
modified: tools/configurator/project.godot
* On branch cooker
Changes to be committed:
modified: automation_tools/automation_task_list.cfg
modified: tools/configurator/data_list.json
* Delete RetroDECK-cooker.flatpak.sha
* Delete .github/workflows/build-configurator.yml
* On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* Ruffle to cooker
On branch feat/ruffle2.0
Changes to be committed:
modified: net.retrodeck.retrodeck.yml
* Triggering build
* Triggering build
* Triggering build
* Triggering build
* Triggering build
* Triggering build
* Triggering build
* Triggering build
---------
Co-authored-by: XargonWan <XargonWan@gmail.com>
Co-authored-by: GitHub Actions <actions@github.com>
* RUFFLE: standaardized wrapper deployment
* RUFFLE: added ruffle and flash system to features.json
* PREPARE_COMPONENT: adding ruffle
---------
Co-authored-by: MonkeyX <tim@monkeyx.net>
Co-authored-by: GitHub Actions <actions@github.com>
887 lines
56 KiB
Bash
887 lines
56 KiB
Bash
#!/bin/bash
|
|
|
|
prepare_component() {
|
|
# This function will perform one of several actions on one or more components
|
|
# The actions currently include "reset" and "postmove"
|
|
# The "reset" action will initialize the component
|
|
# The "postmove" action will update the component settings after one or more RetroDECK folders were moved
|
|
# An component can be called by name, by parent folder name in the /var/config root or use the option "all" to perform the action on all components equally
|
|
# The function will also behave differently depending on if the initial request was from the Configurator, the CLI interface or a normal function call if needed
|
|
# USAGE: prepare_component "$action" "$component" "$call_source(optional)"
|
|
|
|
action="$1"
|
|
component=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
|
call_source="$3"
|
|
component_found="false"
|
|
|
|
log d "Preparing component: \"$component\", action: \"$action\""
|
|
|
|
if [[ "$component" == "retrodeck" ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Update the paths of all folders in retrodeck.cfg and create them
|
|
while read -r config_line; do
|
|
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")
|
|
declare -g "$current_setting_name=$rdhome/${current_setting_value#*retrodeck/}" #removes everything until "retrodeck" and adds the actual retrodeck folder
|
|
log d "Setting: $current_setting_name=$current_setting_value"
|
|
if [[ ! $current_setting_name == "logs_folder" ]]; then # Don't create a logs folder normally, we want to maintain the current files exactly to not lose early-install logs.
|
|
create_dir "$rdhome/$(basename $current_setting_value)"
|
|
else # Log folder-specific actions
|
|
mv "$rd_logs_folder" "$logs_folder" # Move existing logs folder from internal to userland
|
|
ln -sf "$logs_folder" "$rd_logs_folder" # Link userland logs folder back to statically-written location
|
|
log d "Logs folder moved to $logs_folder and linked back to $rd_logs_folder"
|
|
fi
|
|
fi
|
|
done < <(grep -v '^\s*$' $rd_conf | awk '/^\[paths\]/{f=1;next} /^\[/{f=0} f')
|
|
create_dir "/var/config/retrodeck/godot" # TODO: what is this for? Can we delete it or add it to the retrodeck.cfg so the folder will be created by the above script?
|
|
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Update the paths of any folders that came with the retrodeck folder during a move
|
|
while read -r config_line; do
|
|
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")
|
|
if [[ -d "$rdhome/$(basename $current_setting_value)" ]]; then # If the folder exists at the new ~/retrodeck location
|
|
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')
|
|
dir_prep "$logs_folder" "$rd_logs_folder"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(es-de|all)$ ]]; then # For use after ESDE-related folders are moved or a reset
|
|
component_found="true"
|
|
log i "--------------------------------"
|
|
log i "Prepearing ES-DE"
|
|
log i "--------------------------------"
|
|
if [[ "$action" == "reset" ]]; then
|
|
rm -rf /var/config/ES-DE
|
|
create_dir /var/config/ES-DE/settings
|
|
log d "Prepearing 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/ES-DE/gamelists" "/var/config/ES-DE/gamelists"
|
|
dir_prep "$rdhome/ES-DE/collections" "/var/config/ES-DE/collections"
|
|
dir_prep "$rd_logs_folder/ES-DE" "$es_source_logs"
|
|
log d "Generating roms system folders"
|
|
#es-de --home /var/config/ES-DE --create-system-dirs
|
|
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/ES-DE/gamelists"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(retroarch|all)$ ]]; then
|
|
component_found="true"
|
|
log i "--------------------------------"
|
|
log i "Prepearing RetroArch"
|
|
log i "--------------------------------"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/retroarch"
|
|
cp -fv $config/retroarch/retroarch.cfg "$multi_user_data_folder/$SteamAppUser/config/retroarch/"
|
|
cp -fv $config/retroarch/retroarch-core-options.cfg "$multi_user_data_folder/$SteamAppUser/config/retroarch/"
|
|
else # Single-user actions
|
|
create_dir -d /var/config/retroarch
|
|
dir_prep "$bios_folder" "/var/config/retroarch/system"
|
|
dir_prep "$rdhome/logs/retroarch" "/var/config/retroarch/logs"
|
|
create_dir /var/config/retroarch/shaders/
|
|
cp -rf /app/share/libretro/shaders /var/config/retroarch/
|
|
dir_prep "$rdhome/shaders/retroarch" "/var/config/retroarch/shaders"
|
|
rsync -rlD --mkpath "/app/share/libretro/cores/" "/var/config/retroarch/cores/"
|
|
cp -fv $config/retroarch/retroarch.cfg /var/config/retroarch/
|
|
cp -fv $config/retroarch/retroarch-core-options.cfg /var/config/retroarch/
|
|
rsync -rlD --mkpath "$config/retroarch/core-overrides/" "/var/config/retroarch/config/"
|
|
rsync -rlD --mkpath "$config/retrodeck/presets/remaps/" "/var/config/retroarch/config/remaps/"
|
|
dir_prep "$borders_folder" "/var/config/retroarch/overlays/borders"
|
|
rsync -rlD --mkpath "/app/retrodeck/config/retroarch/borders/" "/var/config/retroarch/overlays/borders/"
|
|
set_setting_value "$raconf" "savefile_directory" "$saves_folder" "retroarch"
|
|
set_setting_value "$raconf" "savestate_directory" "$states_folder" "retroarch"
|
|
set_setting_value "$raconf" "screenshot_directory" "$screenshots_folder" "retroarch"
|
|
set_setting_value "$raconf" "log_dir" "$logs_folder" "retroarch"
|
|
set_setting_value "$raconf" "rgui_browser_directory" "$roms_folder" "retroarch"
|
|
fi
|
|
# Shared actions
|
|
|
|
create_dir "$bios_folder/np2kai"
|
|
create_dir "$bios_folder/dc"
|
|
create_dir "$bios_folder/Mupen64plus"
|
|
create_dir "$bios_folder/quasi88"
|
|
|
|
# FBNEO
|
|
log i "--------------------------------"
|
|
log i "Prepearing FBNEO_LIBRETRO"
|
|
log i "--------------------------------"
|
|
create_dir "$bios_folder/fbneo/samples"
|
|
create_dir "$bios_folder/fbneo/cheats"
|
|
create_dir "$bios_folder/fbneo/blend"
|
|
dir_prep "$mods_folder/FBNeo" "$bios_folder/fbneo/patched"
|
|
|
|
# PPSSPP
|
|
log i "--------------------------------"
|
|
log i "Prepearing PPSSPP_LIBRETRO"
|
|
log i "--------------------------------"
|
|
if [ -d $bios_folder/PPSSPP/flash0/font ]
|
|
then
|
|
mv -fv $bios_folder/PPSSPP/flash0/font $bios_folder/PPSSPP/flash0/font.bak
|
|
fi
|
|
cp -rf "/app/retrodeck/extras/PPSSPP" "$bios_folder/PPSSPP"
|
|
if [ -d $bios_folder/PPSSPP/flash0/font.bak ]
|
|
then
|
|
mv -f $bios_folder/PPSSPP/flash0/font.bak $bios_folder/PPSSPP/flash0/font
|
|
fi
|
|
|
|
# MSX / SVI / ColecoVision / SG-1000
|
|
log i "-----------------------------------------------------------"
|
|
log i "Prepearing MSX / SVI / ColecoVision / SG-1000 LIBRETRO"
|
|
log i "-----------------------------------------------------------"
|
|
log i "Copying \"/app/retrodeck/extras/MSX/Databases\" in \"$bios_folder/Databases\""
|
|
cp -rf "/app/retrodeck/extras/MSX/Databases" "$bios_folder/Databases"
|
|
log i "Copying \"/app/retrodeck/extras/MSX/Machines\" in \"$bios_folder/Machines\""
|
|
cp -rf "/app/retrodeck/extras/MSX/Machines" "$bios_folder/Machines"
|
|
|
|
# AMIGA
|
|
log i "-----------------------------------------------------------"
|
|
log i "Prepearing AMIGA LIBRETRO"
|
|
log i "-----------------------------------------------------------"
|
|
log i "Copying \"/app/retrodeck/extras/Amiga/capsimg.so\" in \"$bios_folder/capsimg.so\""
|
|
cp -f "/app/retrodeck/extras/Amiga/capsimg.so" "$bios_folder/capsimg.so"
|
|
|
|
# ScummVM
|
|
log i "-----------------------------------------------------------"
|
|
log i "Prepearing ScummVM LIBRETRO"
|
|
log i "-----------------------------------------------------------"
|
|
cp -fv "$config/retroarch/scummvm.ini" "$ra_scummvm_conf"
|
|
create_dir "$mods_folder/RetroArch/ScummVM/icons"
|
|
log i "Installing ScummVM assets"
|
|
unzip -o "$config/retroarch/ScummVM.zip" 'scummvm/extra/*' -d /tmp
|
|
unzip -o "$config/retroarch/ScummVM.zip" 'scummvm/theme/*' -d /tmp
|
|
mv -f /tmp/scummvm/extra "$mods_folder/RetroArch/ScummVM"
|
|
mv -f /tmp/scummvm/theme "$mods_folder/RetroArch/ScummVM"
|
|
rm -rf /tmp/extra /tmp/theme
|
|
set_setting_value "$ra_scummvm_conf" "iconspath" "$mods_folder/RetroArch/ScummVM/icons" "libretro_scummvm" "scummvm"
|
|
set_setting_value "$ra_scummvm_conf" "extrapath" "$mods_folder/RetroArch/ScummVM/extra" "libretro_scummvm" "scummvm"
|
|
set_setting_value "$ra_scummvm_conf" "themepath" "$mods_folder/RetroArch/ScummVM/theme" "libretro_scummvm" "scummvm"
|
|
set_setting_value "$ra_scummvm_conf" "savepath" "$saves_folder/scummvm" "libretro_scummvm" "scummvm"
|
|
set_setting_value "$ra_scummvm_conf" "browser_lastpath" "$roms_folder/scummvm" "libretro_scummvm" "scummvm"
|
|
|
|
dir_prep "$texture_packs_folder/RetroArch-Mesen" "/var/config/retroarch/system/HdPacks"
|
|
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/cache" "/var/config/retroarch/system/Mupen64plus/cache"
|
|
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture" "/var/config/retroarch/system/Mupen64plus/hires_texture"
|
|
|
|
# Reset default preset settings
|
|
set_setting_value "$rd_conf" "retroarch" "$(get_setting_value "$rd_defaults" "retroarch" "retrodeck" "cheevos")" "retrodeck" "cheevos"
|
|
set_setting_value "$rd_conf" "retroarch" "$(get_setting_value "$rd_defaults" "retroarch" "retrodeck" "cheevos_hardcore")" "retrodeck" "cheevos_hardcore"
|
|
set_setting_value "$rd_conf" "gb" "$(get_setting_value "$rd_defaults" "gb" "retrodeck" "borders")" "retrodeck" "borders"
|
|
set_setting_value "$rd_conf" "gba" "$(get_setting_value "$rd_defaults" "gba" "retrodeck" "borders")" "retrodeck" "borders"
|
|
set_setting_value "$rd_conf" "gbc" "$(get_setting_value "$rd_defaults" "gbc" "retrodeck" "borders")" "retrodeck" "borders"
|
|
set_setting_value "$rd_conf" "genesis" "$(get_setting_value "$rd_defaults" "genesis" "retrodeck" "borders")" "retrodeck" "borders"
|
|
set_setting_value "$rd_conf" "gg" "$(get_setting_value "$rd_defaults" "gg" "retrodeck" "borders")" "retrodeck" "borders"
|
|
set_setting_value "$rd_conf" "n64" "$(get_setting_value "$rd_defaults" "n64" "retrodeck" "borders")" "retrodeck" "borders"
|
|
set_setting_value "$rd_conf" "psx_ra" "$(get_setting_value "$rd_defaults" "psx_ra" "retrodeck" "borders")" "retrodeck" "borders"
|
|
set_setting_value "$rd_conf" "snes" "$(get_setting_value "$rd_defaults" "snes" "retrodeck" "borders")" "retrodeck" "borders"
|
|
set_setting_value "$rd_conf" "genesis" "$(get_setting_value "$rd_defaults" "genesis" "retrodeck" "widescreen")" "retrodeck" "widescreen"
|
|
set_setting_value "$rd_conf" "n64" "$(get_setting_value "$rd_defaults" "n64" "retrodeck" "widescreen")" "retrodeck" "widescreen"
|
|
set_setting_value "$rd_conf" "psx_ra" "$(get_setting_value "$rd_defaults" "psx_ra" "retrodeck" "widescreen")" "retrodeck" "widescreen"
|
|
set_setting_value "$rd_conf" "snes" "$(get_setting_value "$rd_defaults" "snes" "retrodeck" "widescreen")" "retrodeck" "widescreen"
|
|
set_setting_value "$rd_conf" "gb" "$(get_setting_value "$rd_defaults" "gb" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
|
|
set_setting_value "$rd_conf" "gba" "$(get_setting_value "$rd_defaults" "gba" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
|
|
set_setting_value "$rd_conf" "gbc" "$(get_setting_value "$rd_defaults" "gbc" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
|
|
set_setting_value "$rd_conf" "n64" "$(get_setting_value "$rd_defaults" "gb" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
|
|
set_setting_value "$rd_conf" "snes" "$(get_setting_value "$rd_defaults" "gba" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
|
|
set_setting_value "$rd_conf" "retroarch" "$(get_setting_value "$rd_defaults" "retroarch" "retrodeck" "savestate_auto_load")" "retrodeck" "savestate_auto_load"
|
|
set_setting_value "$rd_conf" "retroarch" "$(get_setting_value "$rd_defaults" "retroarch" "retrodeck" "savestate_auto_save")" "retrodeck" "savestate_auto_save"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
dir_prep "$bios_folder" "/var/config/retroarch/system"
|
|
dir_prep "$logs_folder/retroarch" "/var/config/retroarch/logs"
|
|
dir_prep "$rdhome/shaders/retroarch" "/var/config/retroarch/shaders"
|
|
dir_prep "$texture_packs_folder/RetroArch-Mesen" "/var/config/retroarch/system/HdPacks"
|
|
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/cache" "/var/config/retroarch/system/Mupen64plus/cache"
|
|
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture" "/var/config/retroarch/system/Mupen64plus/hires_texture"
|
|
set_setting_value "$raconf" "savefile_directory" "$saves_folder" "retroarch"
|
|
set_setting_value "$raconf" "savestate_directory" "$states_folder" "retroarch"
|
|
set_setting_value "$raconf" "screenshot_directory" "$screenshots_folder" "retroarch"
|
|
set_setting_value "$raconf" "log_dir" "$logs_folder" "retroarch"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(citra|citra-emu|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "------------------------"
|
|
log i "Prepearing CITRA"
|
|
log i "------------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/citra-emu"
|
|
cp -fv $config/citra/qt-config.ini "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini" "nand_directory" "$saves_folder/n3ds/citra/nand/" "citra" "Data%20Storage"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini" "sdmc_directory" "$saves_folder/n3ds/citra/sdmc/" "citra" "Data%20Storage"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini" "Paths\gamedirs\3\path" "$roms_folder/n3ds" "citra" "UI"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/citra-emu/qt-config.ini" "Paths\screenshotPath" "$screenshots_folder" "citra" "UI"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/citra-emu" "/var/config/citra-emu"
|
|
else # Single-user actions
|
|
create_dir -d /var/config/citra-emu/
|
|
cp -f $config/citra/qt-config.ini /var/config/citra-emu/qt-config.ini
|
|
set_setting_value "$citraconf" "nand_directory" "$saves_folder/n3ds/citra/nand/" "citra" "Data%20Storage"
|
|
set_setting_value "$citraconf" "sdmc_directory" "$saves_folder/n3ds/citra/sdmc/" "citra" "Data%20Storage"
|
|
set_setting_value "$citraconf" "Paths\gamedirs\3\path" "$roms_folder/n3ds" "citra" "UI"
|
|
set_setting_value "$citraconf" "Paths\screenshotPath" "$screenshots_folder" "citra" "UI"
|
|
fi
|
|
# Shared actions
|
|
create_dir "$saves_folder/n3ds/citra/nand/"
|
|
create_dir "$saves_folder/n3ds/citra/sdmc/"
|
|
dir_prep "$bios_folder/citra/sysdata" "/var/data/citra-emu/sysdata"
|
|
dir_prep "$logs_folder/citra" "/var/data/citra-emu/log"
|
|
dir_prep "$mods_folder/Citra" "/var/data/citra-emu/load/mods"
|
|
dir_prep "$texture_packs_folder/Citra" "/var/data/citra-emu/load/textures"
|
|
|
|
# Reset default preset settings
|
|
set_setting_value "$rd_conf" "citra" "$(get_setting_value "$rd_defaults" "citra" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
|
|
set_setting_value "$rd_conf" "citra" "$(get_setting_value "$rd_defaults" "citra" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
dir_prep "$bios_folder/citra/sysdata" "/var/data/citra-emu/sysdata"
|
|
dir_prep "$rdhome/logs/citra" "/var/data/citra-emu/log"
|
|
dir_prep "$mods_folder/Citra" "/var/data/citra-emu/load/mods"
|
|
dir_prep "$texture_packs_folder/Citra" "/var/data/citra-emu/load/textures"
|
|
set_setting_value "$citraconf" "nand_directory" "$saves_folder/n3ds/citra/nand/" "citra" "Data%20Storage"
|
|
set_setting_value "$citraconf" "sdmc_directory" "$saves_folder/n3ds/citra/sdmc/" "citra" "Data%20Storage"
|
|
set_setting_value "$citraconf" "Paths\gamedirs\3\path" "$roms_folder/n3ds" "citra" "UI"
|
|
set_setting_value "$citraconf" "Paths\screenshotPath" "$screenshots_folder" "citra" "UI"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(cemu|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "----------------------"
|
|
log i "Prepearing CEMU"
|
|
log i "----------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/Cemu"
|
|
cp -fr "$config/cemu/"* "$multi_user_data_folder/$SteamAppUser/config/Cemu/"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/Cemu/settings.ini" "mlc_path" "$bios_folder/cemu" "cemu"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/Cemu/settings.ini" "Entry" "$roms_folder/wiiu" "cemu" "GamePaths"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/Cemu" "/var/config/Cemu"
|
|
else
|
|
create_dir -d /var/config/Cemu/
|
|
cp -fr "$config/cemu/"* /var/config/Cemu/
|
|
set_setting_value "$cemuconf" "mlc_path" "$bios_folder/cemu" "cemu"
|
|
set_setting_value "$cemuconf" "Entry" "$roms_folder/wiiu" "cemu" "GamePaths"
|
|
fi
|
|
# Shared actions
|
|
dir_prep "$saves_folder/wiiu/cemu" "$bios_folder/cemu/usr/save"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run commands that apply to both resets and moves
|
|
set_setting_value "$cemuconf" "mlc_path" "$bios_folder/cemu" "cemu"
|
|
set_setting_value "$cemuconf" "Entry" "$roms_folder/wiiu" "cemu" "GamePaths"
|
|
dir_prep "$saves_folder/wiiu/cemu" "$bios_folder/cemu/usr/save"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(dolphin|dolphin-emu|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "----------------------"
|
|
log i "Prepearing DOLPHIN"
|
|
log i "----------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/dolphin-emu"
|
|
cp -fvr "$config/dolphin/"* "$multi_user_data_folder/$SteamAppUser/config/dolphin-emu/"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/dolphin-emu/Dolphin.ini" "BIOS" "$bios_folder" "dolphin" "GBA"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/dolphin-emu/Dolphin.ini" "SavesPath" "$saves_folder/gba" "dolphin" "GBA"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/dolphin-emu/Dolphin.ini" "ISOPath0" "$roms_folder/wii" "dolphin" "General"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/dolphin-emu/Dolphin.ini" "ISOPath1" "$roms_folder/gc" "dolphin" "General"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/dolphin-emu/Dolphin.ini" "WiiSDCardPath" "$saves_folder/wii/dolphin/sd.raw" "dolphin" "General"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/dolphin-emu" "/var/config/dolphin-emu"
|
|
else # Single-user actions
|
|
create_dir -d /var/config/dolphin-emu/
|
|
cp -fvr "$config/dolphin/"* /var/config/dolphin-emu/
|
|
set_setting_value "$dolphinconf" "BIOS" "$bios_folder" "dolphin" "GBA"
|
|
set_setting_value "$dolphinconf" "SavesPath" "$saves_folder/gba" "dolphin" "GBA"
|
|
set_setting_value "$dolphinconf" "ISOPath0" "$roms_folder/wii" "dolphin" "General"
|
|
set_setting_value "$dolphinconf" "ISOPath1" "$roms_folder/gc" "dolphin" "General"
|
|
set_setting_value "$dolphinconf" "WiiSDCardPath" "$saves_folder/wii/dolphin/sd.raw" "dolphin" "General"
|
|
fi
|
|
# Shared actions
|
|
dir_prep "$saves_folder/gc/dolphin/EU" "/var/data/dolphin-emu/GC/EUR" # TODO: Multi-user one-off
|
|
dir_prep "$saves_folder/gc/dolphin/US" "/var/data/dolphin-emu/GC/USA" # TODO: Multi-user one-off
|
|
dir_prep "$saves_folder/gc/dolphin/JP" "/var/data/dolphin-emu/GC/JAP" # TODO: Multi-user one-off
|
|
dir_prep "$screenshots_folder" "/var/data/dolphin-emu/ScreenShots"
|
|
dir_prep "$states_folder/dolphin" "/var/data/dolphin-emu/StateSaves"
|
|
dir_prep "$saves_folder/wii/dolphin" "/var/data/dolphin-emu/Wii"
|
|
dir_prep "$mods_folder/Dolphin" "/var/data/dolphin-emu/Load/GraphicMods"
|
|
dir_prep "$texture_packs_folder/Dolphin" "/var/data/dolphin-emu/Load/Textures"
|
|
|
|
# Reset default preset settings
|
|
set_setting_value "$rd_conf" "dolphin" "$(get_setting_value "$rd_defaults" "dolphin" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
dir_prep "$saves_folder/gc/dolphin/EU" "/var/data/dolphin-emu/GC/EUR"
|
|
dir_prep "$saves_folder/gc/dolphin/US" "/var/data/dolphin-emu/GC/USA"
|
|
dir_prep "$saves_folder/gc/dolphin/JP" "/var/data/dolphin-emu/GC/JAP"
|
|
dir_prep "$screenshots_folder" "/var/data/dolphin-emu/ScreenShots"
|
|
dir_prep "$states_folder/dolphin" "/var/data/dolphin-emu/StateSaves"
|
|
dir_prep "$saves_folder/wii/dolphin" "/var/data/dolphin-emu/Wii"
|
|
dir_prep "$mods_folder/Dolphin" "/var/data/dolphin-emu/Load/GraphicMods"
|
|
dir_prep "$texture_packs_folder/Dolphin" "/var/data/dolphin-emu/Load/Textures"
|
|
set_setting_value "$dolphinconf" "BIOS" "$bios_folder" "dolphin" "GBA"
|
|
set_setting_value "$dolphinconf" "SavesPath" "$saves_folder/gba" "dolphin" "GBA"
|
|
set_setting_value "$dolphinconf" "ISOPath0" "$roms_folder/wii" "dolphin" "General"
|
|
set_setting_value "$dolphinconf" "ISOPath1" "$roms_folder/gc" "dolphin" "General"
|
|
set_setting_value "$dolphinconf" "WiiSDCardPath" "$saves_folder/wii/dolphin/sd.raw" "dolphin" "General"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(duckstation|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "------------------------"
|
|
log i "Prepearing DUCKSTATION"
|
|
log i "------------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/data/duckstation/"
|
|
cp -fv "$config/duckstation/"* "$multi_user_data_folder/$SteamAppUser/data/duckstation"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/data/duckstation/settings.ini" "SearchDirectory" "$bios_folder" "duckstation" "BIOS"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/data/duckstation/settings.ini" "Card1Path" "$saves_folder/psx/duckstation/memcards/shared_card_1.mcd" "duckstation" "MemoryCards"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/data/duckstation/settings.ini" "Card2Path" "$saves_folder/psx/duckstation/memcards/shared_card_2.mcd" "duckstation" "MemoryCards"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/data/duckstation/settings.ini" "Directory" "$saves_folder/psx/duckstation/memcards" "duckstation" "MemoryCards"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/data/duckstation/settings.ini" "RecursivePaths" "$roms_folder/psx" "duckstation" "GameList"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/duckstation" "/var/config/duckstation"
|
|
else # Single-user actions
|
|
create_dir -d "/var/config/duckstation/"
|
|
create_dir "$saves_folder/psx/duckstation/memcards"
|
|
cp -fv "$config/duckstation/"* /var/config/duckstation
|
|
set_setting_value "$duckstationconf" "SearchDirectory" "$bios_folder" "duckstation" "BIOS"
|
|
set_setting_value "$duckstationconf" "Card1Path" "$saves_folder/psx/duckstation/memcards/shared_card_1.mcd" "duckstation" "MemoryCards"
|
|
set_setting_value "$duckstationconf" "Card2Path" "$saves_folder/psx/duckstation/memcards/shared_card_2.mcd" "duckstation" "MemoryCards"
|
|
set_setting_value "$duckstationconf" "Directory" "$saves_folder/psx/duckstation/memcards" "duckstation" "MemoryCards"
|
|
set_setting_value "$duckstationconf" "RecursivePaths" "$roms_folder/psx" "duckstation" "GameList"
|
|
fi
|
|
# Shared actions
|
|
dir_prep "$states_folder/psx/duckstation" "/var/config/duckstation/savestates" # This is hard-coded in Duckstation, always needed
|
|
dir_prep "$texture_packs_folder/Duckstation" "/var/config/duckstation/textures"
|
|
|
|
# Reset default preset settings
|
|
set_setting_value "$rd_conf" "duckstation" "$(get_setting_value "$rd_defaults" "duckstation" "retrodeck" "cheevos")" "retrodeck" "cheevos"
|
|
set_setting_value "$rd_conf" "duckstation" "$(get_setting_value "$rd_defaults" "duckstation" "retrodeck" "cheevos_hardcore")" "retrodeck" "cheevos_hardcore"
|
|
set_setting_value "$rd_conf" "duckstation" "$(get_setting_value "$rd_defaults" "duckstation" "retrodeck" "savestate_auto_save")" "retrodeck" "savestate_auto_save"
|
|
set_setting_value "$rd_conf" "duckstation" "$(get_setting_value "$rd_defaults" "duckstation" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
set_setting_value "$duckstationconf" "SearchDirectory" "$bios_folder" "duckstation" "BIOS"
|
|
set_setting_value "$duckstationconf" "Card1Path" "$saves_folder/psx/duckstation/memcards/shared_card_1.mcd" "duckstation" "MemoryCards"
|
|
set_setting_value "$duckstationconf" "Card2Path" "$saves_folder/psx/duckstation/memcards/shared_card_2.mcd" "duckstation" "MemoryCards"
|
|
set_setting_value "$duckstationconf" "Directory" "$saves_folder/psx/duckstation/memcards" "duckstation" "MemoryCards"
|
|
set_setting_value "$duckstationconf" "RecursivePaths" "$roms_folder/psx" "duckstation" "GameList"
|
|
dir_prep "$states_folder/psx/duckstation" "/var/config/duckstation/savestates" # This is hard-coded in Duckstation, always needed
|
|
dir_prep "$texture_packs_folder/Duckstation" "/var/config/duckstation/textures"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(melonds|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "----------------------"
|
|
log i "Prepearing MELONDS"
|
|
log i "----------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/melonDS/"
|
|
cp -fvr $config/melonds/melonDS.ini "$multi_user_data_folder/$SteamAppUser/config/melonDS/"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/melonDS/melonDS.ini" "BIOS9Path" "$bios_folder/bios9.bin" "melonds"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/melonDS/melonDS.ini" "BIOS7Path" "$bios_folder/bios7.bin" "melonds"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/melonDS/melonDS.ini" "FirmwarePath" "$bios_folder/firmware.bin" "melonds"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/melonDS/melonDS.ini" "SaveFilePath" "$saves_folder/nds/melonds" "melonds"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/melonDS/melonDS.ini" "SavestatePath" "$states_folder/nds/melonds" "melonds"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/melonDS" "/var/config/melonDS"
|
|
else # Single-user actions
|
|
create_dir -d /var/config/melonDS/
|
|
cp -fvr $config/melonds/melonDS.ini /var/config/melonDS/
|
|
set_setting_value "$melondsconf" "BIOS9Path" "$bios_folder/bios9.bin" "melonds"
|
|
set_setting_value "$melondsconf" "BIOS7Path" "$bios_folder/bios7.bin" "melonds"
|
|
set_setting_value "$melondsconf" "FirmwarePath" "$bios_folder/firmware.bin" "melonds"
|
|
set_setting_value "$melondsconf" "SaveFilePath" "$saves_folder/nds/melonds" "melonds"
|
|
set_setting_value "$melondsconf" "SavestatePath" "$states_folder/nds/melonds" "melonds"
|
|
fi
|
|
# Shared actions
|
|
create_dir "$saves_folder/nds/melonds"
|
|
create_dir "$states_folder/nds/melonds"
|
|
dir_prep "$bios_folder" "/var/config/melonDS/bios"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
dir_prep "$bios_folder" "/var/config/melonDS/bios"
|
|
set_setting_value "$melondsconf" "BIOS9Path" "$bios_folder/bios9.bin" "melonds"
|
|
set_setting_value "$melondsconf" "BIOS7Path" "$bios_folder/bios7.bin" "melonds"
|
|
set_setting_value "$melondsconf" "FirmwarePath" "$bios_folder/firmware.bin" "melonds"
|
|
set_setting_value "$melondsconf" "SaveFilePath" "$saves_folder/nds/melonds" "melonds"
|
|
set_setting_value "$melondsconf" "SavestatePath" "$states_folder/nds/melonds" "melonds"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(pcsx2|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "----------------------"
|
|
log i "Prepearing PCSX2"
|
|
log i "----------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/PCSX2/inis"
|
|
cp -fvr "$config/PCSX2/"* "$multi_user_data_folder/$SteamAppUser/config/PCSX2/inis/"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/PCSX2/inis/PCSX2.ini" "Bios" "$bios_folder" "pcsx2" "Folders"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/PCSX2/inis/PCSX2.ini" "Snapshots" "$screenshots_folder" "pcsx2" "Folders"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/PCSX2/inis/PCSX2.ini" "SaveStates" "$states_folder/ps2/pcsx2" "pcsx2" "Folders"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/PCSX2/inis/PCSX2.ini" "MemoryCards" "$saves_folder/ps2/pcsx2/memcards" "pcsx2" "Folders"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/PCSX2/inis/PCSX2.ini" "RecursivePaths" "$roms_folder/ps2" "pcsx2" "GameList"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/PCSX2" "/var/config/PCSX2"
|
|
else # Single-user actions
|
|
create_dir -d "/var/config/PCSX2/inis"
|
|
cp -fvr "$config/PCSX2/"* /var/config/PCSX2/inis/
|
|
set_setting_value "$pcsx2conf" "Bios" "$bios_folder" "pcsx2" "Folders"
|
|
set_setting_value "$pcsx2conf" "Snapshots" "$screenshots_folder" "pcsx2" "Folders"
|
|
set_setting_value "$pcsx2conf" "SaveStates" "$states_folder/ps2/pcsx2" "pcsx2" "Folders"
|
|
set_setting_value "$pcsx2conf" "MemoryCards" "$saves_folder/ps2/pcsx2/memcards" "pcsx2" "Folders"
|
|
set_setting_value "$pcsx2conf" "RecursivePaths" "$roms_folder/ps2" "pcsx2" "GameList"
|
|
fi
|
|
# Shared actions
|
|
create_dir "$saves_folder/ps2/pcsx2/memcards"
|
|
create_dir "$states_folder/ps2/pcsx2"
|
|
dir_prep "$texture_packs_folder/PCSX2" "/var/config/PCSX2/textures"
|
|
|
|
# Reset default preset settings
|
|
set_setting_value "$rd_conf" "pcsx2" "$(get_setting_value "$rd_defaults" "pcsx2" "retrodeck" "cheevos")" "retrodeck" "cheevos"
|
|
set_setting_value "$rd_conf" "pcsx2" "$(get_setting_value "$rd_defaults" "pcsx2" "retrodeck" "cheevos_hardcore")" "retrodeck" "cheevos_hardcore"
|
|
set_setting_value "$rd_conf" "pcsx2" "$(get_setting_value "$rd_defaults" "pcsx2" "retrodeck" "savestate_auto_save")" "retrodeck" "savestate_auto_save"
|
|
set_setting_value "$rd_conf" "pcsx2" "$(get_setting_value "$rd_defaults" "pcsx2" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
set_setting_value "$pcsx2conf" "Bios" "$bios_folder" "pcsx2" "Folders"
|
|
set_setting_value "$pcsx2conf" "Snapshots" "$screenshots_folder" "pcsx2" "Folders"
|
|
set_setting_value "$pcsx2conf" "SaveStates" "$states_folder/ps2/pcsx2" "pcsx2" "Folders"
|
|
set_setting_value "$pcsx2conf" "MemoryCards" "$saves_folder/ps2/pcsx2/memcards" "pcsx2" "Folders"
|
|
set_setting_value "$pcsx2conf" "RecursivePaths" "$roms_folder/ps2" "pcsx2" "GameList"
|
|
dir_prep "$texture_packs_folder/PCSX2" "/var/config/PCSX2/textures"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(pico8|pico-8|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ ("$action" == "reset") || ("$action" == "postmove") ]]; then
|
|
dir_prep "$bios_folder/pico-8" "$HOME/.lexaloffle/pico-8" # Store binary and config files together. The .lexaloffle directory is a hard-coded location for the PICO-8 config file, cannot be changed
|
|
dir_prep "$roms_folder/pico8" "$bios_folder/pico-8/carts" # Symlink default game location to RD roms for cleanliness (this location is overridden anyway by the --root_path launch argument anyway)
|
|
dir_prep "$saves_folder/pico-8" "$bios_folder/pico-8/cdata" # PICO-8 saves folder
|
|
cp -fv "$config/pico-8/config.txt" "$bios_folder/pico-8/config.txt"
|
|
cp -fv "$config/pico-8/sdl_controllers.txt" "$bios_folder/pico-8/sdl_controllers.txt"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(ppsspp|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "------------------------"
|
|
log i "Prepearing PPSSPPSDL"
|
|
log i "------------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/ppsspp/PSP/SYSTEM/"
|
|
cp -fv "$config/ppssppsdl/"* "$multi_user_data_folder/$SteamAppUser/config/ppsspp/PSP/SYSTEM/"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/ppsspp/PSP/SYSTEM/ppsspp.ini" "CurrentDirectory" "$roms_folder/psp" "ppsspp" "General"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/ppsspp" "/var/config/ppsspp"
|
|
else # Single-user actions
|
|
create_dir -d /var/config/ppsspp/PSP/SYSTEM/
|
|
cp -fv "$config/ppssppsdl/"* /var/config/ppsspp/PSP/SYSTEM/
|
|
set_setting_value "$ppssppconf" "CurrentDirectory" "$roms_folder/psp" "ppsspp" "General"
|
|
fi
|
|
# Shared actions
|
|
dir_prep "$saves_folder/PSP/PPSSPP-SA" "/var/config/ppsspp/PSP/SAVEDATA"
|
|
dir_prep "$states_folder/PSP/PPSSPP-SA" "/var/config/ppsspp/PSP/PPSSPP_STATE"
|
|
dir_prep "$texture_packs_folder/PPSSPP" "/var/config/ppsspp/PSP/TEXTURES"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
set_setting_value "$ppssppconf" "CurrentDirectory" "$roms_folder/psp" "ppsspp" "General"
|
|
dir_prep "$saves_folder/PSP/PPSSPP-SA" "/var/config/ppsspp/PSP/SAVEDATA"
|
|
dir_prep "$states_folder/PSP/PPSSPP-SA" "/var/config/ppsspp/PSP/PPSSPP_STATE"
|
|
dir_prep "$texture_packs_folder/PPSSPP" "/var/config/ppsspp/PSP/TEXTURES"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(primehack|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "----------------------"
|
|
log i "Prepearing Primehack"
|
|
log i "----------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/primehack"
|
|
cp -fvr "$config/primehack/config/"* "$multi_user_data_folder/$SteamAppUser/config/primehack/"
|
|
set_setting_value ""$multi_user_data_folder/$SteamAppUser/config/primehack/Dolphin.ini"" "ISOPath0" "$roms_folder/gc" "primehack" "General"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/primehack" "/var/config/primehack"
|
|
else # Single-user actions
|
|
create_dir -d /var/config/primehack/
|
|
cp -fvr "$config/primehack/config/"* /var/config/primehack/
|
|
set_setting_value "$primehackconf" "ISOPath0" "$roms_folder/gc" "primehack" "General"
|
|
fi
|
|
# Shared actions
|
|
dir_prep "$saves_folder/gc/primehack/EU" "/var/data/primehack/GC/EUR"
|
|
dir_prep "$saves_folder/gc/primehack/US" "/var/data/primehack/GC/USA"
|
|
dir_prep "$saves_folder/gc/primehack/JP" "/var/data/primehack/GC/JAP"
|
|
dir_prep "$screenshots_folder" "/var/data/primehack/ScreenShots"
|
|
dir_prep "$states_folder/primehack" "/var/data/primehack/StateSaves"
|
|
create_dir /var/data/primehack/Wii/
|
|
dir_prep "$saves_folder/wii/primehack" "/var/data/primehack/Wii"
|
|
dir_prep "$mods_folder/Primehack" "/var/data/primehack/Load/GraphicMods"
|
|
dir_prep "$texture_packs_folder/Primehack" "/var/data/primehack/Load/Textures"
|
|
cp -fvr "$config/primehack/data/"* "$multi_user_data_folder/$SteamAppUser/data/primehack/" # this must be done after the dirs are prepared as it copying some "mods"
|
|
|
|
# Reset default preset settings
|
|
set_setting_value "$rd_conf" "primehack" "$(get_setting_value "$rd_defaults" "primehack" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
dir_prep "$saves_folder/gc/primehack/EU" "/var/data/primehack/GC/EUR"
|
|
dir_prep "$saves_folder/gc/primehack/US" "/var/data/primehack/GC/USA"
|
|
dir_prep "$saves_folder/gc/primehack/JP" "/var/data/primehack/GC/JAP"
|
|
dir_prep "$screenshots_folder" "/var/data/primehack/ScreenShots"
|
|
dir_prep "$states_folder/primehack" "/var/data/primehack/StateSaves"
|
|
dir_prep "$saves_folder/wii/primehack" "/var/data/primehack/Wii/"
|
|
dir_prep "$mods_folder/Primehack" "/var/data/primehack/Load/GraphicMods"
|
|
dir_prep "$texture_packs_folder/Primehack" "/var/data/primehack/Load/Textures"
|
|
set_setting_value "$primehackconf" "ISOPath0" "$roms_folder/gc" "primehack" "General"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(rpcs3|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "------------------------"
|
|
log i "Prepearing RPCS3"
|
|
log i "------------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/rpcs3/"
|
|
cp -fr "$config/rpcs3/"* "$multi_user_data_folder/$SteamAppUser/config/rpcs3/"
|
|
# This is an unfortunate one-off because set_setting_value does not currently support settings with $ in the name.
|
|
sed -i 's^\^$(EmulatorDir): .*^$(EmulatorDir): '"$bios_folder/rpcs3/"'^' "$multi_user_data_folder/$SteamAppUser/config/rpcs3/vfs.yml"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/rpcs3/vfs.yml" "/games/" "$roms_folder/ps3/" "rpcs3"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/rpcs3" "/var/config/rpcs3"
|
|
else # Single-user actions
|
|
create_dir -d /var/config/rpcs3/
|
|
cp -fr "$config/rpcs3/"* /var/config/rpcs3/
|
|
# This is an unfortunate one-off because set_setting_value does not currently support settings with $ in the name.
|
|
sed -i 's^\^$(EmulatorDir): .*^$(EmulatorDir): '"$bios_folder/rpcs3/"'^' "$rpcs3vfsconf"
|
|
set_setting_value "$rpcs3vfsconf" "/games/" "$roms_folder/ps3/" "rpcs3"
|
|
dir_prep "$saves_folder/ps3/rpcs3" "$bios_folder/rpcs3/dev_hdd0/home/00000001/savedata"
|
|
fi
|
|
# Shared actions
|
|
create_dir "$bios_folder/rpcs3/dev_hdd0"
|
|
create_dir "$bios_folder/rpcs3/dev_hdd1"
|
|
create_dir "$bios_folder/rpcs3/dev_flash"
|
|
create_dir "$bios_folder/rpcs3/dev_flash2"
|
|
create_dir "$bios_folder/rpcs3/dev_flash3"
|
|
create_dir "$bios_folder/rpcs3/dev_bdvd"
|
|
create_dir "$bios_folder/rpcs3/dev_usb000"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
# This is an unfortunate one-off because set_setting_value does not currently support settings with $ in the name.
|
|
sed -i 's^\^$(EmulatorDir): .*^$(EmulatorDir): '"$bios_folder/rpcs3"'^' "$rpcs3vfsconf"
|
|
set_setting_value "$rpcs3vfsconf" "/games/" "$roms_folder/ps3" "rpcs3"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(ryujinx|all)$ ]]; then
|
|
component_found="true"
|
|
# 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
|
|
log i "------------------------"
|
|
log i "Prepearing RYUJINX"
|
|
log i "------------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then
|
|
rm -rf "$multi_user_data_folder/$SteamAppUser/config/Ryujinx"
|
|
#create_dir "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/system"
|
|
# TODO: add /var/config/Ryujinx/system system folder management
|
|
cp -fv $config/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 nand (saves) folder management
|
|
# TODO: add "registered" folder management
|
|
else
|
|
# removing config directory to wipe legacy files
|
|
log d "Removing \"/var/config/Ryujinx\""
|
|
rm -rf /var/config/Ryujinx
|
|
create_dir /var/config/Ryujinx/system
|
|
cp -fv $config/ryujinx/Config.json $ryujinxconf
|
|
cp -fvr $config/ryujinx/profiles /var/config/Ryujinx/
|
|
log d "Replacing placeholders in \"$ryujinxconf\""
|
|
sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf"
|
|
log i "Linking switch nand/saves folder"
|
|
log d "Removing \"/var/config/Ryujinx/bis\", it will become a symlink"
|
|
rm -rf /var/config/Ryujinx/bis
|
|
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/firmware" "/var/config/Ryujinx/bis/system/Contents/registered"
|
|
dir_prep "$bios_folder/switch/keys" "/var/config/Ryujinx/system"
|
|
# TODO: delete these two lines after Ryujinx is back to a proper build
|
|
log i "Since in this version we moved to a PR build of Ryujinx we need to symlink it." # TODO: deleteme later
|
|
ln -sv $ryujinxconf "$(dirname $ryujinxconf)/PRConfig.json" # TODO: deleteme later
|
|
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" == "postmove" ]]; then # Run only post-move commands
|
|
log d "Replacing placeholders in \"$ryujinxconf\""
|
|
sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" # This is an unfortunate one-off because set_setting_value does not currently support JSON
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(yuzu|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "----------------------"
|
|
log i "Prepearing YUZU"
|
|
log i "----------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/yuzu"
|
|
cp -fvr "$config/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" "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"
|
|
else # Single-user actions
|
|
create_dir -d /var/config/yuzu/
|
|
cp -fvr "$config/yuzu/"* /var/config/yuzu/
|
|
set_setting_value "$yuzuconf" "nand_directory" "$saves_folder/switch/yuzu/nand" "yuzu" "Data%20Storage"
|
|
set_setting_value "$yuzuconf" "sdmc_directory" "$saves_folder/switch/yuzu/sdmc" "yuzu" "Data%20Storage"
|
|
set_setting_value "$yuzuconf" "Paths\gamedirs\4\path" "$roms_folder/switch" "yuzu" "UI"
|
|
set_setting_value "$yuzuconf" "Screenshots\screenshot_path" "$screenshots_folder" "yuzu" "UI"
|
|
fi
|
|
# Shared actions
|
|
dir_prep "$saves_folder/switch/yuzu/nand" "/var/data/yuzu/nand"
|
|
dir_prep "$saves_folder/switch/yuzu/sdmc" "/var/data/yuzu/sdmc"
|
|
dir_prep "$bios_folder/switch/keys" "/var/data/yuzu/keys"
|
|
dir_prep "$bios_folder/switch/firmware" "/var/data/yuzu/nand/system/Contents/registered"
|
|
dir_prep "$logs_folder/yuzu" "/var/data/yuzu/log"
|
|
dir_prep "$screenshots_folder" "/var/data/yuzu/screenshots"
|
|
dir_prep "$mods_folder/Yuzu" "/var/data/yuzu/load"
|
|
# removing dead symlinks as they were present in a past version
|
|
if [ -d $bios_folder/switch ]; then
|
|
find $bios_folder/switch -xtype l -exec rm {} \;
|
|
fi
|
|
|
|
# Reset default preset settings
|
|
set_setting_value "$rd_conf" "yuzu" "$(get_setting_value "$rd_defaults" "yuzu" "retrodeck" "abxy_button_swap")" "retrodeck" "abxy_button_swap"
|
|
set_setting_value "$rd_conf" "yuzu" "$(get_setting_value "$rd_defaults" "yuzu" "retrodeck" "ask_to_exit")" "retrodeck" "ask_to_exit"
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
dir_prep "$bios_folder/switch/keys" "/var/data/yuzu/keys"
|
|
dir_prep "$bios_folder/switch/firmware" "/var/data/yuzu/nand/system/Contents/registered"
|
|
dir_prep "$saves_folder/switch/yuzu/nand" "/var/data/yuzu/nand"
|
|
dir_prep "$saves_folder/switch/yuzu/sdmc" "/var/data/yuzu/sdmc"
|
|
dir_prep "$logs_folder/yuzu" "/var/data/yuzu/log"
|
|
dir_prep "$screenshots_folder" "/var/data/yuzu/screenshots"
|
|
dir_prep "$mods_folder/Yuzu" "/var/data/yuzu/load"
|
|
set_setting_value "$yuzuconf" "nand_directory" "$saves_folder/switch/yuzu/nand" "yuzu" "Data%20Storage"
|
|
set_setting_value "$yuzuconf" "sdmc_directory" "$saves_folder/switch/yuzu/sdmc" "yuzu" "Data%20Storage"
|
|
set_setting_value "$yuzuconf" "Paths\gamedirs\4\path" "$roms_folder/switch" "yuzu" "UI"
|
|
set_setting_value "$yuzuconf" "Screenshots\screenshot_path" "$screenshots_folder" "yuzu" "UI"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(xemu|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "------------------------"
|
|
log i "Prepearing XEMU"
|
|
log i "------------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
rm -rf /var/config/xemu
|
|
rm -rf /var/data/xemu
|
|
create_dir -d "$multi_user_data_folder/$SteamAppUser/config/xemu/"
|
|
cp -fv $config/xemu/xemu.toml "$multi_user_data_folder/$SteamAppUser/config/xemu/xemu.toml"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/xemu/xemu.toml" "screenshot_dir" "'$screenshots_folder'" "xemu" "General"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/xemu/xemu.toml" "bootrom_path" "'$bios_folder/mcpx_1.0.bin'" "xemu" "sys.files"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/xemu/xemu.toml" "flashrom_path" "'$bios_folder/Complex.bin'" "xemu" "sys.files"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/xemu/xemu.toml" "eeprom_path" "'$saves_folder/xbox/xemu/xbox-eeprom.bin'" "xemu" "sys.files"
|
|
set_setting_value "$multi_user_data_folder/$SteamAppUser/config/xemu/xemu.toml" "hdd_path" "'$bios_folder/xbox_hdd.qcow2'" "xemu" "sys.files"
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/xemu" "/var/config/xemu" # Creating config folder in /var/config for consistentcy and linking back to original location where component will look
|
|
dir_prep "$multi_user_data_folder/$SteamAppUser/config/xemu" "/var/data/xemu/xemu"
|
|
else # Single-user actions
|
|
rm -rf /var/config/xemu
|
|
rm -rf /var/data/xemu
|
|
dir_prep "/var/config/xemu" "/var/data/xemu/xemu" # Creating config folder in /var/config for consistentcy and linking back to original location where component will look
|
|
cp -fv $config/xemu/xemu.toml "$xemuconf"
|
|
set_setting_value "$xemuconf" "screenshot_dir" "'$screenshots_folder'" "xemu" "General"
|
|
set_setting_value "$xemuconf" "bootrom_path" "'$bios_folder/mcpx_1.0.bin'" "xemu" "sys.files"
|
|
set_setting_value "$xemuconf" "flashrom_path" "'$bios_folder/Complex.bin'" "xemu" "sys.files"
|
|
set_setting_value "$xemuconf" "eeprom_path" "'$saves_folder/xbox/xemu/xbox-eeprom.bin'" "xemu" "sys.files"
|
|
set_setting_value "$xemuconf" "hdd_path" "'$bios_folder/xbox_hdd.qcow2'" "xemu" "sys.files"
|
|
fi # Shared actions
|
|
create_dir $saves_folder/xbox/xemu/
|
|
# Preparing HD dummy Image if the image is not found
|
|
if [ ! -f $bios_folder/xbox_hdd.qcow2 ]
|
|
then
|
|
cp -f "/app/retrodeck/extras/XEMU/xbox_hdd.qcow2" "$bios_folder/xbox_hdd.qcow2"
|
|
fi
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
set_setting_value "$xemuconf" "screenshot_dir" "'$screenshots_folder'" "xemu" "General"
|
|
set_setting_value "$xemuconf" "bootrom_path" "'$bios_folder/mcpx_1.0.bin'" "xemu" "sys.files"
|
|
set_setting_value "$xemuconf" "flashrom_path" "'$bios_folder/Complex.bin'" "xemu" "sys.files"
|
|
set_setting_value "$xemuconf" "eeprom_path" "'$saves_folder/xbox/xemu/xbox-eeprom.bin'" "xemu" "sys.files"
|
|
set_setting_value "$xemuconf" "hdd_path" "'$bios_folder/xbox_hdd.qcow2'" "xemu" "sys.files"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(vita3k|all)$ ]]; then
|
|
component_found="true"
|
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
|
log i "----------------------"
|
|
log i "Prepearing Vita3K"
|
|
log i "----------------------"
|
|
if [[ $multi_user_mode == "true" ]]; then # Multi-user actions
|
|
log d "Figure out what Vita3k needs for multi-user"
|
|
else # Single-user actions
|
|
# NOTE: the component is writing in "." so it must be placed in the rw filesystem. A symlink of the binary is already placed in /app/bin/Vita3K
|
|
rm -rf "/var/config/Vita3K"
|
|
create_dir "/var/config/Vita3K"
|
|
cp -fvr "$config/vita3k/config.yml" "$vita3kconf" # component config
|
|
cp -fvr "$config/vita3k/ux0" "$bios_folder/Vita3K/" # User config
|
|
set_setting_value "$vita3kconf" "pref-path" "$bios_folder/Vita3K/" "vita3k"
|
|
fi
|
|
# Shared actions
|
|
dir_prep "$saves_folder/psvita/vita3k" "$bios_folder/Vita3K/ux0/user/00/savedata" # Multi-user safe?
|
|
fi
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
dir_prep "$saves_folder/psvita/vita3k" "$bios_folder/Vita3K/ux0/user/00/savedata" # Multi-user safe?
|
|
set_setting_value "$vita3kconf" "pref-path" "$bios_folder/Vita3K/" "vita3k"
|
|
fi
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(mame|all)$ ]]; then
|
|
component_found="true"
|
|
# TODO: do a proper script
|
|
# This is just a placeholder script to test the emulator's flow
|
|
log i "----------------------"
|
|
log i "Prepearing MAME"
|
|
log i "----------------------"
|
|
|
|
# TODO: probably some of these needs to be put elsewhere
|
|
create_dir "$saves_folder/mame-sa"
|
|
create_dir "$saves_folder/mame-sa/nvram"
|
|
create_dir "$states_folder/mame-sa"
|
|
create_dir "$rdhome/screenshots/mame-sa"
|
|
create_dir "$saves_folder/mame-sa/diff"
|
|
|
|
create_dir "/var/config/ctrlr"
|
|
create_dir "/var/config/mame/ini"
|
|
create_dir "/var/config/mame/cfg"
|
|
create_dir "/var/config/mame/inp"
|
|
|
|
create_dir "/var/data/mame/plugin-data"
|
|
create_dir "/var/data/mame/hash"
|
|
create_dir "$bios_folder/mame-sa/samples"
|
|
create_dir "/var/data/mame/assets/artwork"
|
|
create_dir "/var/data/mame/assets/fonts"
|
|
create_dir "/var/data/mame/cheat"
|
|
create_dir "/var/data/mame/assets/crosshair"
|
|
create_dir "/var/data/mame/plugins"
|
|
create_dir "/var/data/mame/assets/language"
|
|
create_dir "/var/data/mame/assets/software"
|
|
create_dir "/var/data/mame/assets/comments"
|
|
create_dir "/var/data/mame/assets/share"
|
|
create_dir "/var/data/mame/dats"
|
|
create_dir "/var/data/mame/folders"
|
|
create_dir "/var/data/mame/assets/cabinets"
|
|
create_dir "/var/data/mame/assets/cpanel"
|
|
create_dir "/var/data/mame/assets/pcb"
|
|
create_dir "/var/data/mame/assets/flyers"
|
|
create_dir "/var/data/mame/assets/titles"
|
|
create_dir "/var/data/mame/assets/ends"
|
|
create_dir "/var/data/mame/assets/marquees"
|
|
create_dir "/var/data/mame/assets/artwork-preview"
|
|
create_dir "/var/data/mame/assets/bosses"
|
|
create_dir "/var/data/mame/assets/logo"
|
|
create_dir "/var/data/mame/assets/scores"
|
|
create_dir "/var/data/mame/assets/versus"
|
|
create_dir "/var/data/mame/assets/gameover"
|
|
create_dir "/var/data/mame/assets/howto"
|
|
create_dir "/var/data/mame/assets/select"
|
|
create_dir "/var/data/mame/assets/icons"
|
|
create_dir "/var/data/mame/assets/covers"
|
|
create_dir "/var/data/mame/assets/ui"
|
|
|
|
dir_prep "$saves_folder/mame-sa/hiscore" "/var/config/mame/hiscore"
|
|
cp -fvr "$config/mame/mame.ini" "$mameconf"
|
|
cp -fvr "$config/mame/ui.ini" "$mameuiconf"
|
|
cp -fvr "$config/mame/default.cfg" "$mamedefconf"
|
|
|
|
sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "$mameconf" # one-off as roms folders are a lot
|
|
set_setting_value "$mameconf" "nvram_directory" "$saves_folder/mame-sa/nvram" "mame"
|
|
set_setting_value "$mameconf" "state_directory" "$states_folder/mame-sa" "mame"
|
|
set_setting_value "$mameconf" "snapshot_directory" "$screenshots_folder/mame-sa" "mame"
|
|
set_setting_value "$mameconf" "diff_directory" "$saves_folder/mame-sa/diff" "mame"
|
|
set_setting_value "$mameconf" "samplepath" "$bios_folder/mame-sa/samples" "mame"
|
|
|
|
log i "Placing cheats in \"/var/data/mame/cheat\""
|
|
unzip -j -o "$config/mame/cheat0264.zip" 'cheat.7z' -d "/var/data/mame/cheat"
|
|
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(gzdoom|all)$ ]]; then
|
|
component_found="true"
|
|
# TODO: do a proper script
|
|
# This is just a placeholder script to test the emulator's flow
|
|
log i "----------------------"
|
|
log i "Prepearing GZDOOM"
|
|
log i "----------------------"
|
|
|
|
create_dir "/var/config/gzdoom"
|
|
create_dir "/var/data/gzdoom/audio/midi"
|
|
create_dir "/var/data/gzdoom/audio/fm_banks"
|
|
create_dir "/var/data/gzdoom/audio/soundfonts"
|
|
create_dir "$bios_folder/gzdoom"
|
|
|
|
cp -fvr "$config/gzdoom/gzdoom.ini" "/var/config/gzdoom"
|
|
|
|
sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "/var/config/gzdoom/gzdoom.ini" # This is an unfortunate one-off because set_setting_value does not currently support JSON
|
|
sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/gzdoom/gzdoom.ini" # This is an unfortunate one-off because set_setting_value does not currently support JSON
|
|
sed -i 's#RETRODECKSAVESDIR#'$saves_folder'#g' "/var/config/gzdoom/gzdoom.ini" # This is an unfortunate one-off because set_setting_value does not currently support JSON
|
|
fi
|
|
|
|
if [[ "$component" =~ ^(ruffle|all)$ ]]; then
|
|
component_found="true"
|
|
log i "----------------------"
|
|
log i "Prepearing Ruffle"
|
|
log i "----------------------"
|
|
|
|
rm -rf "/var/config/ruffle"
|
|
|
|
# Ruffle creates a directory with the full rom paths in it, so this is necessary
|
|
# TODO: be aware of this when multi user support will be integrated for this component
|
|
dir_prep "$saves_folder/flash" "/var/data/ruffle/SharedObjects/localhost/$roms_folder/flash"
|
|
|
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
|
dir_prep "$saves_folder/flash" "/var/data/ruffle/SharedObjects/localhost/$roms_folder/flash"
|
|
fi
|
|
|
|
fi
|
|
|
|
if [[ $component_found == "false" ]]; then
|
|
log e "Supplied component $component not found, not resetting"
|
|
fi
|
|
|
|
# Update presets for all components after any reset or move
|
|
if [[ ! "$component" == "retrodeck" ]]; then
|
|
build_retrodeck_current_presets
|
|
fi
|
|
}
|