mirror of
https://github.com/RetroDECK/RetroDECK.git
synced 2024-11-22 05:55:38 +00:00
Merge branch 'cooker-0.8.0b' into feat/esde-3.0
This commit is contained in:
commit
6ad8c1080e
3
emu-configs/mame/mame-rdwrapper.sh
Executable file
3
emu-configs/mame/mame-rdwrapper.sh
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
mame -inipath /var/config/mame
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"version": 48,
|
"version": 49,
|
||||||
"enable_file_log": true,
|
"enable_file_log": true,
|
||||||
"backend_threading": "Auto",
|
"backend_threading": "Auto",
|
||||||
"res_scale": 1,
|
"res_scale": 1,
|
||||||
|
@ -12,7 +12,7 @@
|
||||||
"graphics_shaders_dump_path": "",
|
"graphics_shaders_dump_path": "",
|
||||||
"logging_enable_debug": false,
|
"logging_enable_debug": false,
|
||||||
"logging_enable_stub": false,
|
"logging_enable_stub": false,
|
||||||
"logging_enable_info": true,
|
"logging_enable_info": false,
|
||||||
"logging_enable_warn": true,
|
"logging_enable_warn": true,
|
||||||
"logging_enable_error": true,
|
"logging_enable_error": true,
|
||||||
"logging_enable_trace": false,
|
"logging_enable_trace": false,
|
||||||
|
@ -91,13 +91,13 @@
|
||||||
"enable_keyboard": false,
|
"enable_keyboard": false,
|
||||||
"enable_mouse": false,
|
"enable_mouse": false,
|
||||||
"hotkeys": {
|
"hotkeys": {
|
||||||
"toggle_vsync": "F1",
|
"toggle_vsync": "Unknown",
|
||||||
"screenshot": "F8",
|
"screenshot": "Unknown",
|
||||||
"show_ui": "F4",
|
"show_ui": "F1",
|
||||||
"pause": "F5",
|
"pause": "F4",
|
||||||
"toggle_mute": "F2",
|
"toggle_mute": "Unknown",
|
||||||
"res_scale_up": "Unbound",
|
"res_scale_up": "F7",
|
||||||
"res_scale_down": "Unbound",
|
"res_scale_down": "F8",
|
||||||
"volume_up": "Unbound",
|
"volume_up": "Unbound",
|
||||||
"volume_down": "Unbound"
|
"volume_down": "Unbound"
|
||||||
},
|
},
|
||||||
|
@ -121,22 +121,27 @@
|
||||||
},
|
},
|
||||||
"deadzone_left": 0,
|
"deadzone_left": 0,
|
||||||
"deadzone_right": 0,
|
"deadzone_right": 0,
|
||||||
"range_left": 1,
|
"range_left": 1.2,
|
||||||
"range_right": 1,
|
"range_right": 1,
|
||||||
"trigger_threshold": 0.5,
|
"trigger_threshold": 0,
|
||||||
"motion": {
|
"motion": {
|
||||||
"motion_backend": "GamepadDriver",
|
"slot": 0,
|
||||||
|
"alt_slot": 0,
|
||||||
|
"mirror_input": false,
|
||||||
|
"dsu_server_host": "127.0.0.1",
|
||||||
|
"dsu_server_port": 26760,
|
||||||
|
"motion_backend": "CemuHook",
|
||||||
"sensitivity": 100,
|
"sensitivity": 100,
|
||||||
"gyro_deadzone": 1,
|
"gyro_deadzone": 1,
|
||||||
"enable_motion": true
|
"enable_motion": true
|
||||||
},
|
},
|
||||||
"rumble": {
|
"rumble": {
|
||||||
"strong_rumble": 1,
|
"strong_rumble": 2.1,
|
||||||
"weak_rumble": 1,
|
"weak_rumble": 1,
|
||||||
"enable_rumble": true
|
"enable_rumble": true
|
||||||
},
|
},
|
||||||
"left_joycon": {
|
"left_joycon": {
|
||||||
"button_minus": "Minus",
|
"button_minus": "Back",
|
||||||
"button_l": "LeftShoulder",
|
"button_l": "LeftShoulder",
|
||||||
"button_zl": "LeftTrigger",
|
"button_zl": "LeftTrigger",
|
||||||
"button_sl": "Unbound",
|
"button_sl": "Unbound",
|
||||||
|
@ -147,7 +152,7 @@
|
||||||
"dpad_right": "DpadRight"
|
"dpad_right": "DpadRight"
|
||||||
},
|
},
|
||||||
"right_joycon": {
|
"right_joycon": {
|
||||||
"button_plus": "Plus",
|
"button_plus": "Start",
|
||||||
"button_r": "RightShoulder",
|
"button_r": "RightShoulder",
|
||||||
"button_zr": "RightTrigger",
|
"button_zr": "RightTrigger",
|
||||||
"button_sl": "Unbound",
|
"button_sl": "Unbound",
|
||||||
|
@ -160,12 +165,190 @@
|
||||||
"version": 1,
|
"version": 1,
|
||||||
"backend": "GamepadSDL2",
|
"backend": "GamepadSDL2",
|
||||||
"id": "0-f6790003-28de-0000-ff11-000001000000",
|
"id": "0-f6790003-28de-0000-ff11-000001000000",
|
||||||
"controller_type": "Handheld",
|
"controller_type": "ProController",
|
||||||
"player_index": "Handheld"
|
"player_index": "Player1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"left_joycon_stick": {
|
||||||
|
"joystick": "Left",
|
||||||
|
"invert_stick_x": false,
|
||||||
|
"invert_stick_y": false,
|
||||||
|
"rotate90_cw": false,
|
||||||
|
"stick_button": "LeftStick"
|
||||||
|
},
|
||||||
|
"right_joycon_stick": {
|
||||||
|
"joystick": "Right",
|
||||||
|
"invert_stick_x": false,
|
||||||
|
"invert_stick_y": false,
|
||||||
|
"rotate90_cw": false,
|
||||||
|
"stick_button": "RightStick"
|
||||||
|
},
|
||||||
|
"deadzone_left": 0,
|
||||||
|
"deadzone_right": 0,
|
||||||
|
"range_left": 1.2,
|
||||||
|
"range_right": 1,
|
||||||
|
"trigger_threshold": 0,
|
||||||
|
"motion": {
|
||||||
|
"motion_backend": "GamepadDriver",
|
||||||
|
"sensitivity": 100,
|
||||||
|
"gyro_deadzone": 1,
|
||||||
|
"enable_motion": false
|
||||||
|
},
|
||||||
|
"rumble": {
|
||||||
|
"strong_rumble": 1,
|
||||||
|
"weak_rumble": 1,
|
||||||
|
"enable_rumble": true
|
||||||
|
},
|
||||||
|
"left_joycon": {
|
||||||
|
"button_minus": "Back",
|
||||||
|
"button_l": "LeftShoulder",
|
||||||
|
"button_zl": "LeftTrigger",
|
||||||
|
"button_sl": "Unbound",
|
||||||
|
"button_sr": "Unbound",
|
||||||
|
"dpad_up": "DpadUp",
|
||||||
|
"dpad_down": "DpadDown",
|
||||||
|
"dpad_left": "DpadLeft",
|
||||||
|
"dpad_right": "DpadRight"
|
||||||
|
},
|
||||||
|
"right_joycon": {
|
||||||
|
"button_plus": "Start",
|
||||||
|
"button_r": "RightShoulder",
|
||||||
|
"button_zr": "RightTrigger",
|
||||||
|
"button_sl": "Unbound",
|
||||||
|
"button_sr": "Unbound",
|
||||||
|
"button_x": "Y",
|
||||||
|
"button_b": "A",
|
||||||
|
"button_y": "X",
|
||||||
|
"button_a": "B"
|
||||||
|
},
|
||||||
|
"version": 1,
|
||||||
|
"backend": "GamepadSDL2",
|
||||||
|
"id": "1-00000003-28de-0000-ff11-000001000000",
|
||||||
|
"controller_type": "ProController",
|
||||||
|
"player_index": "Player2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"left_joycon_stick": {
|
||||||
|
"joystick": "Left",
|
||||||
|
"invert_stick_x": false,
|
||||||
|
"invert_stick_y": false,
|
||||||
|
"rotate90_cw": false,
|
||||||
|
"stick_button": "LeftStick"
|
||||||
|
},
|
||||||
|
"right_joycon_stick": {
|
||||||
|
"joystick": "Right",
|
||||||
|
"invert_stick_x": false,
|
||||||
|
"invert_stick_y": false,
|
||||||
|
"rotate90_cw": false,
|
||||||
|
"stick_button": "RightStick"
|
||||||
|
},
|
||||||
|
"deadzone_left": 0,
|
||||||
|
"deadzone_right": 0,
|
||||||
|
"range_left": 1.2,
|
||||||
|
"range_right": 1,
|
||||||
|
"trigger_threshold": 0,
|
||||||
|
"motion": {
|
||||||
|
"motion_backend": "GamepadDriver",
|
||||||
|
"sensitivity": 100,
|
||||||
|
"gyro_deadzone": 1,
|
||||||
|
"enable_motion": false
|
||||||
|
},
|
||||||
|
"rumble": {
|
||||||
|
"strong_rumble": 1,
|
||||||
|
"weak_rumble": 1,
|
||||||
|
"enable_rumble": true
|
||||||
|
},
|
||||||
|
"left_joycon": {
|
||||||
|
"button_minus": "Back",
|
||||||
|
"button_l": "LeftShoulder",
|
||||||
|
"button_zl": "LeftTrigger",
|
||||||
|
"button_sl": "Unbound",
|
||||||
|
"button_sr": "Unbound",
|
||||||
|
"dpad_up": "DpadUp",
|
||||||
|
"dpad_down": "DpadDown",
|
||||||
|
"dpad_left": "DpadLeft",
|
||||||
|
"dpad_right": "DpadRight"
|
||||||
|
},
|
||||||
|
"right_joycon": {
|
||||||
|
"button_plus": "Start",
|
||||||
|
"button_r": "RightShoulder",
|
||||||
|
"button_zr": "RightTrigger",
|
||||||
|
"button_sl": "Unbound",
|
||||||
|
"button_sr": "Unbound",
|
||||||
|
"button_x": "Y",
|
||||||
|
"button_b": "A",
|
||||||
|
"button_y": "X",
|
||||||
|
"button_a": "B"
|
||||||
|
},
|
||||||
|
"version": 1,
|
||||||
|
"backend": "GamepadSDL2",
|
||||||
|
"id": "2-00000003-28de-0000-ff11-000001000000",
|
||||||
|
"controller_type": "ProController",
|
||||||
|
"player_index": "Player3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"left_joycon_stick": {
|
||||||
|
"joystick": "Left",
|
||||||
|
"invert_stick_x": false,
|
||||||
|
"invert_stick_y": false,
|
||||||
|
"rotate90_cw": false,
|
||||||
|
"stick_button": "LeftStick"
|
||||||
|
},
|
||||||
|
"right_joycon_stick": {
|
||||||
|
"joystick": "Right",
|
||||||
|
"invert_stick_x": false,
|
||||||
|
"invert_stick_y": false,
|
||||||
|
"rotate90_cw": false,
|
||||||
|
"stick_button": "RightStick"
|
||||||
|
},
|
||||||
|
"deadzone_left": 0,
|
||||||
|
"deadzone_right": 0,
|
||||||
|
"range_left": 1.2,
|
||||||
|
"range_right": 1,
|
||||||
|
"trigger_threshold": 0,
|
||||||
|
"motion": {
|
||||||
|
"motion_backend": "GamepadDriver",
|
||||||
|
"sensitivity": 100,
|
||||||
|
"gyro_deadzone": 1,
|
||||||
|
"enable_motion": false
|
||||||
|
},
|
||||||
|
"rumble": {
|
||||||
|
"strong_rumble": 1,
|
||||||
|
"weak_rumble": 1,
|
||||||
|
"enable_rumble": true
|
||||||
|
},
|
||||||
|
"left_joycon": {
|
||||||
|
"button_minus": "Back",
|
||||||
|
"button_l": "LeftShoulder",
|
||||||
|
"button_zl": "LeftTrigger",
|
||||||
|
"button_sl": "Unbound",
|
||||||
|
"button_sr": "Unbound",
|
||||||
|
"dpad_up": "DpadUp",
|
||||||
|
"dpad_down": "DpadDown",
|
||||||
|
"dpad_left": "DpadLeft",
|
||||||
|
"dpad_right": "DpadRight"
|
||||||
|
},
|
||||||
|
"right_joycon": {
|
||||||
|
"button_plus": "Start",
|
||||||
|
"button_r": "RightShoulder",
|
||||||
|
"button_zr": "RightTrigger",
|
||||||
|
"button_sl": "Unbound",
|
||||||
|
"button_sr": "Unbound",
|
||||||
|
"button_x": "Y",
|
||||||
|
"button_b": "A",
|
||||||
|
"button_y": "X",
|
||||||
|
"button_a": "B"
|
||||||
|
},
|
||||||
|
"version": 1,
|
||||||
|
"backend": "GamepadSDL2",
|
||||||
|
"id": "3-00000003-28de-0000-ff11-000001000000",
|
||||||
|
"controller_type": "ProController",
|
||||||
|
"player_index": "Player4"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"graphics_backend": "Vulkan",
|
"graphics_backend": "Vulkan",
|
||||||
"preferred_gpu": "0x1002_0x163F",
|
"preferred_gpu": "0x1002_0x163F",
|
||||||
|
"multiplayer_mode": 0,
|
||||||
"multiplayer_lan_interface_id": "0",
|
"multiplayer_lan_interface_id": "0",
|
||||||
"use_hypervisor": true
|
"use_hypervisor": true
|
||||||
}
|
}
|
|
@ -815,9 +815,9 @@ gamecard_path=
|
||||||
gamecard_path\default=true
|
gamecard_path\default=true
|
||||||
load_directory=/var/data/yuzu/load
|
load_directory=/var/data/yuzu/load
|
||||||
load_directory\default=true
|
load_directory\default=true
|
||||||
nand_directory=RETRODECKHOMEDIR/saves/switch/yuzu/nand
|
nand_directory=RETRODECKHOMEDIR/saves/switch/nand
|
||||||
nand_directory\default=true
|
nand_directory\default=true
|
||||||
sdmc_directory=RETRODECKHOMEDIR/saves/switch/yuzu/sdmc
|
sdmc_directory=RETRODECKHOMEDIR/saves/switch/sdmc
|
||||||
sdmc_directory\default=true
|
sdmc_directory\default=true
|
||||||
tas_directory=/var/data/yuzu/tas
|
tas_directory=/var/data/yuzu/tas
|
||||||
tas_directory\default=true
|
tas_directory\default=true
|
||||||
|
|
|
@ -463,7 +463,7 @@
|
||||||
<emulator name="MAME">
|
<emulator name="MAME">
|
||||||
<!-- Arcade emulator MAME -->
|
<!-- Arcade emulator MAME -->
|
||||||
<rule type="systempath">
|
<rule type="systempath">
|
||||||
<entry>mame</entry>
|
<entry>mame-rdwrapper.sh</entry>
|
||||||
<entry>org.mamedev.MAME</entry>
|
<entry>org.mamedev.MAME</entry>
|
||||||
</rule>
|
</rule>
|
||||||
<rule type="staticpath">
|
<rule type="staticpath">
|
||||||
|
|
|
@ -579,6 +579,43 @@ easter_eggs() {
|
||||||
cp -f "$new_splash_file" "$current_splash_file" # Deploy assigned splash screen
|
cp -f "$new_splash_file" "$current_splash_file" # Deploy assigned splash screen
|
||||||
}
|
}
|
||||||
|
|
||||||
|
manage_ryujinx_keys() {
|
||||||
|
# This function checks if Switch keys are existing and symlinks them inside the Ryujinx system folder
|
||||||
|
# If the symlinks are broken it recreates them
|
||||||
|
|
||||||
|
echo "Checking Ryujinx Switch keys." #TODO logging
|
||||||
|
local ryujinx_system="/var/config/Ryujinx/system" # Set the path to the Ryujinx system folder
|
||||||
|
# Check if the keys folder exists
|
||||||
|
if [ -d "$bios_folder/switch/keys" ]; then
|
||||||
|
# Check if there are files in the keys folder
|
||||||
|
if [ -n "$(find "$bios_folder/switch/keys" -maxdepth 1 -type f)" ]; then
|
||||||
|
# Iterate over each file in the keys folder
|
||||||
|
for file in "$bios_folder/switch/keys"/*; do
|
||||||
|
local filename=$(basename "$file")
|
||||||
|
local symlink="$ryujinx_system/$filename"
|
||||||
|
|
||||||
|
# Check if the symlink exists and is valid
|
||||||
|
if [ -L "$symlink" ] && [ "$(readlink -f "$symlink")" = "$file" ]; then
|
||||||
|
echo "Found \"$symlink\" and it's a valid symlink." #TODO logging
|
||||||
|
continue # Skip if the symlink is already valid
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remove broken symlink or non-symlink file
|
||||||
|
echo "Found \"$symlink\" but it's not a valid symlink. Repairing it" #TODO logging
|
||||||
|
[ -e "$symlink" ] && rm "$symlink"
|
||||||
|
|
||||||
|
# Create symlink
|
||||||
|
ln -s "$file" "$symlink"
|
||||||
|
echo "Created symlink: \"$symlink\""
|
||||||
|
done
|
||||||
|
else
|
||||||
|
echo "No files found in $bios_folder/switch/keys. Continuing" #TODO logging
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "Directory $bios_folder/switch/keys does not exist. Maybe Ryujinx was never run. Continuing" #TODO logging
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# TODO: this function is not yet used
|
# TODO: this function is not yet used
|
||||||
branch_selector() {
|
branch_selector() {
|
||||||
# Fetch branches from GitHub API excluding "main"
|
# Fetch branches from GitHub API excluding "main"
|
||||||
|
|
|
@ -247,7 +247,12 @@ post_update() {
|
||||||
mv -f /var/config/ES-DE/.emulationstation/* /var/config/ES-DE
|
mv -f /var/config/ES-DE/.emulationstation/* /var/config/ES-DE
|
||||||
rm -rf /var/config/ES-DE/.emulationstation
|
rm -rf /var/config/ES-DE/.emulationstation
|
||||||
rm -f /var/config/ES-DE/es_settings.xml
|
rm -f /var/config/ES-DE/es_settings.xml
|
||||||
|
|
||||||
prepare_component "reset" "es-de"
|
prepare_component "reset" "es-de"
|
||||||
|
prepare_component "reset" "mame"
|
||||||
|
prepare_component "reset" "vita3k"
|
||||||
|
prepare_component "reset" "gzdoom"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# if [[ $prev_version -le "090" ]]; then
|
# if [[ $prev_version -le "090" ]]; then
|
||||||
|
|
|
@ -542,27 +542,38 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(ryujunx|Ryujinx|all)$ ]]; then
|
if [[ "$component" =~ ^(ryujunx|Ryujinx|all)$ ]]; then
|
||||||
|
# NOTE: for techincal reasons the system folder of Ryujinx IS NOT a sumlink of the bios/switch/keys as not only the keys are located there
|
||||||
|
# When RetroDECK starts there is a "manage_ryujinx_keys" function that symlinks the keys only in Rryujinx/system.
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
echo "------------------------"
|
echo "------------------------"
|
||||||
echo "Initializing RYUJINX"
|
echo "Initializing RYUJINX"
|
||||||
echo "------------------------"
|
echo "------------------------"
|
||||||
if [[ $multi_user_mode == "true" ]]; then
|
if [[ $multi_user_mode == "true" ]]; then
|
||||||
rm -rf "$multi_user_data_folder/$SteamAppUser/config/Ryujinx"
|
rm -rf "$multi_user_data_folder/$SteamAppUser/config/Ryujinx"
|
||||||
mkdir -p "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/system"
|
#mkdir -p "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/system"
|
||||||
|
# TODO: add /var/config/Ryujinx/system system folder management
|
||||||
cp -fv $emuconfigs/ryujinx/* "$multi_user_data_folder/$SteamAppUser/config/Ryujinx"
|
cp -fv $emuconfigs/ryujinx/* "$multi_user_data_folder/$SteamAppUser/config/Ryujinx"
|
||||||
sed -i 's#/home/deck/retrodeck#'$rdhome'#g' "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/Config.json"
|
sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$multi_user_data_folder/$SteamAppUser/config/Ryujinx/Config.json"
|
||||||
dir_prep "$multi_user_data_folder/$SteamAppUser/config/Ryujinx" "/var/config/Ryujinx"
|
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
|
else
|
||||||
# removing config directory to wipe legacy files
|
# removing config directory to wipe legacy files
|
||||||
rm -rf /var/config/Ryujinx
|
rm -rf /var/config/Ryujinx
|
||||||
mkdir -p /var/config/Ryujinx/system
|
mkdir -p /var/config/Ryujinx/system
|
||||||
cp -fv $emuconfigs/ryujinx/* /var/config/Ryujinx
|
cp -fv $emuconfigs/ryujinx/* /var/config/Ryujinx
|
||||||
sed -i 's#/home/deck/retrodeck#'$rdhome'#g' "$ryujinxconf"
|
sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf"
|
||||||
|
# Linking switch nand/saves folder
|
||||||
|
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/ryujinx/registered" "/var/config/Ryujinx/bis/system/Contents/registered"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [[ "$action" == "reset" ]] || [[ "$action" == "postmove" ]]; then # Run commands that apply to both resets and moves
|
# 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"
|
# dir_prep "$bios_folder/switch/keys" "/var/config/Ryujinx/system"
|
||||||
fi
|
# fi
|
||||||
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
if [[ "$action" == "postmove" ]]; then # Run only post-move commands
|
||||||
sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" # This is an unfortunate one-off because set_setting_value does not currently support JSON
|
sed -i 's#RETRODECKHOMEDIR#'$rdhome'#g' "$ryujinxconf" # This is an unfortunate one-off because set_setting_value does not currently support JSON
|
||||||
fi
|
fi
|
||||||
|
@ -700,14 +711,65 @@ prepare_component() {
|
||||||
echo "Initializing MAME"
|
echo "Initializing MAME"
|
||||||
echo "----------------------"
|
echo "----------------------"
|
||||||
|
|
||||||
|
# TODO: probably some of these needs to be put elsewhere
|
||||||
mkdir -p $saves_folder/mame-sa
|
mkdir -p $saves_folder/mame-sa
|
||||||
mkdir -p "/var/config/mame"
|
mkdir -p "$saves_folder/mame-sa/nvram"
|
||||||
|
mkdir -p "$states_folder/mame-sa"
|
||||||
|
mkdir -p "$rdhome/screenshots/mame-sa"
|
||||||
|
mkdir -p "$saves_folder/mame-sa/diff"
|
||||||
|
|
||||||
|
mkdir -p "/var/config/ctrlr"
|
||||||
|
mkdir -p "/var/config/mame/ini"
|
||||||
|
mkdir -p "/var/config/mame/cfg"
|
||||||
|
mkdir -p "/var/config/mame/inp"
|
||||||
|
|
||||||
|
mkdir -p "/var/data/mame/plugin-data"
|
||||||
|
mkdir -p "/var/data/mame/hash"
|
||||||
|
mkdir -p "/var/data/mame/assets/samples"
|
||||||
|
mkdir -p "/var/data/mame/assets/artwork"
|
||||||
|
mkdir -p "/var/data/mame/assets/fonts"
|
||||||
|
mkdir -p "/var/data/mame/cheat"
|
||||||
|
mkdir -p "/var/data/mame/assets/crosshair"
|
||||||
|
mkdir -p "/var/data/mame/plugins"
|
||||||
|
mkdir -p "/var/data/mame/assets/language"
|
||||||
|
mkdir -p "/var/data/mame/assets/software"
|
||||||
|
mkdir -p "/var/data/mame/assets/comments"
|
||||||
|
mkdir -p "/var/data/mame/assets/share"
|
||||||
|
mkdir -p "/var/data/mame/dats"
|
||||||
|
mkdir -p "/var/data/mame/folders"
|
||||||
|
mkdir -p "/var/data/mame/assets/cabinets"
|
||||||
|
mkdir -p "/var/data/mame/assets/cpanel"
|
||||||
|
mkdir -p "/var/data/mame/assets/pcb"
|
||||||
|
mkdir -p "/var/data/mame/assets/flyers"
|
||||||
|
mkdir -p "/var/data/mame/assets/titles"
|
||||||
|
mkdir -p "/var/data/mame/assets/ends"
|
||||||
|
mkdir -p "/var/data/mame/assets/marquees"
|
||||||
|
mkdir -p "/var/data/mame/assets/artwork-preview"
|
||||||
|
mkdir -p "/var/data/mame/assets/bosses"
|
||||||
|
mkdir -p "/var/data/mame/assets/logo"
|
||||||
|
mkdir -p "/var/data/mame/assets/scores"
|
||||||
|
mkdir -p "/var/data/mame/assets/versus"
|
||||||
|
mkdir -p "/var/data/mame/assets/gameover"
|
||||||
|
mkdir -p "/var/data/mame/assets/howto"
|
||||||
|
mkdir -p "/var/data/mame/assets/select"
|
||||||
|
mkdir -p "/var/data/mame/assets/icons"
|
||||||
|
mkdir -p "/var/data/mame/assets/covers"
|
||||||
|
mkdir -p "/var/data/mame/assets/ui"
|
||||||
|
|
||||||
dir_prep "$saves_folder/mame-sa/hiscore" "/var/config/mame/hiscore"
|
dir_prep "$saves_folder/mame-sa/hiscore" "/var/config/mame/hiscore"
|
||||||
cp -fvr "$emuconfigs/mame/"** "/var/config/mame"
|
cp -fvr "$emuconfigs/mame/mame.ini" "/var/config/mame"
|
||||||
sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/*.ini"
|
cp -fvr "$emuconfigs/mame/ui.ini" "/var/config/mame"
|
||||||
sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/*.ini"
|
cp -fvr "$emuconfigs/mame/default.cfg" "/var/config/mame"
|
||||||
sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/*.ini"
|
|
||||||
sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/*.ini"
|
sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/mame.ini"
|
||||||
|
sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/mame.ini"
|
||||||
|
sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/mame.ini"
|
||||||
|
sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/mame.ini"
|
||||||
|
|
||||||
|
sed -i 's#RETRODECKROMSDIR#'$roms_folder'#g' "/var/config/mame/ui.ini"
|
||||||
|
sed -i 's#RETRODECKHOMESDIR#'$rdhome'#g' "/var/config/mame/ui.ini"
|
||||||
|
sed -i 's#RETRODECKSAVESDIR#'$rdhome'#g' "/var/config/mame/ui.ini"
|
||||||
|
sed -i 's#RETRODECKSTATESDIR#'$rdhome'#g' "/var/config/mame/ui.ini"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(gzdoom|GZDOOM|all)$ ]]; then
|
if [[ "$component" =~ ^(gzdoom|GZDOOM|all)$ ]]; then
|
||||||
|
|
|
@ -1288,6 +1288,23 @@ modules:
|
||||||
|
|
||||||
# MAME - End
|
# MAME - End
|
||||||
|
|
||||||
|
# Ryujinx Appimage - START
|
||||||
|
# https://ryujinx.org/download
|
||||||
|
|
||||||
|
- name: Ryujinx
|
||||||
|
buildsystem: simple
|
||||||
|
build-commands:
|
||||||
|
- |
|
||||||
|
tar -zxvf *.tar.gz
|
||||||
|
mv -v publish ${FLATPAK_DEST}/ryujinx
|
||||||
|
ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx.sh
|
||||||
|
sources:
|
||||||
|
- type: file
|
||||||
|
url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1192/ryujinx-1.1.1192-linux_x64.tar.gz
|
||||||
|
sha256: 41716233f5745a7df1e411af6bac9d828f0b6b6feb63b5ef87445b81b01dee54
|
||||||
|
|
||||||
|
# Ryujinx Appimage - END
|
||||||
|
|
||||||
# External manifests end
|
# External manifests end
|
||||||
|
|
||||||
- name: retrodeck
|
- name: retrodeck
|
||||||
|
@ -1354,6 +1371,10 @@ modules:
|
||||||
- cp emu-configs/gzdoom/gzdoom.sh ${FLATPAK_DEST}/bin/gzdoom.sh
|
- cp emu-configs/gzdoom/gzdoom.sh ${FLATPAK_DEST}/bin/gzdoom.sh
|
||||||
- chmod +x ${FLATPAK_DEST}/bin/gzdoom.sh
|
- chmod +x ${FLATPAK_DEST}/bin/gzdoom.sh
|
||||||
|
|
||||||
|
# MAME wrapper
|
||||||
|
- cp emu-configs/mame/mame-rdwrapper.sh ${FLATPAK_DEST}/bin/mame-rdwrapper.sh
|
||||||
|
- chmod +x ${FLATPAK_DEST}/bin/mame-rdwrapper.sh
|
||||||
|
|
||||||
sources:
|
sources:
|
||||||
- type: git
|
- type: git
|
||||||
url: https://github.com/XargonWan/RetroDECK.git
|
url: https://github.com/XargonWan/RetroDECK.git
|
||||||
|
|
|
@ -112,24 +112,7 @@
|
||||||
|
|
||||||
# Duckstation-DontUpdate - END
|
# Duckstation-DontUpdate - END
|
||||||
|
|
||||||
# Ryujinx Appimage - START
|
# Ryujinx - START
|
||||||
# https://ryujinx.org/download
|
|
||||||
|
|
||||||
# - name: Ryujinx
|
|
||||||
# buildsystem: simple
|
|
||||||
# build-commands:
|
|
||||||
# - |
|
|
||||||
# tar -zxvf ryujinx-1.1.685-linux_x64.tar.gz
|
|
||||||
# mv -v publish ${FLATPAK_DEST}/ryujinx
|
|
||||||
# ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx
|
|
||||||
# sources:
|
|
||||||
# - type: file
|
|
||||||
# url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.685/ryujinx-1.1.685-linux_x64.tar.gz
|
|
||||||
# sha256: bc4d7076106d7aa59c3a3ea22b83c553e5fa1a897815831adcf18cc13d729e15
|
|
||||||
|
|
||||||
# Ryujinx Appimage - END
|
|
||||||
|
|
||||||
# Ryujinx - START
|
|
||||||
# https://github.com/flathub/org.ryujinx.Ryujinx
|
# https://github.com/flathub/org.ryujinx.Ryujinx
|
||||||
|
|
||||||
- name: Ryujinx
|
- name: Ryujinx
|
||||||
|
|
|
@ -56,9 +56,9 @@ https://retrodeck.net
|
||||||
;;
|
;;
|
||||||
--reset-component*)
|
--reset-component*)
|
||||||
echo "You are about to reset one or more RetroDECK components or emulators."
|
echo "You are about to reset one or more RetroDECK components or emulators."
|
||||||
echo "Available options are: es-de, retroarch, cemu, citra, dolphin, duckstation, melonds, pcsx3, pico8, ppsspp, primehack, rpcs3, xemu, yuzu, vita3k, mame, gzdoom, boilr, all"
|
echo "Available options are: es-de, retroarch, cemu, citra, dolphin, duckstation, melonds, pcsx3, pico8, ppsspp, primehack, ryujinx. rpcs3, ryujinx, xemu, yuzu, vita3k, mame, gzdoom, boilr, all"
|
||||||
read -p "Please enter the component you would like to reset: " component
|
read -p "Please enter the component you would like to reset: " component
|
||||||
if [[ "$component" =~ ^(es-de|retroarch|cemu|citra|dolphin|duckstation|mame|melonds|pcsx2|ppsspp|primehack|rpcs3|xemu|yuzu|all)$ ]]; then
|
if [[ "$component" =~ ^(es-de|retroarch|cemu|citra|dolphin|duckstation|mame|melonds|pcsx2|ppsspp|primehack|ryujinx|rpcs3|xemu|yuzu|all)$ ]]; then
|
||||||
read -p "You are about to reset $component to default settings. Enter 'y' to continue, 'n' to stop: " response
|
read -p "You are about to reset $component to default settings. Enter 'y' to continue, 'n' to stop: " response
|
||||||
if [[ $response == [yY] ]]; then
|
if [[ $response == [yY] ]]; then
|
||||||
prepare_component "reset" "$component" "cli"
|
prepare_component "reset" "$component" "cli"
|
||||||
|
@ -182,6 +182,9 @@ if [[ -f "$HOME/.steam/steam/controller_base/templates/RetroDECK_controller_conf
|
||||||
fi
|
fi
|
||||||
# REMOVE BEFORE NEXT VERSION RELEASE
|
# REMOVE BEFORE NEXT VERSION RELEASE
|
||||||
|
|
||||||
|
# Linking switch keys for Ryujinx
|
||||||
|
manage_ryujinx_keys
|
||||||
|
|
||||||
# Normal Startup
|
# Normal Startup
|
||||||
|
|
||||||
if [[ $steam_sync == "true" ]]; then
|
if [[ $steam_sync == "true" ]]; then
|
||||||
|
|
|
@ -476,7 +476,7 @@ configurator_open_emulator_dialog() {
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"MAME" )
|
"MAME" )
|
||||||
mame
|
mame-rdwrapper.sh
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"MelonDS" )
|
"MelonDS" )
|
||||||
|
@ -500,7 +500,7 @@ configurator_open_emulator_dialog() {
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"Ryujinx" )
|
"Ryujinx" )
|
||||||
ryujinx-wrapper
|
Ryujinx.sh
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"Vita3K" )
|
"Vita3K" )
|
||||||
|
@ -1009,6 +1009,7 @@ configurator_reset_dialog() {
|
||||||
"PPSSPP" "Reset the PSP emulator PPSSPP to default settings" \
|
"PPSSPP" "Reset the PSP emulator PPSSPP to default settings" \
|
||||||
"Primehack" "Reset the Metroid Prime emulator Primehack to default settings" \
|
"Primehack" "Reset the Metroid Prime emulator Primehack to default settings" \
|
||||||
"RPCS3" "Reset the PS3 emulator RPCS3 to default settings" \
|
"RPCS3" "Reset the PS3 emulator RPCS3 to default settings" \
|
||||||
|
"Ryujinx" "Reset the Switch emulator Ryujinx to default settings" \
|
||||||
"Vita3k" "Reset the PS Vita emulator Vita3k to default settings" \
|
"Vita3k" "Reset the PS Vita emulator Vita3k to default settings" \
|
||||||
"XEMU" "Reset the XBOX emulator XEMU to default settings" \
|
"XEMU" "Reset the XBOX emulator XEMU to default settings" \
|
||||||
"Yuzu" "Reset the Switch emulator Yuzu to default settings" )
|
"Yuzu" "Reset the Switch emulator Yuzu to default settings" )
|
||||||
|
|
Loading…
Reference in a new issue