diff --git a/build-locally.sh b/developer_toolbox/build_retrodck_locally.sh similarity index 92% rename from build-locally.sh rename to developer_toolbox/build_retrodck_locally.sh index d9bb5cc3..9682e3bd 100755 --- a/build-locally.sh +++ b/developer_toolbox/build_retrodck_locally.sh @@ -1,5 +1,7 @@ #!/bin/bash +# WARNING: run this script from the project root folder, not from here!! + # TODO: FEDORA # sudo dnf install -y flatpak flatpak-builder p7zip p7zip-plugins xmlstarlet bzip2 curl diff --git a/developer_toolbox/inject_framework.sh b/developer_toolbox/inject_framework.sh new file mode 100755 index 00000000..8f6dd779 --- /dev/null +++ b/developer_toolbox/inject_framework.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +# WARNING: run this script from the project root folder, not from here!! + +# This script is used to inject framework and config files inside a RetroDECK cooker installation +# To apply the injected config you have to reset the targeted component from the Configurator +# Please know what you're doing, if you need to undo this you need to completely uninstall and reinstall RetroDECK flatpak +# Please not that this may create a dirty situation where older files are still in place as the action is add and overwrite + +flatpak_user_installation="$HOME/.local/share/flatpak/app/net.retrodeck.retrodeck/current/active/files" +flatpak_system_installation="/var/lib/flatpak/app/net.retrodeck.retrodeck/current/active/files" + +if [ -d "$flatpak_user_installation" ]; then + echo "RetroDECK is installed in user mode, proceeding." + app="$flatpak_user_installation" +elif [ -d "$flatpak_system_installation" ]; then + echo "RetroDECK is installed in user mode, proceeding." + app="$flatpak_system_installation" +else + echo "RetroDECK installation not found, quitting" + exit 1 +fi + +sudo cp -vfr "retrodeck.sh" "$app/bin/" +sudo cp -vfr "functions/"** "$app/libexec/" +sudo cp -vfr "tools" "$app/tools" +sudo cp -vfr "emu-configs/"** "$app/retrodeck/emu-configs/" +sudo cp -vfr "es-configs/es_find_rules.xml" "$app/share/es-de/resources/systems/linux/" +sudo cp -vfr "es-configs/es_systems.xml" "$app/share/es-de/resources/systems/linux/" +sudo cp -vfr "res/binding_icons" "$app/retrodeck/binding_icons" \ No newline at end of file diff --git a/emu-configs/gzdoom/brightmaps.pk3 b/emu-configs/gzdoom/brightmaps.pk3 new file mode 100644 index 00000000..5c46b870 Binary files /dev/null and b/emu-configs/gzdoom/brightmaps.pk3 differ diff --git a/emu-configs/gzdoom/game_support.pk3 b/emu-configs/gzdoom/game_support.pk3 new file mode 100644 index 00000000..fb4c2d71 Binary files /dev/null and b/emu-configs/gzdoom/game_support.pk3 differ diff --git a/emu-configs/gzdoom/game_widescreen_gfx.pk3 b/emu-configs/gzdoom/game_widescreen_gfx.pk3 new file mode 100644 index 00000000..6f5eb072 Binary files /dev/null and b/emu-configs/gzdoom/game_widescreen_gfx.pk3 differ diff --git a/emu-configs/gzdoom/gzdoom.pk3 b/emu-configs/gzdoom/gzdoom.pk3 index c96467ab..47548904 100644 Binary files a/emu-configs/gzdoom/gzdoom.pk3 and b/emu-configs/gzdoom/gzdoom.pk3 differ diff --git a/functions/post_update.sh b/functions/post_update.sh index dbb7359e..d3d56cd3 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -275,6 +275,9 @@ post_update() { log i "Switch firmware folder should be moved in \"$bios_folder/switch/firmware\" from \"$bios_folder/switch/registered\"" dir_prep "$bios_folder/switch/firmware" "$bios_folder/switch/registered" + log i "New systems were added in this version, regenerating system folders." + es-de --home "/var/config/" --create-system-dirs + fi # if [[ $(check_version_is_older_than "0.9.0b") == "true" ]]; then diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 73d6672c..66069d84 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -678,9 +678,9 @@ prepare_component() { log i "----------------------" create_dir "/var/config/gzdoom" - create_dir "/var/data/gzdoom" + create_dir -d "/var/data/gzdoom" cp -fvr "$emuconfigs/gzdoom/gzdoom.ini" "/var/config/gzdoom" - cp -fvr "$emuconfigs/gzdoom/gzdoom.pk3" "/var/data/gzdoom" + cp -fvr "$emuconfigs/gzdoom/"*".pk3" "/var/data/gzdoom" 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 diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 20efe4e8..49af6a2f 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -1207,80 +1207,8 @@ modules: # SOLARUS - END # GZDoom - Start - # https://github.com/ZDoom/gzdoom - # When updating: - # - take the latest commit from the repo - # - update gzdoom.sf2 link and sha - # - pray - - - name: libsndfile - buildsystem: autotools - sources: - - type: archive - url: >- - https://github.com/libsndfile/libsndfile/releases/download/1.2.2/libsndfile-1.2.2.tar.xz - sha256: 3799ca9924d3125038880367bf1468e53a1b7e3686a934f098b7e1d286cdb80e - x-checker-data: - type: anitya - project-id: 13277 - stable-only: true - url-template: >- - https://github.com/libsndfile/libsndfile/releases/download/$version/libsndfile-$version.tar.xz - - name: game-music-emu - buildsystem: cmake-ninja - config-opts: - - '-DCMAKE_BUILD_TYPE=RelWithDebInfo' - sources: - - type: archive - url: >- - https://bitbucket.org/mpyne/game-music-emu/downloads/game-music-emu-0.6.3.tar.gz - sha256: 626e8a104e0dadd10ef6519a67aca880c7b40f81471659f1935b61754e12fc7b - x-checker-data: - type: anitya - project-id: 866 - stable-only: true - url-template: >- - https://bitbucket.org/mpyne/game-music-emu/downloads/game-music-emu-$version.tar.gz - - name: zmusic - buildsystem: cmake-ninja - config-opts: - - '-DCMAKE_BUILD_TYPE=RelWithDebInfo' - sources: - - type: archive - url: https://github.com/zdoom/ZMusic/archive/1.1.12.tar.gz - sha256: da818594b395aa9174561a36362332b0ab8e7906d2e556ec47669326e67613d4 - x-checker-data: - type: anitya - project-id: 153600 - stable-only: true - url-template: https://github.com/zdoom/ZMusic/archive/$version.tar.gz - - name: gzdoom - buildsystem: cmake-ninja - config-opts: - - '-DCMAKE_BUILD_TYPE=RelWithDebInfo' - cleanup: - - /lib/*.a - - /lib/*.la - - /lib/pkgconfig - - /include - sources: - - type: git - url: https://github.com/zdoom/gzdoom.git - commit: 05167fd4ef4388a511bad51b8a4304079c805424 - x-checker-data: - type: anitya - project-id: 17531 - stable-only: true - tag-template: g$version - - type: file - url: https://github.com/ZDoom/gzdoom/raw/b91300316875266e852e8b5890e188870189d4a6/soundfont/gzdoom.sf2 - sha256: a9058609b07c1f0e0c1f420e76c2e80ba78136e6173e836caab51ffb13e552f1 - post-install: - - install -Dm 644 gzdoom.sf2 /app/share/sounds/sf2/gzdoom.sf2 - modules: - - rd-submodules/shared-modules/linux-audio/libinstpatch.json - - rd-submodules/shared-modules/linux-audio/fluidsynth2.json - + # When updating remember to update all the .pk3 files from the standalone linux download + - rd-submodules/shared-modules/gzdoom/gzdoom.json # GZDoom - END # MAME - Start diff --git a/rd-submodules/ryujinx b/rd-submodules/ryujinx index 35d4fce1..ea1dae93 160000 --- a/rd-submodules/ryujinx +++ b/rd-submodules/ryujinx @@ -1 +1 @@ -Subproject commit 35d4fce1b9959b8568838659ea7e8c239139d3c8 +Subproject commit ea1dae930a6f61388c2b5e05f95bb6ed0120926e diff --git a/retrodeck.sh b/retrodeck.sh index c601c15b..b4ec2f19 100644 --- a/retrodeck.sh +++ b/retrodeck.sh @@ -56,9 +56,9 @@ https://retrodeck.net ;; --reset-component*) echo "You are about to reset one or more RetroDECK components or emulators." - echo "Available options are: es-de, retroarch, cemu, dolphin, duckstation, melonds, pcsx3, pico8, ppsspp, primehack, ryujinx. rpcs3, ryujinx, xemu, vita3k, mame, gzdoom, boilr, all" + echo "Available options are: es-de, retroarch, cemu, dolphin, duckstation, gzdoom, melonds, pcsx3, pico8, ppsspp, primehack, ryujinx, rpcs3, ryujinx, xemu, vita3k, mame, boilr, all" read -p "Please enter the component you would like to reset: " component - if [[ "$component" =~ ^(es-de|retroarch|cemu|dolphin|duckstation|mame|melonds|pcsx2|ppsspp|primehack|ryujinx|rpcs3|xemu|all)$ ]]; then + if [[ "$component" =~ ^(es-de|retroarch|cemu|dolphin|duckstation|gzdoom|mame|melonds|pcsx2|ppsspp|primehack|ryujinx|rpcs3|xemu|all)$ ]]; then read -p "You are about to reset $component to default settings. Enter 'y' to continue, 'n' to stop: " response if [[ $response == [yY] ]]; then prepare_component "reset" "$component" "cli"