mirror of
https://github.com/RetroDECK/RetroDECK.git
synced 2024-11-21 13:35:39 +00:00
Merge branch 'cooker-0.8.1b'
This commit is contained in:
commit
08bb2d56c1
10
.github/workflows/main-selfhosted.yml
vendored
10
.github/workflows/main-selfhosted.yml
vendored
|
@ -108,7 +108,7 @@ jobs:
|
||||||
tag: ${{ env.REL_VER }}
|
tag: ${{ env.REL_VER }}
|
||||||
name: "RetroDECK v${{ env.REL_VER }}"
|
name: "RetroDECK v${{ env.REL_VER }}"
|
||||||
bodyFile: "body.md"
|
bodyFile: "body.md"
|
||||||
artifacts: "RetroDECK.flatpak,RetroDECK-Artifact.tar.gz"
|
artifacts: "RetroDECK.flatpak,RetroDECK.flatpak.sha,RetroDECK-Artifact.tar.gz"
|
||||||
allowUpdates: true
|
allowUpdates: true
|
||||||
makeLatest: true
|
makeLatest: true
|
||||||
token: ${{ secrets.TRIGGER_BUILD_TOKEN }}
|
token: ${{ secrets.TRIGGER_BUILD_TOKEN }}
|
||||||
|
@ -164,3 +164,11 @@ jobs:
|
||||||
-F "attachment=@RetroDECK-Artifact.tar.gz" \
|
-F "attachment=@RetroDECK-Artifact.tar.gz" \
|
||||||
"http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-Artifact.tar.gz"
|
"http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-Artifact.tar.gz"
|
||||||
|
|
||||||
|
- name: Upload RetroDECK.flatpak.sha to Gitea Release
|
||||||
|
run: |
|
||||||
|
curl -X POST \
|
||||||
|
-H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
|
-F "file=@RetroDECK.flatpak.sha" \
|
||||||
|
"https://repo.retrodeck.net/RetroDECK/RetroDECK/releases/${{ env.REL_VER }}/assets?name=RetroDECK.flatpak.sha"
|
||||||
|
env:
|
||||||
|
GITEA_TOKEN: ${{ secrets.GITEA_TRIGGER_BUILD_TOKEN }}
|
||||||
|
|
10
README.md
10
README.md
|
@ -46,15 +46,15 @@ For more information read up here:
|
||||||
RetroDECK is a [EmulationStation Desktop Edition](https://es-de.org) (ES-DE) powered Linux [Flatpak application](https://flathub.org/apps/net.retrodeck.retrodeck) that thanks to its `RetroDECK Framework` it builds-in and manage a variety of emulators and other software that allows you to play your favorite retro (and even not-so-retro) games in one complete package.
|
RetroDECK is a [EmulationStation Desktop Edition](https://es-de.org) (ES-DE) powered Linux [Flatpak application](https://flathub.org/apps/net.retrodeck.retrodeck) that thanks to its `RetroDECK Framework` it builds-in and manage a variety of emulators and other software that allows you to play your favorite retro (and even not-so-retro) games in one complete package.
|
||||||
|
|
||||||
### So what does that mean?
|
### So what does that mean?
|
||||||
It means that RetroDECK provides all the emulators, systems and a frontend. RetroDECK configures them for you and put them into one application you can download from Flathub.
|
It means that RetroDECK provides all the emulators, systems and a frontend. RetroDECK configures them for you and puts them into one application you can download from Flathub.
|
||||||
|
|
||||||
By being one application RetroDECK can put all important files in one location for all the emulators, instead of having them spread out over your entire system and even add features on top to orchestrate them seamlessly.
|
By being one application RetroDECK can put all important files in one location for all the emulators, instead of having them spread out over your entire system and even add features on top to orchestrate them seamlessly.
|
||||||
|
|
||||||
|
|
||||||
### The RetroDECK Framework
|
### The RetroDECK Framework
|
||||||
As previously mentioned, RetroDECK also adds the `RetroDECK Framework` on top of the emulators and ES-DE interface that allows deeper integrations between emulators and easier exposure to a variety of features that you otherwise need to set per emulator basis to create a uniformity between them.
|
As previously mentioned, RetroDECK also adds the `RetroDECK Framework` on top of the emulators and ES-DE interface which allows deeper integrations between emulators and easier exposure to a variety of features that you otherwise need to set on a per emulator basis to create a uniformity between them.
|
||||||
|
|
||||||
The `RetroDECK Configurator` is a `Utility` that some parts of exposes the `RetroDECK Framework` to the RetroDECK users.
|
The `RetroDECK Configurator` is a `Utility` that exposes some parts of the `RetroDECK Framework` to the RetroDECK users.
|
||||||
|
|
||||||
**What can the RetroDECK Framework and by extent the RetroDECK Configurator do?**
|
**What can the RetroDECK Framework and by extent the RetroDECK Configurator do?**
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ It can help with:
|
||||||
- Auto installing some free BIOSes
|
- Auto installing some free BIOSes
|
||||||
- Install prebuilt Steam Input profiles for devices like the Steam Deck and external controllers
|
- Install prebuilt Steam Input profiles for devices like the Steam Deck and external controllers
|
||||||
- Easier management of `mods`, `roms`, `texture_packs`, `scraped media`, `screenshots`, `saves / states` `gamelists` and more
|
- Easier management of `mods`, `roms`, `texture_packs`, `scraped media`, `screenshots`, `saves / states` `gamelists` and more
|
||||||
- Give access to global presets that can be acitivated to configure things over many emulators in one go like: `RetroAchievements`
|
- Give access to global presets that can be activated to configure things over many emulators in one go like: `RetroAchievements`
|
||||||
`Borders` `Widescreen Mode` `Swaping A/B X/Y for Nintendo Games`
|
`Borders` `Widescreen Mode` `Swaping A/B X/Y for Nintendo Games`
|
||||||
|
|
||||||
For our long term vision you can check out the following wiki page:
|
For our long term vision you can check out the following wiki page:
|
||||||
|
@ -110,7 +110,7 @@ Read up here on how to help out, there is something for everyone:
|
||||||
Please check out the [Wiki](https://github.com/XargonWan/RetroDECK/wiki) for even more information.
|
Please check out the [Wiki](https://github.com/XargonWan/RetroDECK/wiki) for even more information.
|
||||||
|
|
||||||
## The FAQ
|
## The FAQ
|
||||||
The RetroDECK [FAQ](https://github.com/XargonWan/RetroDECK/wiki/FAQs%3A-Frequently-asked-questions) on the wiki has a vast variety of questions and awnsers.
|
The RetroDECK [FAQ](https://github.com/XargonWan/RetroDECK/wiki/FAQs%3A-Frequently-asked-questions) on the wiki has a vast variety of questions and answers.
|
||||||
|
|
||||||
# How to get support?
|
# How to get support?
|
||||||
Use the supports channels on [Discord](https://discord.gg/WDc5C9YWMx).
|
Use the supports channels on [Discord](https://discord.gg/WDc5C9YWMx).
|
||||||
|
|
|
@ -4,6 +4,8 @@
|
||||||
|
|
||||||
if [ "${GITHUB_REF##*/}" = "main" ]; then
|
if [ "${GITHUB_REF##*/}" = "main" ]; then
|
||||||
flatpak build-bundle "${GITHUB_WORKSPACE}/.local" "$GITHUB_WORKSPACE/RetroDECK.flatpak" net.retrodeck.retrodeck
|
flatpak build-bundle "${GITHUB_WORKSPACE}/.local" "$GITHUB_WORKSPACE/RetroDECK.flatpak" net.retrodeck.retrodeck
|
||||||
|
sha256sum RetroDECK.flatpak > RetroDECK.flatpak.sha
|
||||||
else
|
else
|
||||||
flatpak build-bundle "${GITHUB_WORKSPACE}/.local" "$GITHUB_WORKSPACE/RetroDECK-cooker.flatpak" net.retrodeck.retrodeck
|
flatpak build-bundle "${GITHUB_WORKSPACE}/.local" "$GITHUB_WORKSPACE/RetroDECK-cooker.flatpak" net.retrodeck.retrodeck
|
||||||
|
sha256sum RetroDECK-cooker.flatpak > RetroDECK-cooker.flatpak.sha
|
||||||
fi
|
fi
|
|
@ -1,6 +1,31 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# This scritp is installing the required dependencies to correctly run the pipeline and buold the flatpak
|
# This script is installing the required dependencies to correctly run the pipeline and build the flatpak
|
||||||
|
|
||||||
|
unset pkg_mgr
|
||||||
|
|
||||||
|
# rpm-ostree must be checked before dnf because a dnf (wrapper) command also works on rpm-ostree distros (not what we want)
|
||||||
|
for potential_pkg_mgr in apt pacman rpm-ostree dnf; do
|
||||||
|
command -v "$potential_pkg_mgr" &> /dev/null && pkg_mgr="$potential_pkg_mgr" && break
|
||||||
|
done
|
||||||
|
|
||||||
|
case "$pkg_mgr" in
|
||||||
|
apt)
|
||||||
|
sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2 curl jq
|
||||||
|
;;
|
||||||
|
pacman)
|
||||||
|
sudo pacman -S --noconfirm flatpak flatpak-builder p7zip xmlstarlet bzip2
|
||||||
|
;;
|
||||||
|
rpm-ostree)
|
||||||
|
echo "When using a distro with rpm-ostree, you shouldn't build directly on the host. Try using a distrobox."
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
dnf)
|
||||||
|
sudo dnf install -y flatpak flatpak-builder p7zip p7zip-plugins xmlstarlet bzip2 curl
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Package manager $pkg_mgr not supported. Please open an issue."
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2 curl jq
|
|
||||||
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||||
flatpak remote-add --user --if-not-exists flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo
|
flatpak remote-add --user --if-not-exists flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo
|
|
@ -2,9 +2,6 @@
|
||||||
|
|
||||||
# WARNING: run this script from the project root folder, not from here!!
|
# 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
|
|
||||||
|
|
||||||
git submodule update --init --recursive
|
git submodule update --init --recursive
|
||||||
|
|
||||||
export GITHUB_WORKSPACE="."
|
export GITHUB_WORKSPACE="."
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
"controller_mappings"
|
"controller_mappings"
|
||||||
{
|
{
|
||||||
"version" "3"
|
"version" "3"
|
||||||
"revision" "1863"
|
"revision" "1864"
|
||||||
"title" "RetroDECK: Steam Deck - Neptune v.1b FULL"
|
"title" "RetroDECK: Steam Deck - Neptune v.1.1b FULL"
|
||||||
"description" "RetroDECK: Steam Deck - Neptune v.1b FULL"
|
"description" "RetroDECK: Steam Deck - Neptune v.1.1b FULL"
|
||||||
"creator" ""
|
"creator" ""
|
||||||
"progenitor" ""
|
"progenitor" ""
|
||||||
"url" ""
|
"url" ""
|
||||||
|
@ -4380,7 +4380,7 @@
|
||||||
{
|
{
|
||||||
"bindings"
|
"bindings"
|
||||||
{
|
{
|
||||||
"binding" "controller_action CHANGE_PRESET 15 0 0, 3DS, RD-citra.png, "
|
"binding" "controller_action CHANGE_PRESET 14 0 0, 3DS, RD-citra.png, "
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4396,7 +4396,7 @@
|
||||||
{
|
{
|
||||||
"bindings"
|
"bindings"
|
||||||
{
|
{
|
||||||
"binding" "controller_action CHANGE_PRESET 16 0 0, Switch, RD-ryujinx.png, "
|
"binding" "controller_action CHANGE_PRESET 15 0 0, Switch, RD-ryujinx.png, "
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7301,8 +7301,8 @@
|
||||||
{
|
{
|
||||||
"bindings"
|
"bindings"
|
||||||
{
|
{
|
||||||
"binding" "key_press LEFT_ALT, Set GPU Accuracy, RD-emblem-new.png, "
|
"binding" "key_press LEFT_ALT, Yuzu - Set GPU Accuracy, RD-emblem-new.png, "
|
||||||
"binding" "key_press G, Set GPU Accuracy, RD-emblem-new.png, "
|
"binding" "key_press G, Yuzu - Set GPU Accuracy, RD-emblem-new.png, "
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7318,8 +7318,8 @@
|
||||||
{
|
{
|
||||||
"bindings"
|
"bindings"
|
||||||
{
|
{
|
||||||
"binding" "key_press LEFT_ALT, Load/Remove Amiibo, RD-preferences-desktop-accessibility.png, "
|
"binding" "key_press LEFT_ALT, Yuzu - Load / Remove Amiibo, RD-preferences-desktop-accessibility.png, "
|
||||||
"binding" "key_press M, Load/Remove Amiibo, RD-preferences-desktop-accessibility.png, "
|
"binding" "key_press M, Yuzu - Load / Remove Amiibo, RD-preferences-desktop-accessibility.png, "
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7335,8 +7335,24 @@
|
||||||
{
|
{
|
||||||
"bindings"
|
"bindings"
|
||||||
{
|
{
|
||||||
"binding" "key_press LEFT_ALT, Docked / Undocked Mode, RD-emblem-unlocked.png, "
|
"binding" "key_press LEFT_ALT, Yuzu - Docked / Undocked Mode, RD-emblem-unlocked.png, "
|
||||||
"binding" "key_press D, Docked / Undocked Mode, RD-emblem-unlocked.png, "
|
"binding" "key_press D, Yuzu - Docked / Undocked Mode, RD-emblem-unlocked.png, "
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
"disabled_activators"
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
"touch_menu_button_4"
|
||||||
|
{
|
||||||
|
"activators"
|
||||||
|
{
|
||||||
|
"Full_Press"
|
||||||
|
{
|
||||||
|
"bindings"
|
||||||
|
{
|
||||||
|
"binding" "key_press F4, Ryujinx - F4 Open Menu, RD-F4.png, "
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
Do not drop the firmware files here, install them via Ryujinx:
|
||||||
|
|
||||||
|
RetroDECK Configurator -> Open Emulator -> Ryujinx -> Tools -> Install Firmware - Select the firmware zipped file
|
||||||
|
|
||||||
|
Check the wiki for more information.
|
||||||
|
|
||||||
|
Related wiki article can be found here:
|
||||||
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/ryujinx/ryujinx-guide/
|
||||||
|
|
||||||
|
The RetroDECK Team
|
|
@ -23,6 +23,6 @@ Texture folder directly
|
||||||
- Move textures into the right ~/retrodeck/texture_packs/duckstation/<TITLEID> folder.
|
- Move textures into the right ~/retrodeck/texture_packs/duckstation/<TITLEID> folder.
|
||||||
|
|
||||||
Related wiki article can be found here:
|
Related wiki article can be found here:
|
||||||
https://github.com/XargonWan/RetroDECK/wiki/Duckstation%3A-Texture-Packs
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/duckstation/duckstation-texture-pack/
|
||||||
|
|
||||||
The RetroDECK Team
|
The RetroDECK Team
|
|
@ -27,6 +27,6 @@ You want apply a texture pack to a game called ScaryCastle USA.nes and you have
|
||||||
NOTE: On the Steam Deck go into GameMode first, then launch RetroDECK.
|
NOTE: On the Steam Deck go into GameMode first, then launch RetroDECK.
|
||||||
|
|
||||||
Related wiki article can be found here:
|
Related wiki article can be found here:
|
||||||
https://github.com/XargonWan/RetroDECK/wiki/RetroArch-Mesen%3A-Texture-Packs
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/retroarch/retroarch-mesen-texture-pack/
|
||||||
|
|
||||||
The RetroDECK Team
|
The RetroDECK Team
|
|
@ -25,6 +25,6 @@ For compressed textures stored in .hts files, place them in the 'texture_packs/R
|
||||||
For uncompressed textures stored in loose folders or files, place them in the 'texture_packs/RetroArch-Mupen64Plus/hires_texture/' folder.
|
For uncompressed textures stored in loose folders or files, place them in the 'texture_packs/RetroArch-Mupen64Plus/hires_texture/' folder.
|
||||||
|
|
||||||
Related wiki article can be found here:
|
Related wiki article can be found here:
|
||||||
https://github.com/XargonWan/RetroDECK/wiki/RetroArch-Mupen64Plus-Next%3A-Texture-Packs
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/retroarch/retroarch-mupen64plus-texture-pack/
|
||||||
|
|
||||||
The RetroDECK Team
|
The RetroDECK Team
|
|
@ -21,6 +21,6 @@ For direct texture folder:
|
||||||
3. Move textures into the correct '~/retrodeck/texture_packs/PCSX2/<TITLEID>' folder.
|
3. Move textures into the correct '~/retrodeck/texture_packs/PCSX2/<TITLEID>' folder.
|
||||||
|
|
||||||
Related wiki article can be found here:
|
Related wiki article can be found here:
|
||||||
https://github.com/XargonWan/RetroDECK/wiki/PCSX2%3A-Texture-Packs
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/pcsx2/pcsx2-texture-pack/
|
||||||
|
|
||||||
The RetroDECK Team
|
The RetroDECK Team
|
|
@ -21,6 +21,6 @@ For adding textures:
|
||||||
3. Paste the textures into the correct '~/retrodeck/texture_packs/ppsspp/<TITLEID>' folder.
|
3. Paste the textures into the correct '~/retrodeck/texture_packs/ppsspp/<TITLEID>' folder.
|
||||||
|
|
||||||
Related wiki article can be found here:
|
Related wiki article can be found here:
|
||||||
https://github.com/XargonWan/RetroDECK/wiki/PPSSPP%3A-Texture-Packs
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/ppsspp/ppsspp-texture-pack/
|
||||||
|
|
||||||
The RetroDECK Team
|
The RetroDECK Team
|
|
@ -14,6 +14,6 @@ Notes:
|
||||||
- GAME_ID is different for every game.
|
- GAME_ID is different for every game.
|
||||||
|
|
||||||
Related wiki article can be found here:
|
Related wiki article can be found here:
|
||||||
https://github.com/XargonWan/RetroDECK/wiki/Dolphin-and-Primehack%3A-Mods
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/dolphin-primehack/dolphin-primehack-mod/
|
||||||
|
|
||||||
The RetroDECK Team
|
The RetroDECK Team
|
|
@ -14,6 +14,6 @@ Notes:
|
||||||
- GAME_ID is different for every game.
|
- GAME_ID is different for every game.
|
||||||
|
|
||||||
Related wiki article can be found here:
|
Related wiki article can be found here:
|
||||||
https://github.com/XargonWan/RetroDECK/wiki/Dolphin-and-Primehack%3A-Mods
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/dolphin-primehack/dolphin-primehack-mod/
|
||||||
|
|
||||||
The RetroDECK Team
|
The RetroDECK Team
|
|
@ -17,6 +17,6 @@ For example the game `WipEout 2048 (EU)` has an ID that is `PCSF00007`.
|
||||||
So simply add `PCSF00007` to the `WipEout 2048 (EU).psvita` file and the setup for this game is complete.
|
So simply add `PCSF00007` to the `WipEout 2048 (EU).psvita` file and the setup for this game is complete.
|
||||||
|
|
||||||
Related wiki article can be found here:
|
Related wiki article can be found here:
|
||||||
--
|
https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/vita3k/vita3k-guide/
|
||||||
|
|
||||||
The RetroDECK Team
|
The RetroDECK Team
|
|
@ -4,9 +4,9 @@ change^borders^custom_viewport_height^640^^/var/config/retroarch/config/mGBA/gba
|
||||||
change^borders^custom_viewport_width^960^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
change^borders^custom_viewport_width^960^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
||||||
change^borders^custom_viewport_x^160^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
change^borders^custom_viewport_x^160^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
||||||
change^borders^custom_viewport_y^0^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
change^borders^custom_viewport_y^0^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
||||||
change^borders^input_overlay_enable^true^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
|
||||||
change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gba.cfg^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gba.cfg^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
||||||
change^borders^input_overlay_aspect_adjust_landscape^0.110000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
change^borders^input_overlay_aspect_adjust_landscape^0.110000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
||||||
|
change^borders^input_overlay_enable^true^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
||||||
change^borders^input_overlay_scale_landscape^1.2150000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
change^borders^input_overlay_scale_landscape^1.2150000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
||||||
change^borders^input_overlay_y_offset_landscape^0.020000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
change^borders^input_overlay_y_offset_landscape^0.020000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg
|
||||||
enable^abxy_button_swap^/var/config/retroarch/config/remaps/mGBA/gba.rmp
|
enable^abxy_button_swap^/var/config/retroarch/config/remaps/mGBA/gba.rmp
|
||||||
|
|
|
@ -1,14 +1,27 @@
|
||||||
neogeo.zip^^Unknown^Arcade (FinalBurn Neo)^Neo Geo BIOS (Required for this system)
|
panafz1.bin^^f47264dd47fe30f73ab3c010015c155b^3DO^Panasonic FZ-1
|
||||||
neocdz.zip^^Unknown^Arcade (FinalBurn Neo)^Neo Geo CDZ BIOS (Required for this system)
|
panafz10.bin^^51f2f43ae2f3508a14d9f56597e2d3ce^3DO^Panasonic FZ-10
|
||||||
decocass.zip^^Unknown^Arcade (FinalBurn Neo)^DECO Cassette System BIOS (Required for this system)
|
panafz10-norsa.bin^^1477bda80dc33731a65468c1f5bcbee9^3DO^Panasonic FZ-10 [RSA Patch]
|
||||||
isgsm.zip^^Unknown^Arcade (FinalBurn Neo)^ISG Selection Master Type 2006 System BIOS (Required for this system)
|
panafz10e-anvil.bin^^a48e6746bd7edec0f40cff078f0bb19f^3DO^Panasonic FZ-10-E [Anvil]
|
||||||
midssio.zip^^Unknown^Arcade (FinalBurn Neo)^Midway SSIO Sound Board Internal ROM (Required for this system)
|
panafz10e-anvil-norsa.bin^^cf11bbb5a16d7af9875cca9de9a15e09^3DO^Panasonic FZ-10-E [Anvil RSA Patch]
|
||||||
nmk004.zip^^Unknown^Arcade (FinalBurn Neo)^NMK004 Internal ROM (Required for this system)
|
panafz1j.bin^^a496cfdded3da562759be3561317b605^3DO^Panasonic FZ-1J
|
||||||
pgm.zip^^Unknown^Arcade (FinalBurn Neo)^PGM System BIOS (Required for this system)
|
panafz1j-norsa.bin^^f6c71de7470d16abe4f71b1444883dc8^3DO^Panasonic FZ-1J [RSA Patch]
|
||||||
skns.zip^^Unknown^Arcade (FinalBurn Neo)^Super Kaneko Nova System BIOS (Required for this system)
|
goldstar.bin^^8639fd5e549bd6238cfee79e3e749114^3DO^Goldstar GDO-101M
|
||||||
ym2608.zip^^Unknown^Arcade (FinalBurn Neo)^YM2608 Internal ROM (Required for this system)
|
sanyotry.bin^^35fa1a1ebaaeea286dc5cd15487c13ea^3DO^Sanyo IMP-21J TRY
|
||||||
cchip.zip^^Unknown^Arcade (FinalBurn Neo)^C-Chip Internal ROM (Required for this system)
|
3do_arcade_saot.bin^^8970fc987ab89a7f64da9f8a8c4333ff^3DO^Shootout At Old Tucson
|
||||||
bubsys.zip^^Unknown^Arcade (FinalBurn Neo)^Bubble System BIOS (Required for this system)
|
panafz1-kanji.bin^^b8dc97f778a6245c58e064b0312e8281^3DO^Panasonic FZ-1 Kanji ROM (Font ROM: required for some Japanese games. Optional otherwise.)
|
||||||
|
panafz10ja-anvil-kanji.bin^^428577250f43edc902ea239c50d2240d^3DO^Panasonic FZ-10JA Kanji ROM (Font ROM: required for some Japanese games. Optional otherwise.)
|
||||||
|
panafz1j-kanji.bin^^c23fb5d5e6bb1c240d02cf968972be37^3DO^Panasonic FZ-1J Kanji ROM (Font ROM: required for some Japanese games. Optional otherwise.)
|
||||||
|
neogeo.zip^^00dad01abdbf8ea9e79ad2fe11bdb182^Arcade (FinalBurn Neo)^Neo Geo BIOS (Required for this system)
|
||||||
|
neocdz.zip^^c733b4b7bd30fa849874d96c591c8639^Arcade (FinalBurn Neo)^Neo Geo CDZ BIOS (Required for this system)
|
||||||
|
decocass.zip^^b7e1189b341bf6a8e270017c096d21b0^Arcade (FinalBurn Neo)^DECO Cassette System BIOS (Required for this system)
|
||||||
|
isgsm.zip^^4a56d56e2219c5e2b006b66a4263c01c^Arcade (FinalBurn Neo)^ISG Selection Master Type 2006 System BIOS (Required for this system)
|
||||||
|
midssio.zip^^5904b0de768d1d506e766aa7e18994c1^Arcade (FinalBurn Neo)^Midway SSIO Sound Board Internal ROM (Required for this system)
|
||||||
|
nmk004.zip^^bfacf1a68792d5348f93cf724d2f1dda^Arcade (FinalBurn Neo)^NMK004 Internal ROM (Required for this system)
|
||||||
|
pgm.zip^^87cc944eef4c671aa2629a8ba48a08e0^Arcade (FinalBurn Neo)^PGM System BIOS (Required for this system)
|
||||||
|
skns.zip^^3f956c4e7008804cb47cbde49bd5b908^Arcade (FinalBurn Neo)^Super Kaneko Nova System BIOS (Required for this system)
|
||||||
|
ym2608.zip^^79ae0d2bb1901b7e606b6dc339b79a97^Arcade (FinalBurn Neo)^YM2608 Internal ROM (Required for this system)
|
||||||
|
cchip.zip^^df6f8a3d83c028a5cb9f2f2be60773f3^Arcade (FinalBurn Neo)^C-Chip Internal ROM (Required for this system)
|
||||||
|
bubsys.zip^^f81298afd68a1a24a49a1a2d9f087964^Arcade (FinalBurn Neo)^Bubble System BIOS (Required for this system)
|
||||||
namcoc69.zip^^Unknown^Arcade (FinalBurn Neo)^Namco C69 BIOS (Required for this system)
|
namcoc69.zip^^Unknown^Arcade (FinalBurn Neo)^Namco C69 BIOS (Required for this system)
|
||||||
namcoc70.zip^^Unknown^Arcade (FinalBurn Neo)^Namco C70 BIOS (Required for this system)
|
namcoc70.zip^^Unknown^Arcade (FinalBurn Neo)^Namco C70 BIOS (Required for this system)
|
||||||
namcoc75.zip^^Unknown^Arcade (FinalBurn Neo)^Namco C75 BIOS (Required for this system)
|
namcoc75.zip^^Unknown^Arcade (FinalBurn Neo)^Namco C75 BIOS (Required for this system)
|
||||||
|
@ -48,9 +61,9 @@ Complex.bin^^Unknown^Microsoft XBOX^Used by XEMU emulator
|
||||||
Complex_4627v1.03.bin^^Unknown^Microsoft XBOX^Used by XEMU emulator
|
Complex_4627v1.03.bin^^Unknown^Microsoft XBOX^Used by XEMU emulator
|
||||||
Complex_4627.bin^^Unknown^Microsoft XBOX^Used by XEMU emulator
|
Complex_4627.bin^^Unknown^Microsoft XBOX^Used by XEMU emulator
|
||||||
syscard3.pce^^38179df8f4ac870017db21ebcbf53114^NEC PC Engine / CD^Super CD-ROM2 System V3.xx (Required)
|
syscard3.pce^^38179df8f4ac870017db21ebcbf53114^NEC PC Engine / CD^Super CD-ROM2 System V3.xx (Required)
|
||||||
syscard2.pce^^Unknown^NEC PC Engine / CD^CD-ROM System V2.xx
|
syscard2.pce^^3cdd6614a918616bfc41c862e889dd79^NEC PC Engine / CD^CD-ROM System V2.xx
|
||||||
syscard1.pce^^Unknown^NEC PC Engine / CD^CD-ROM System V1.xx
|
syscard1.pce^^2b7ccb3d86baa18f6402c176f3065082^NEC PC Engine / CD^CD-ROM System V1.xx
|
||||||
gexpress.pce^^Unknown^NEC PC Engine / CD^Game Express CD Card
|
gexpress.pce^^6d2cb14fc3e1f65ceb135633d1694122^NEC PC Engine / CD^Game Express CD Card
|
||||||
font.bmp^np2kai/^7da1e5b7c482d4108d22a5b09631d967^NEC PC-98 (Neko Project II Kai)^Needed to display text (Required)
|
font.bmp^np2kai/^7da1e5b7c482d4108d22a5b09631d967^NEC PC-98 (Neko Project II Kai)^Needed to display text (Required)
|
||||||
FONT.ROM^np2kai/^2af6179d7de4893ea0b705c00e9a98d6^NEC PC-98 (Neko Project II Kai)^Alt font file (Required if normal font file is missing)
|
FONT.ROM^np2kai/^2af6179d7de4893ea0b705c00e9a98d6^NEC PC-98 (Neko Project II Kai)^Alt font file (Required if normal font file is missing)
|
||||||
bios.rom^np2kai/^e246140dec5124c5e404869a84caefce^NEC PC-98 (Neko Project II Kai)^BIOS file (Required)
|
bios.rom^np2kai/^e246140dec5124c5e404869a84caefce^NEC PC-98 (Neko Project II Kai)^BIOS file (Required)
|
||||||
|
@ -58,12 +71,12 @@ itf.rom^np2kai/^e9fc3890963b12cf15d0a2eea5815b72^NEC PC-98 (Neko Project II Kai)
|
||||||
sound.rom^np2kai/^caf90f22197aed6f14c471c21e64658d^NEC PC-98 (Neko Project II Kai)^BIOS file (Required)
|
sound.rom^np2kai/^caf90f22197aed6f14c471c21e64658d^NEC PC-98 (Neko Project II Kai)^BIOS file (Required)
|
||||||
bios9821.rom^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^Optional BIOS file
|
bios9821.rom^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^Optional BIOS file
|
||||||
d8000.rom^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^Optional BIOS file
|
d8000.rom^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^Optional BIOS file
|
||||||
2608_BD.WAV^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
2608_BD.WAV^np2kai/^d94546e70f17fd899be8df3544ab6cbb^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
||||||
2608_SD.WAV^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
2608_SD.WAV^np2kai/^d71004351c8bbfdad53b18222c061d49^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
||||||
2608_TOP.WAV^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
2608_TOP.WAV^np2kai/^593cff6597ab9380d822b8f824fd2c28^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
||||||
2608_HH.WAV^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
2608_HH.WAV^np2kai/^08c54a0c1f774a5538a848a6665a34b4^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
||||||
2608_TOM.WAV^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
2608_TOM.WAV^np2kai/^96a4ead13f364734f79b0c58af2f0e1f^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
||||||
2608_RIM.WAV^np2kai/^Unknown^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
2608_RIM.WAV^np2kai/^465ea0768b27da404aec45dfc501404b^NEC PC-98 (Neko Project II Kai)^YM2608 RYTHM sample
|
||||||
n88.rom^^4f984e04a99d56c4cfe36115415d6eb8^NEC PC-8000 / PC-8800 series (QUASI88)^BIOS File (Required)
|
n88.rom^^4f984e04a99d56c4cfe36115415d6eb8^NEC PC-8000 / PC-8800 series (QUASI88)^BIOS File (Required)
|
||||||
n88n.rom^^2ff07b8769367321128e03924af668a0^NEC PC-8000 / PC-8800 series (QUASI88)^Required for PC-8000 series emulation. (N BASIC mode)
|
n88n.rom^^2ff07b8769367321128e03924af668a0^NEC PC-8000 / PC-8800 series (QUASI88)^Required for PC-8000 series emulation. (N BASIC mode)
|
||||||
disk.rom^^793f86784e5608352a5d7f03f03e0858^NEC PC-8000 / PC-8800 series (QUASI88)^Required for loading disk images
|
disk.rom^^793f86784e5608352a5d7f03f03e0858^NEC PC-8000 / PC-8800 series (QUASI88)^Required for loading disk images
|
||||||
|
@ -72,6 +85,19 @@ n88_0.rom^^d675a2ca186c6efcd6277b835de4c7e5^NEC PC-8000 / PC-8800 series (QUASI8
|
||||||
n88_1.rom^^e844534dfe5744b381444dbe61ef1b66^NEC PC-8000 / PC-8800 series (QUASI88)^Optional BIOS file
|
n88_1.rom^^e844534dfe5744b381444dbe61ef1b66^NEC PC-8000 / PC-8800 series (QUASI88)^Optional BIOS file
|
||||||
n88_2.rom^^6548fa45061274dee1ea8ae1e9e93910^NEC PC-8000 / PC-8800 series (QUASI88)^Optional BIOS file
|
n88_2.rom^^6548fa45061274dee1ea8ae1e9e93910^NEC PC-8000 / PC-8800 series (QUASI88)^Optional BIOS file
|
||||||
n88_3.rom^^fc4b76a402ba501e6ba6de4b3e8b4273^NEC PC-8000 / PC-8800 series (QUASI88)^Optional BIOS file
|
n88_3.rom^^fc4b76a402ba501e6ba6de4b3e8b4273^NEC PC-8000 / PC-8800 series (QUASI88)^Optional BIOS file
|
||||||
|
neocd_f.rom^^8834880c33164ccbe6476b559f3e37de^Neo Geo CD^Front Loader BIOS (At least 1 required)
|
||||||
|
neocd_sf.rom^^043d76d5f0ef836500700c34faef774d^Neo Geo CD^Front Loader BIOS (SMKDAN 0.7b DEC 2010) (At least 1 required)
|
||||||
|
neocd_t.rom^^de3cf45d227ad44645b22aa83b49f450^Neo Geo CD^Top Loader BIOS (At least 1 required)
|
||||||
|
neocd_st.rom^^f6325a33c6d63ea4b9162a3fa8c32727^Neo Geo CD^Top Loader BIOS (SMKDAN 0.7b DEC 2010) (At least 1 required)
|
||||||
|
neocd_z.rom^^11526d58d4c524daef7d5d677dc6b004^Neo Geo CD^CDZ BIOS (At least 1 required)
|
||||||
|
neocd_sz.rom^^971ee8a36fb72da57aed01758f0a37f5^Neo Geo CD^CDZ BIOS (SMKDAN 0.7b DEC 2010) (At least 1 required)
|
||||||
|
front-sp1.bin^^5c2366f25ff92d71788468ca492ebeca^Neo Geo CD^Front Loader BIOS (MAME) (At least 1 required)
|
||||||
|
top-sp1.bin^^122aee210324c72e8a11116e6ef9c0d0^Neo Geo CD^Top Loader BIOS (MAME) (At least 1 required)
|
||||||
|
neocd.bin^^f39572af7584cb5b3f70ae8cc848aba2^Neo Geo CD^CDZ BIOS (MAME) (At least 1 required)
|
||||||
|
uni-bioscd.rom^^08ca8b2dba6662e8024f9e789711c6fc^Neo Geo CD^Universe BIOS CD 3.3
|
||||||
|
gb_bios.bin^^32fbbd84168d3482956eb3c5051637f5^Game Boy^Optional BIOS file (used to display the Nintendo logo at boot)
|
||||||
|
gbc_bios.bin^^dbfce9db9deaa2567f6a84fde55f9680^Game Boy Color^Optional BIOS file (used to display the Nintendo logo at boot)
|
||||||
|
gba_bios.bin^^a860e8c0b6d573d191e4ec7db1b1e4f6^Game Boy Advance^Optional BIOS file (used to display the Nintendo logo at boot)
|
||||||
aes_keys.txt^citra/sysdata/^Unknown^Nintendo 3DS^Decryption keys used by Citra emulator
|
aes_keys.txt^citra/sysdata/^Unknown^Nintendo 3DS^Decryption keys used by Citra emulator
|
||||||
bios7.bin^^df692a80a5b1bc90728bc3dfc76cd948^Nintendo DS^Used by MelonDS emulator (Required, see Wiki)
|
bios7.bin^^df692a80a5b1bc90728bc3dfc76cd948^Nintendo DS^Used by MelonDS emulator (Required, see Wiki)
|
||||||
bios9.bin^^a392174eb3e572fed6447e956bde4b25^Nintendo DS^Used by MelonDS emulator (Required, see Wiki)
|
bios9.bin^^a392174eb3e572fed6447e956bde4b25^Nintendo DS^Used by MelonDS emulator (Required, see Wiki)
|
||||||
|
@ -103,9 +129,9 @@ mpr-18811-mx.ic1^^255113ba943c92a54facd25a10fd780c^Sega Saturn^The King of Fight
|
||||||
mpr-19367-mx.ic1^^1cd19988d1d72a3e7caa0b73234c96b4^Sega Saturn^Ultraman: Hikari no Kyojin Densetsu ROM Cartridge (Required for this game)
|
mpr-19367-mx.ic1^^1cd19988d1d72a3e7caa0b73234c96b4^Sega Saturn^Ultraman: Hikari no Kyojin Densetsu ROM Cartridge (Required for this game)
|
||||||
iplrom.dat^keropi/^7fd4caabac1d9169e289f0f7bbf71d8e^Sharp X68000^X68000 BIOS (Required)
|
iplrom.dat^keropi/^7fd4caabac1d9169e289f0f7bbf71d8e^Sharp X68000^X68000 BIOS (Required)
|
||||||
cgrom.dat^keropi/^cb0a5cfcf7247a7eab74bb2716260269^Sharp X68000^Font file (Required)
|
cgrom.dat^keropi/^cb0a5cfcf7247a7eab74bb2716260269^Sharp X68000^Font file (Required)
|
||||||
iplrom30.dat^keropi/^Unknown^Sharp X68000^X68000 BIOS 2
|
iplrom30.dat^keropi/^f373003710ab4322642f527f567e020a^Sharp X68000^X68000 BIOS 2
|
||||||
iplromco.dat^keropi/^Unknown^Sharp X68000^X68000 BIOS 3
|
iplromco.dat^keropi/^cc78d4f4900f622bd6de1aed7f52592f^Sharp X68000^X68000 BIOS 3
|
||||||
iplromxv.dat^keropi/^Unknown^Sharp X68000^X68000 BIOS 4
|
iplromxv.dat^keropi/^0617321daa182c3f3d6f41fd02fb3275^Sharp X68000^X68000 BIOS 4
|
||||||
psxonpsp660.bin^^c53ca5908936d412331790f4426c6c33^Sony PSX^PS1 BIOS (At least 1 required)
|
psxonpsp660.bin^^c53ca5908936d412331790f4426c6c33^Sony PSX^PS1 BIOS (At least 1 required)
|
||||||
scph5500.bin^^8dd7d5296a650fac7319bce665a6a53c^Sony PSX^PS1 JP BIOS (At least 1 required)
|
scph5500.bin^^8dd7d5296a650fac7319bce665a6a53c^Sony PSX^PS1 JP BIOS (At least 1 required)
|
||||||
scph5501.bin^^490f666e1afb15b7362b406ed1cea246^Sony PSX^PS1 US BIOS (At least 1 required)
|
scph5501.bin^^490f666e1afb15b7362b406ed1cea246^Sony PSX^PS1 US BIOS (At least 1 required)
|
||||||
|
@ -119,11 +145,11 @@ ps1_rom.bin^^81bbe60ba7a3d1cea1d48c14cbcc647b^Sony PSX^PS1 BIOS (At least 1 requ
|
||||||
ps2-0200a-20040614.bin^^d333558cc14561c1fdc334c75d5f37b7^Sony PS2^PS2 US BIOS (At least 1 required)
|
ps2-0200a-20040614.bin^^d333558cc14561c1fdc334c75d5f37b7^Sony PS2^PS2 US BIOS (At least 1 required)
|
||||||
ps2-0200e-20040614.bin^^dc752f160044f2ed5fc1f4964db2a095^Sony PS2^PS2 EU BIOS (At least 1 required)
|
ps2-0200e-20040614.bin^^dc752f160044f2ed5fc1f4964db2a095^Sony PS2^PS2 EU BIOS (At least 1 required)
|
||||||
ps2-0200j-20040614.bin^^0eee5d1c779aa50e94edd168b4ebf42e^Sony PS2^PS2 JP BIOS (At least 1 required)
|
ps2-0200j-20040614.bin^^0eee5d1c779aa50e94edd168b4ebf42e^Sony PS2^PS2 JP BIOS (At least 1 required)
|
||||||
128p-0.rom^fuse/^Unknown^ZX Spectrum^Pentagon 128K/512K/1024 ROM (Required)
|
128p-0.rom^fuse/^a249565f03b98d004ee7f019570069cd^ZX Spectrum^Pentagon 128K/512K/1024 ROM (Required)
|
||||||
128p-1.rom^fuse/^Unknown^ZX Spectrum^Pentagon 128K/512K/1024 ROM (Required)
|
128p-1.rom^fuse/^6e09e5d3c4aef166601669feaaadc01c^ZX Spectrum^Pentagon 128K/512K/1024 ROM (Required)
|
||||||
trdos.rom^fuse/^Unknown^ZX Spectrum^Pentagon 128K/512K/1024 ROM (Required)
|
trdos.rom^fuse/^0da70a5d2a0e733398e005b96b7e4ba6^ZX Spectrum^Pentagon 128K/512K/1024 ROM (Required)
|
||||||
gluck.rom^fuse/^Unknown^ZX Spectrum^Pentagon 512K/1024 ROM (Required)
|
gluck.rom^fuse/^d5869034604dbfd2c1d54170e874fd0a^ZX Spectrum^Pentagon 512K/1024 ROM (Required)
|
||||||
256s-0.rom^fuse/^Unknown^ZX Spectrum^Scorpion 256K ROM (Required)
|
256s-0.rom^fuse/^b9fda5b6a747ff037365b0e2d8c4379a^ZX Spectrum^Scorpion 256K ROM (Required)
|
||||||
256s-1.rom^fuse/^Unknown^ZX Spectrum^Scorpion 256K ROM (Required)
|
256s-1.rom^fuse/^643861ad34831b255bf2eb64e8b6ecb8^ZX Spectrum^Scorpion 256K ROM (Required)
|
||||||
256s-2.rom^fuse/^Unknown^ZX Spectrum^Scorpion 256K ROM (Required)
|
256s-2.rom^fuse/^d8ad507b1c915a9acfe0d73957082926^ZX Spectrum^Scorpion 256K ROM (Required)
|
||||||
256s-3.rom^fuse/^Unknown^ZX Spectrum^Scorpion 256K ROM (Required)
|
256s-3.rom^fuse/^ce0723f9bc02f4948c15d3b3230ae831^ZX Spectrum^Scorpion 256K ROM (Required)
|
|
@ -17,3 +17,4 @@ how-to-install-Duckstation-textures.txt^$texture_packs_folder/Duckstation
|
||||||
|
|
||||||
# emulators
|
# emulators
|
||||||
how-to-install-psvita-games.txt^$roms_folder/psvita
|
how-to-install-psvita-games.txt^$roms_folder/psvita
|
||||||
|
Install-firmware-through-Ryujinx.txt^$bios_folder/switch/firmware
|
||||||
|
|
|
@ -6,8 +6,8 @@ roms_folder=/home/deck/retrodeck/roms
|
||||||
saves_folder=/home/deck/retrodeck/saves
|
saves_folder=/home/deck/retrodeck/saves
|
||||||
states_folder=/home/deck/retrodeck/states
|
states_folder=/home/deck/retrodeck/states
|
||||||
bios_folder=/home/deck/retrodeck/bios
|
bios_folder=/home/deck/retrodeck/bios
|
||||||
media_folder=/home/deck/retrodeck/downloaded_media
|
media_folder=/home/deck/retrodeck/ES-DE/downloaded_media
|
||||||
themes_folder=/home/deck/retrodeck/themes
|
themes_folder=/home/deck/retrodeck/ES-DE/themes
|
||||||
logs_folder=/home/deck/retrodeck/logs
|
logs_folder=/home/deck/retrodeck/logs
|
||||||
screenshots_folder=/home/deck/retrodeck/screenshots
|
screenshots_folder=/home/deck/retrodeck/screenshots
|
||||||
mods_folder=/home/deck/retrodeck/mods
|
mods_folder=/home/deck/retrodeck/mods
|
||||||
|
@ -82,3 +82,4 @@ duckstation=false
|
||||||
pcsx2=false
|
pcsx2=false
|
||||||
primehack=false
|
primehack=false
|
||||||
citra=false
|
citra=false
|
||||||
|
rpcs3=false
|
||||||
|
|
BIN
emu-configs/mame/cheat0264.zip
Normal file
BIN
emu-configs/mame/cheat0264.zip
Normal file
Binary file not shown.
|
@ -1,16 +1,11 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
|
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
|
||||||
<mameconfig version="10">
|
<mameconfig version="10">
|
||||||
<system name="default">
|
<system name="default">
|
||||||
<input>
|
<input>
|
||||||
<port type="P1_JOYSTICK_UP">
|
|
||||||
<newseq type="standard">
|
|
||||||
JOYCODE_1_HAT1UP
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="P1_START">
|
<port type="P1_START">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
JOYCODE_1_BUTTON8
|
JOYCODE_1_BUTTON8 OR KEYCODE_1
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="P1_SELECT">
|
<port type="P1_SELECT">
|
||||||
|
@ -20,52 +15,72 @@
|
||||||
</port>
|
</port>
|
||||||
<port type="P2_START">
|
<port type="P2_START">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
JOYCODE_2_BUTTON12
|
JOYCODE_2_BUTTON8 OR KEYCODE_2
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="P2_SELECT">
|
<port type="P2_SELECT">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
JOYCODE_2_BUTTON11
|
KEYCODE_6 OR JOYCODE_2_BUTTON7
|
||||||
|
</newseq>
|
||||||
|
</port>
|
||||||
|
<port type="P3_START">
|
||||||
|
<newseq type="standard">
|
||||||
|
JOYCODE_3_BUTTON8 OR KEYCODE_3
|
||||||
|
</newseq>
|
||||||
|
</port>
|
||||||
|
<port type="P3_SELECT">
|
||||||
|
<newseq type="standard">
|
||||||
|
KEYCODE_7 OR JOYCODE_3_BUTTON7
|
||||||
|
</newseq>
|
||||||
|
</port>
|
||||||
|
<port type="P4_START">
|
||||||
|
<newseq type="standard">
|
||||||
|
JOYCODE_4_BUTTON8 OR KEYCODE_4
|
||||||
|
</newseq>
|
||||||
|
</port>
|
||||||
|
<port type="P4_SELECT">
|
||||||
|
<newseq type="standard">
|
||||||
|
KEYCODE_8 OR JOYCODE_4_BUTTON7
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="START1">
|
<port type="START1">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_1 OR JOYCODE_1_BUTTON12
|
JOYCODE_1_BUTTON8 OR KEYCODE_S KEYCODE_1
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="START2">
|
<port type="START2">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_2 OR JOYCODE_2_BUTTON12
|
JOYCODE_2_BUTTON8 OR KEYCODE_S KEYCODE_2
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="START3">
|
<port type="START3">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_3 OR JOYCODE_3_BUTTON12
|
JOYCODE_3_BUTTON8 OR KEYCODE_S KEYCODE_3
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="START4">
|
<port type="START4">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_4 OR JOYCODE_4_BUTTON12
|
JOYCODE_4_BUTTON8 OR KEYCODE_S KEYCODE_4
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="COIN1">
|
<port type="COIN1">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LSHIFT KEYCODE_1 OR JOYCODE_1_BUTTON11
|
JOYCODE_1_BUTTON7 OR KEYCODE_LSHIFT KEYCODE_1
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="COIN2">
|
<port type="COIN2">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LSHIFT KEYCODE_2 OR JOYCODE_2_BUTTON11
|
JOYCODE_2_BUTTON7 OR KEYCODE_LSHIFT KEYCODE_2
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="COIN3">
|
<port type="COIN3">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LSHIFT KEYCODE_3 OR JOYCODE_3_BUTTON11
|
JOYCODE_3_BUTTON7 OR KEYCODE_LSHIFT KEYCODE_3
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="COIN4">
|
<port type="COIN4">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LSHIFT KEYCODE_4 OR JOYCODE_4_BUTTON11
|
JOYCODE_4_BUTTON7 OR KEYCODE_LSHIFT KEYCODE_4
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="BILL1">
|
<port type="BILL1">
|
||||||
|
@ -113,31 +128,6 @@
|
||||||
KEYCODE_LALT KEYCODE_T KEYCODE_4
|
KEYCODE_LALT KEYCODE_T KEYCODE_4
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="SERVICE">
|
|
||||||
<newseq type="standard">
|
|
||||||
KEYCODE_LALT KEYCODE_S KEYCODE_0
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="TILT">
|
|
||||||
<newseq type="standard">
|
|
||||||
KEYCODE_LALT KEYCODE_T KEYCODE_0
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="MEMORY_RESET">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="VOLUME_DOWN">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="VOLUME_UP">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_MENU">
|
<port type="UI_MENU">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LCONTROL KEYCODE_M
|
KEYCODE_LCONTROL KEYCODE_M
|
||||||
|
@ -148,19 +138,14 @@
|
||||||
KEYCODE_LCONTROL KEYCODE_Q
|
KEYCODE_LCONTROL KEYCODE_Q
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_CLEAR">
|
|
||||||
<newseq type="standard">
|
|
||||||
KEYCODE_DEL
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_PAGE_UP">
|
<port type="UI_PAGE_UP">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_PGUP OR JOYCODE_1_ZAXIS_POS_SWITCH
|
JOYCODE_1_RYAXIS_NEG_SWITCH OR KEYCODE_PGUP
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_PAGE_DOWN">
|
<port type="UI_PAGE_DOWN">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_PGDN OR JOYCODE_1_RZAXIS_POS_SWITCH
|
JOYCODE_1_RYAXIS_POS_SWITCH OR KEYCODE_PGDN
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_PREV_GROUP">
|
<port type="UI_PREV_GROUP">
|
||||||
|
@ -188,11 +173,6 @@
|
||||||
NONE
|
NONE
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_PAUSE">
|
|
||||||
<newseq type="standard">
|
|
||||||
KEYCODE_LCONTROL KEYCODE_P
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_PAUSE_SINGLE">
|
<port type="UI_PAUSE_SINGLE">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
NONE
|
NONE
|
||||||
|
@ -200,7 +180,7 @@
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_REWIND_SINGLE">
|
<port type="UI_REWIND_SINGLE">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LCONTROL KEYCODE_MINUS
|
KEYCODE_LCONTROL KEYCODE_MINUSPAD
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_SAVE_STATE">
|
<port type="UI_SAVE_STATE">
|
||||||
|
@ -255,7 +235,7 @@
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_FAST_FORWARD">
|
<port type="UI_FAST_FORWARD">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LCONTROL KEYCODE_PLUS
|
KEYCODE_LCONTROL KEYCODE_PLUSPAD
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_SHOW_FPS">
|
<port type="UI_SHOW_FPS">
|
||||||
|
@ -275,7 +255,7 @@
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_RECORD_AVI">
|
<port type="UI_RECORD_AVI">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
NONE
|
KEYCODE_LCONTROL KEYCODE_V
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_TOGGLE_CHEAT">
|
<port type="UI_TOGGLE_CHEAT">
|
||||||
|
@ -283,84 +263,14 @@
|
||||||
KEYCODE_LCONTROL KEYCODE_C
|
KEYCODE_LCONTROL KEYCODE_C
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_DISPLAY_COMMENT">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_ZOOM_IN">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_ZOOM_OUT">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_ZOOM_DEFAULT">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_ROTATE">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_SHOW_PROFILER">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_RELEASE_POINTER">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_PASTE">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_TAPE_START">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_TAPE_STOP">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_FOCUS_NEXT">
|
<port type="UI_FOCUS_NEXT">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_TAB OR JOYCODE_1_RZAXIS_POS_SWITCH
|
JOYCODE_1_RXAXIS_POS_SWITCH
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="UI_FOCUS_PREV">
|
<port type="UI_FOCUS_PREV">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LSHIFT KEYCODE_TAB OR JOYCODE_1_ZAXIS_POS_SWITCH
|
JOYCODE_1_RXAXIS_NEG_SWITCH OR KEYCODE_TAB
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_DATS">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_FAVORITES">
|
|
||||||
<newseq type="standard">
|
|
||||||
JOYCODE_1_BUTTON4
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_EXPORT">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="UI_AUDIT">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="TOGGLE_FULLSCREEN">
|
<port type="TOGGLE_FULLSCREEN">
|
||||||
|
@ -368,11 +278,6 @@
|
||||||
KEYCODE_LCONTROL KEYCODE_ENTER
|
KEYCODE_LCONTROL KEYCODE_ENTER
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="TOGGLE_FILTER">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
<port type="DECREASE_PRESCALE">
|
<port type="DECREASE_PRESCALE">
|
||||||
<newseq type="standard">
|
<newseq type="standard">
|
||||||
KEYCODE_LCONTROL KEYCODE_Y
|
KEYCODE_LCONTROL KEYCODE_Y
|
||||||
|
@ -383,11 +288,6 @@
|
||||||
KEYCODE_LCONTROL KEYCODE_U
|
KEYCODE_LCONTROL KEYCODE_U
|
||||||
</newseq>
|
</newseq>
|
||||||
</port>
|
</port>
|
||||||
<port type="RENDER_AVI">
|
|
||||||
<newseq type="standard">
|
|
||||||
NONE
|
|
||||||
</newseq>
|
|
||||||
</port>
|
|
||||||
</input>
|
</input>
|
||||||
</system>
|
</system>
|
||||||
</mameconfig>
|
</mameconfig>
|
||||||
|
|
BIN
emu-configs/retroarch/ScummVM.zip
Normal file
BIN
emu-configs/retroarch/ScummVM.zip
Normal file
Binary file not shown.
|
@ -59,17 +59,19 @@ cap32_scr_intensity = "8"
|
||||||
cap32_scr_tube = "color"
|
cap32_scr_tube = "color"
|
||||||
cap32_statusbar = "onloading"
|
cap32_statusbar = "onloading"
|
||||||
citra_analog_function = "C-Stick and Touchscreen Pointer"
|
citra_analog_function = "C-Stick and Touchscreen Pointer"
|
||||||
|
citra_cpu_scale = "100% (Default)"
|
||||||
citra_custom_textures = "disabled"
|
citra_custom_textures = "disabled"
|
||||||
citra_deadzone = "15"
|
citra_deadzone = "15"
|
||||||
citra_dump_textures = "disabled"
|
citra_dump_textures = "disabled"
|
||||||
citra_is_new_3ds = "Old 3DS"
|
citra_is_new_3ds = "New 3DS"
|
||||||
citra_language = "English"
|
citra_language = "English"
|
||||||
citra_layout_option = "Default Top-Bottom Screen"
|
citra_layout_option = "Default Top-Bottom Screen"
|
||||||
citra_mouse_touchscreen = "enabled"
|
citra_mouse_touchscreen = "enabled"
|
||||||
citra_region_value = "Auto"
|
citra_region_value = "Auto"
|
||||||
citra_render_touchscreen = "disabled"
|
citra_render_touchscreen = "disabled"
|
||||||
citra_resolution_factor = "4x"
|
citra_resolution_factor = "2x"
|
||||||
citra_swap_screen = "Top"
|
citra_swap_screen = "Top"
|
||||||
|
citra_swap_screen_mode = "Toggle"
|
||||||
citra_texture_filter = "none"
|
citra_texture_filter = "none"
|
||||||
citra_touch_touchscreen = "enabled"
|
citra_touch_touchscreen = "enabled"
|
||||||
citra_use_acc_geo_shaders = "enabled"
|
citra_use_acc_geo_shaders = "enabled"
|
||||||
|
@ -419,6 +421,7 @@ mgba_sgb_borders = "ON"
|
||||||
mgba_skip_bios = "OFF"
|
mgba_skip_bios = "OFF"
|
||||||
mgba_solar_sensor_level = "0"
|
mgba_solar_sensor_level = "0"
|
||||||
mgba_use_bios = "ON"
|
mgba_use_bios = "ON"
|
||||||
|
mesen_fdsautoinsertdisk = "enabled"
|
||||||
mupen64plus-169screensize = "960x540"
|
mupen64plus-169screensize = "960x540"
|
||||||
mupen64plus-43screensize = "640x480"
|
mupen64plus-43screensize = "640x480"
|
||||||
mupen64plus-alt-map = "False"
|
mupen64plus-alt-map = "False"
|
||||||
|
|
|
@ -3,10 +3,14 @@ accessibility_narrator_speech_speed = "5"
|
||||||
ai_service_enable = "false"
|
ai_service_enable = "false"
|
||||||
ai_service_mode = "1"
|
ai_service_mode = "1"
|
||||||
ai_service_pause = "false"
|
ai_service_pause = "false"
|
||||||
|
ai_service_poll_delay = "0"
|
||||||
ai_service_source_lang = "0"
|
ai_service_source_lang = "0"
|
||||||
ai_service_target_lang = "0"
|
ai_service_target_lang = "0"
|
||||||
|
ai_service_text_padding = "5"
|
||||||
|
ai_service_text_position = "0"
|
||||||
ai_service_url = "http://localhost:4404/"
|
ai_service_url = "http://localhost:4404/"
|
||||||
all_users_control_menu = "true"
|
all_users_control_menu = "true"
|
||||||
|
app_icon = "default"
|
||||||
apply_cheats_after_load = "false"
|
apply_cheats_after_load = "false"
|
||||||
apply_cheats_after_toggle = "false"
|
apply_cheats_after_toggle = "false"
|
||||||
aspect_ratio_index = "22"
|
aspect_ratio_index = "22"
|
||||||
|
@ -23,6 +27,7 @@ audio_enable_menu_notice = "false"
|
||||||
audio_enable_menu_ok = "false"
|
audio_enable_menu_ok = "false"
|
||||||
audio_enable_menu_scroll = "false"
|
audio_enable_menu_scroll = "false"
|
||||||
audio_fastforward_mute = "false"
|
audio_fastforward_mute = "false"
|
||||||
|
audio_fastforward_speedup = "false"
|
||||||
audio_filter_dir = "/app/lib/retroarch/filters/audio"
|
audio_filter_dir = "/app/lib/retroarch/filters/audio"
|
||||||
audio_latency = "64"
|
audio_latency = "64"
|
||||||
audio_max_timing_skew = "0.050000"
|
audio_max_timing_skew = "0.050000"
|
||||||
|
@ -43,8 +48,8 @@ auto_shaders_enable = "true"
|
||||||
autosave_interval = "10"
|
autosave_interval = "10"
|
||||||
block_sram_overwrite = "false"
|
block_sram_overwrite = "false"
|
||||||
bluetooth_driver = "null"
|
bluetooth_driver = "null"
|
||||||
builtin_imageviewer_enable = "true"
|
builtin_imageviewer_enable = "false"
|
||||||
builtin_mediaplayer_enable = "true"
|
builtin_mediaplayer_enable = "false"
|
||||||
bundle_assets_dst_path = ""
|
bundle_assets_dst_path = ""
|
||||||
bundle_assets_dst_path_subdir = ""
|
bundle_assets_dst_path_subdir = ""
|
||||||
bundle_assets_extract_enable = "false"
|
bundle_assets_extract_enable = "false"
|
||||||
|
@ -77,9 +82,17 @@ cheevos_unlock_sound_enable = "true"
|
||||||
cheevos_username = ""
|
cheevos_username = ""
|
||||||
cheevos_verbose_enable = "true"
|
cheevos_verbose_enable = "true"
|
||||||
cheevos_visibility_account = "true"
|
cheevos_visibility_account = "true"
|
||||||
|
cheevos_visibility_lboard_cancel = "true"
|
||||||
|
cheevos_visibility_lboard_start = "true"
|
||||||
|
cheevos_visibility_lboard_submit = "true"
|
||||||
|
cheevos_visibility_lboard_trackers = "true"
|
||||||
cheevos_visibility_mastery = "true"
|
cheevos_visibility_mastery = "true"
|
||||||
|
cheevos_visibility_progress_tracker = "true"
|
||||||
cheevos_visibility_summary = "1"
|
cheevos_visibility_summary = "1"
|
||||||
cheevos_visibility_unlock = "true"
|
cheevos_visibility_unlock = "true"
|
||||||
|
cloud_sync_destructive = "false"
|
||||||
|
cloud_sync_driver = ""
|
||||||
|
cloud_sync_enable = "false"
|
||||||
config_save_on_exit = "true"
|
config_save_on_exit = "true"
|
||||||
content_database_path = "/app/share/libretro/database/rdb"
|
content_database_path = "/app/share/libretro/database/rdb"
|
||||||
content_favorites_directory = "default"
|
content_favorites_directory = "default"
|
||||||
|
@ -159,10 +172,12 @@ gamemode_enable = "false"
|
||||||
gamma_correction = "0"
|
gamma_correction = "0"
|
||||||
global_core_options = "true"
|
global_core_options = "true"
|
||||||
history_list_enable = "true"
|
history_list_enable = "true"
|
||||||
|
initial_disk_change_enable = "true"
|
||||||
input_ai_service = "i"
|
input_ai_service = "i"
|
||||||
input_ai_service_axis = "nul"
|
input_ai_service_axis = "nul"
|
||||||
input_ai_service_btn = "nul"
|
input_ai_service_btn = "nul"
|
||||||
input_ai_service_mbtn = "nul"
|
input_ai_service_mbtn = "nul"
|
||||||
|
input_allow_turbo_dpad = "false"
|
||||||
input_analog_deadzone = "0.000000"
|
input_analog_deadzone = "0.000000"
|
||||||
input_analog_sensitivity = "1.000000"
|
input_analog_sensitivity = "1.000000"
|
||||||
input_audio_mute = "nul"
|
input_audio_mute = "nul"
|
||||||
|
@ -264,6 +279,7 @@ input_hold_slowmotion_axis = "nul"
|
||||||
input_hold_slowmotion_btn = "nul"
|
input_hold_slowmotion_btn = "nul"
|
||||||
input_hold_slowmotion_mbtn = "nul"
|
input_hold_slowmotion_mbtn = "nul"
|
||||||
input_hotkey_block_delay = "5"
|
input_hotkey_block_delay = "5"
|
||||||
|
input_hotkey_device_merge = "false"
|
||||||
input_joypad_driver = "sdl2"
|
input_joypad_driver = "sdl2"
|
||||||
input_keyboard_layout = ""
|
input_keyboard_layout = ""
|
||||||
input_load_state = "a"
|
input_load_state = "a"
|
||||||
|
@ -301,6 +317,9 @@ input_netplay_player_chat_axis = "nul"
|
||||||
input_netplay_player_chat_btn = "nul"
|
input_netplay_player_chat_btn = "nul"
|
||||||
input_netplay_player_chat_mbtn = "nul"
|
input_netplay_player_chat_mbtn = "nul"
|
||||||
input_nowinkey_enable = "false"
|
input_nowinkey_enable = "false"
|
||||||
|
input_osk_overlay = ""
|
||||||
|
input_osk_overlay_auto_scale = "false"
|
||||||
|
input_osk_overlay_opacity = "0.700000"
|
||||||
input_osk_toggle = "f12"
|
input_osk_toggle = "f12"
|
||||||
input_osk_toggle_axis = "nul"
|
input_osk_toggle_axis = "nul"
|
||||||
input_osk_toggle_btn = "nul"
|
input_osk_toggle_btn = "nul"
|
||||||
|
@ -317,11 +336,25 @@ input_overlay_enable = "true"
|
||||||
input_overlay_enable_autopreferred = "true"
|
input_overlay_enable_autopreferred = "true"
|
||||||
input_overlay_hide_in_menu = "false"
|
input_overlay_hide_in_menu = "false"
|
||||||
input_overlay_hide_when_gamepad_connected = "false"
|
input_overlay_hide_when_gamepad_connected = "false"
|
||||||
|
input_overlay_lightgun_allow_offscreen = "true"
|
||||||
|
input_overlay_lightgun_four_touch_input = "0"
|
||||||
|
input_overlay_lightgun_port = "-1"
|
||||||
|
input_overlay_lightgun_three_touch_input = "0"
|
||||||
|
input_overlay_lightgun_trigger_delay = "1"
|
||||||
|
input_overlay_lightgun_trigger_on_touch = "true"
|
||||||
|
input_overlay_lightgun_two_touch_input = "0"
|
||||||
|
input_overlay_mouse_dtap_msec = "200"
|
||||||
|
input_overlay_mouse_dtap_to_drag = "false"
|
||||||
|
input_overlay_mouse_hold_msec = "200"
|
||||||
|
input_overlay_mouse_hold_to_drag = "true"
|
||||||
|
input_overlay_mouse_speed = "1.000000"
|
||||||
|
input_overlay_mouse_swipe_threshold = "1.000000"
|
||||||
input_overlay_next = "nul"
|
input_overlay_next = "nul"
|
||||||
input_overlay_next_axis = "nul"
|
input_overlay_next_axis = "nul"
|
||||||
input_overlay_next_btn = "nul"
|
input_overlay_next_btn = "nul"
|
||||||
input_overlay_next_mbtn = "nul"
|
input_overlay_next_mbtn = "nul"
|
||||||
input_overlay_opacity = "0.700000"
|
input_overlay_opacity = "0.700000"
|
||||||
|
input_overlay_pointer_enable = "false"
|
||||||
input_overlay_scale_landscape = "1.000000"
|
input_overlay_scale_landscape = "1.000000"
|
||||||
input_overlay_scale_portrait = "1.000000"
|
input_overlay_scale_portrait = "1.000000"
|
||||||
input_overlay_show_inputs = "2"
|
input_overlay_show_inputs = "2"
|
||||||
|
@ -2912,6 +2945,14 @@ menu_xmb_thumbnail_scale_factor = "100"
|
||||||
menu_xmb_title_margin = "5"
|
menu_xmb_title_margin = "5"
|
||||||
menu_xmb_title_margin_horizontal_offset = "0"
|
menu_xmb_title_margin_horizontal_offset = "0"
|
||||||
menu_xmb_vertical_fade_factor = "100"
|
menu_xmb_vertical_fade_factor = "100"
|
||||||
|
microphone_block_frames = "0"
|
||||||
|
microphone_device = ""
|
||||||
|
microphone_driver = "alsathread"
|
||||||
|
microphone_enable = "true"
|
||||||
|
microphone_latency = "64"
|
||||||
|
microphone_rate = "48000"
|
||||||
|
microphone_resampler = "sinc"
|
||||||
|
microphone_resampler_quality = "3"
|
||||||
midi_driver = "alsa"
|
midi_driver = "alsa"
|
||||||
midi_input = "OFF"
|
midi_input = "OFF"
|
||||||
midi_output = "OFF"
|
midi_output = "OFF"
|
||||||
|
@ -2985,16 +3026,19 @@ network_remote_enable_user_p9 = "false"
|
||||||
notification_show_autoconfig = "true"
|
notification_show_autoconfig = "true"
|
||||||
notification_show_cheats_applied = "true"
|
notification_show_cheats_applied = "true"
|
||||||
notification_show_config_override_load = "true"
|
notification_show_config_override_load = "true"
|
||||||
|
notification_show_disk_control = "true"
|
||||||
notification_show_fast_forward = "true"
|
notification_show_fast_forward = "true"
|
||||||
notification_show_netplay_extra = "false"
|
notification_show_netplay_extra = "false"
|
||||||
notification_show_patch_applied = "true"
|
notification_show_patch_applied = "true"
|
||||||
notification_show_refresh_rate = "true"
|
notification_show_refresh_rate = "true"
|
||||||
notification_show_remap_load = "true"
|
notification_show_remap_load = "true"
|
||||||
|
notification_show_save_state = "true"
|
||||||
notification_show_screenshot = "true"
|
notification_show_screenshot = "true"
|
||||||
notification_show_screenshot_duration = "0"
|
notification_show_screenshot_duration = "0"
|
||||||
notification_show_screenshot_flash = "0"
|
notification_show_screenshot_flash = "0"
|
||||||
notification_show_set_initial_disk = "true"
|
notification_show_set_initial_disk = "true"
|
||||||
notification_show_when_menu_is_alive = "false"
|
notification_show_when_menu_is_alive = "false"
|
||||||
|
osk_overlay_directory = "/var/config/retroarch/overlays/keyboards"
|
||||||
overlay_directory = "/var/config/retroarch/overlays/borders"
|
overlay_directory = "/var/config/retroarch/overlays/borders"
|
||||||
ozone_collapse_sidebar = "false"
|
ozone_collapse_sidebar = "false"
|
||||||
ozone_menu_color_theme = "1"
|
ozone_menu_color_theme = "1"
|
||||||
|
@ -3018,6 +3062,7 @@ playlist_show_sublabels = "true"
|
||||||
playlist_sort_alphabetical = "true"
|
playlist_sort_alphabetical = "true"
|
||||||
playlist_sublabel_last_played_style = "0"
|
playlist_sublabel_last_played_style = "0"
|
||||||
playlist_sublabel_runtime_type = "0"
|
playlist_sublabel_runtime_type = "0"
|
||||||
|
playlist_use_filename = "false"
|
||||||
playlist_use_old_format = "false"
|
playlist_use_old_format = "false"
|
||||||
preemptive_frames_enable = "false"
|
preemptive_frames_enable = "false"
|
||||||
preemptive_frames_hide_warnings = "false"
|
preemptive_frames_hide_warnings = "false"
|
||||||
|
@ -3097,6 +3142,7 @@ savestate_file_compression = "true"
|
||||||
savestate_max_keep = "0"
|
savestate_max_keep = "0"
|
||||||
savestate_thumbnail_enable = "false"
|
savestate_thumbnail_enable = "false"
|
||||||
savestates_in_content_dir = "false"
|
savestates_in_content_dir = "false"
|
||||||
|
scan_serial_and_crc = "false"
|
||||||
scan_without_core_match = "false"
|
scan_without_core_match = "false"
|
||||||
screen_brightness = "100"
|
screen_brightness = "100"
|
||||||
screen_orientation = "0"
|
screen_orientation = "0"
|
||||||
|
@ -3141,6 +3187,7 @@ suspend_screensaver_enable = "true"
|
||||||
sustained_performance_mode = "false"
|
sustained_performance_mode = "false"
|
||||||
system_directory = "/var/config/retroarch/system"
|
system_directory = "/var/config/retroarch/system"
|
||||||
systemfiles_in_content_dir = "false"
|
systemfiles_in_content_dir = "false"
|
||||||
|
test_input_file_joypad = ""
|
||||||
threaded_data_runloop_enable = "true"
|
threaded_data_runloop_enable = "true"
|
||||||
thumbnails_directory = "/var/config/retroarch/thumbnails"
|
thumbnails_directory = "/var/config/retroarch/thumbnails"
|
||||||
twitch_stream_key = ""
|
twitch_stream_key = ""
|
||||||
|
@ -3155,7 +3202,9 @@ video_adaptive_vsync = "false"
|
||||||
video_allow_rotate = "true"
|
video_allow_rotate = "true"
|
||||||
video_aspect_ratio = "1.333300"
|
video_aspect_ratio = "1.333300"
|
||||||
video_aspect_ratio_auto = "false"
|
video_aspect_ratio_auto = "false"
|
||||||
|
video_autoswitch_pal_threshold = "54.500000"
|
||||||
video_autoswitch_refresh_rate = "0"
|
video_autoswitch_refresh_rate = "0"
|
||||||
|
video_bfi_dark_frames = "1"
|
||||||
video_black_frame_insertion = "0"
|
video_black_frame_insertion = "0"
|
||||||
video_context_driver = ""
|
video_context_driver = ""
|
||||||
video_crop_overscan = "true"
|
video_crop_overscan = "true"
|
||||||
|
@ -3171,6 +3220,7 @@ video_force_aspect = "true"
|
||||||
video_force_srgb_disable = "false"
|
video_force_srgb_disable = "false"
|
||||||
video_frame_delay = "0"
|
video_frame_delay = "0"
|
||||||
video_frame_delay_auto = "false"
|
video_frame_delay_auto = "false"
|
||||||
|
video_frame_rest = "false"
|
||||||
video_fullscreen = "true"
|
video_fullscreen = "true"
|
||||||
video_fullscreen_x = "0"
|
video_fullscreen_x = "0"
|
||||||
video_fullscreen_y = "0"
|
video_fullscreen_y = "0"
|
||||||
|
@ -3209,11 +3259,13 @@ video_rotation = "0"
|
||||||
video_scale = "3"
|
video_scale = "3"
|
||||||
video_scale_integer = "false"
|
video_scale_integer = "false"
|
||||||
video_scale_integer_overscale = "false"
|
video_scale_integer_overscale = "false"
|
||||||
|
video_scan_subframes = "false"
|
||||||
video_shader_delay = "0"
|
video_shader_delay = "0"
|
||||||
video_shader_dir = "/var/config/retroarch/shaders"
|
video_shader_dir = "/var/config/retroarch/shaders"
|
||||||
video_shader_enable = "true"
|
video_shader_enable = "true"
|
||||||
video_shader_preset_save_reference_enable = "true"
|
video_shader_preset_save_reference_enable = "true"
|
||||||
video_shader_remember_last_dir = "false"
|
video_shader_remember_last_dir = "false"
|
||||||
|
video_shader_subframes = "1"
|
||||||
video_shader_watch_files = "false"
|
video_shader_watch_files = "false"
|
||||||
video_shared_context = "false"
|
video_shared_context = "false"
|
||||||
video_smooth = "false"
|
video_smooth = "false"
|
||||||
|
@ -3239,6 +3291,9 @@ video_windowed_position_x = "0"
|
||||||
video_windowed_position_y = "0"
|
video_windowed_position_y = "0"
|
||||||
vrr_runloop_enable = "false"
|
vrr_runloop_enable = "false"
|
||||||
vulkan_gpu_index = "0"
|
vulkan_gpu_index = "0"
|
||||||
|
webdav_password = ""
|
||||||
|
webdav_url = ""
|
||||||
|
webdav_username = ""
|
||||||
wifi_driver = "null"
|
wifi_driver = "null"
|
||||||
wifi_enabled = "true"
|
wifi_enabled = "true"
|
||||||
xmb_alpha_factor = "75"
|
xmb_alpha_factor = "75"
|
||||||
|
|
|
@ -47,4 +47,5 @@ main_window_stop=Ctrl+Q
|
||||||
main_window_toggle_fullscreen=Ctrl+Return
|
main_window_toggle_fullscreen=Ctrl+Return
|
||||||
|
|
||||||
[main_window]
|
[main_window]
|
||||||
|
confirmationBoxExitGame=false
|
||||||
infoBoxEnabledWelcome=false
|
infoBoxEnabledWelcome=false
|
|
@ -76,8 +76,8 @@ check_for_version_update() {
|
||||||
log i "Showing new version found dialog"
|
log i "Showing new version found dialog"
|
||||||
choice=$(zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="OK" --extra-button="Ignore this version" \
|
choice=$(zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="OK" --extra-button="Ignore this version" \
|
||||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Update Available" \
|
--title "RetroDECK - New Update Available" \
|
||||||
--text="There is a new version of RetroDECK on the stable release channel $online_version. Please update through the Discover app!\n\nIf you would like to ignore this version and recieve a notification at the NEXT version,\nclick the \"Ignore this version\" button.")
|
--text="There is a new version of RetroDECK available: <span foreground='$blue'><b>$online_version</b></span>.\nYou can easily update from the app store you have installed, examples: KDE Discover or Gnome Software.\n\nIf you would like to ignore this notification, click the \"Ignore this version\" button.")
|
||||||
rc=$? # Capture return code, as "OK" button has no text value
|
rc=$? # Capture return code, as "OK" button has no text value
|
||||||
if [[ $rc == "1" ]]; then # If any button other than "OK" was clicked
|
if [[ $rc == "1" ]]; then # If any button other than "OK" was clicked
|
||||||
log i "Selected: \"OK\""
|
log i "Selected: \"OK\""
|
||||||
|
@ -87,8 +87,8 @@ check_for_version_update() {
|
||||||
log i "Showing update request dialog as \"$online_version\" was found and is greater then \"$version\""
|
log i "Showing update request dialog as \"$online_version\" was found and is greater then \"$version\""
|
||||||
choice=$(zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="Yes" --extra-button="No" --extra-button="Ignore this version" \
|
choice=$(zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="Yes" --extra-button="No" --extra-button="Ignore this version" \
|
||||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Update Available" \
|
--title "RetroDECK - New Cooker Version Available" \
|
||||||
--text="There is a more recent build of the RetroDECK cooker branch.\nYou are running version $hard_version, the latest is $online_version.\n\nWould you like to update to it?\nIf you would like to skip reminders about this version, click \"Ignore this version\".\nYou will be reminded again at the next version update.\n\nIf you would like to disable these update notifications entirely, disable Online Update Checks in the Configurator.")
|
--text="There is a more recent version of RetroDECK cooker.\nYou are running version <span foreground='$blue'><b>$hard_version</b></span>. The latest is <span foreground='$blue'><b>$online_version</b></span>.\n\nWould you like to update?\nIf you would like to ignore this notification, click the \"Ignore this version\" button.\n\nIf you would like to disable these notifications entirely: disable Online Update Checks in the Configurator.")
|
||||||
rc=$? # Capture return code, as "Yes" button has no text value
|
rc=$? # Capture return code, as "Yes" button has no text value
|
||||||
if [[ $rc == "1" ]]; then # If any button other than "Yes" was clicked
|
if [[ $rc == "1" ]]; then # If any button other than "Yes" was clicked
|
||||||
if [[ $choice == "Ignore this version" ]]; then
|
if [[ $choice == "Ignore this version" ]]; then
|
||||||
|
@ -99,22 +99,46 @@ check_for_version_update() {
|
||||||
log i "Selected: \"Yes\""
|
log i "Selected: \"Yes\""
|
||||||
configurator_generic_dialog "RetroDECK Online Update" "The update process may take several minutes.\n\nAfter the update is complete, RetroDECK will close. When you run it again you will be using the latest version."
|
configurator_generic_dialog "RetroDECK Online Update" "The update process may take several minutes.\n\nAfter the update is complete, RetroDECK will close. When you run it again you will be using the latest version."
|
||||||
(
|
(
|
||||||
local latest_cooker_download=$(curl --silent https://api.github.com/repos/XargonWan/$update_repo/releases/latest | grep '"browser_download_url":' | sed -E 's/.*"([^"]+)".*/\1/')
|
local latest_cooker_download=$(curl --silent https://api.github.com/repos/XargonWan/RetroDECK-cooker/releases/latest | grep '"browser_download_url":.*flatpak' | grep -v '\.sha' | sed -E 's/.*"([^"]+)".*/\1/')
|
||||||
local temp_folder="$rdhome/RetroDECK_Updates"
|
local temp_folder="$rdhome/RetroDECK_Updates"
|
||||||
create_dir $temp_folder
|
create_dir $temp_folder
|
||||||
log i "Downloading version \"$online_version\" in \"$temp_folder/RetroDECK-cooker.flatpak\" from url: \"$latest_cooker_download\""
|
log i "Downloading version \"$online_version\" in \"$temp_folder/RetroDECK-cooker.flatpak\" from url: \"$latest_cooker_download\""
|
||||||
|
# Downloading the flatpak file
|
||||||
wget -P "$temp_folder" "$latest_cooker_download"
|
wget -P "$temp_folder" "$latest_cooker_download"
|
||||||
log d "Uninstalling old RetroDECK flatpak"
|
# And its sha
|
||||||
flatpak-spawn --host flatpak remove --noninteractive -y net.retrodeck.retrodeck # Remove current version before installing new one, to avoid duplicates
|
wget -P "$temp_folder" "$latest_cooker_download.sha"
|
||||||
log d "Installing new flatpak file from: \"$temp_folder/RetroDECK-cooker.flatpak\""
|
|
||||||
|
# Get the expected SHA checksum from the SHA file
|
||||||
|
local expected_sha=$(cat "$temp_folder/$(basename "$latest_cooker_download").sha" | awk '{print $1}')
|
||||||
|
|
||||||
|
# Check if the file exists
|
||||||
if [ -f "$temp_folder/RetroDECK-cooker.flatpak" ]; then
|
if [ -f "$temp_folder/RetroDECK-cooker.flatpak" ]; then
|
||||||
log d "Flatpak file \"$temp_folder/RetroDECK-cooker.flatpak\" found, proceeding."
|
# Calculate the actual SHA checksum of the file
|
||||||
flatpak-spawn --host flatpak install --user --bundle --noninteractive -y "$temp_folder/RetroDECK-cooker.flatpak"
|
actual_sha=$(sha256sum "$temp_folder/RetroDECK-cooker.flatpak" | awk '{print $1}')
|
||||||
|
|
||||||
|
# Log the found and expected SHA checksums
|
||||||
|
log d "Found SHA: $actual_sha"
|
||||||
|
log d "Expected SHA: $expected_sha"
|
||||||
|
|
||||||
|
# Check if the SHA checksum matches
|
||||||
|
if [ "$actual_sha" = "$expected_sha" ]; then
|
||||||
|
log d "Flatpak file \"$temp_folder/RetroDECK-cooker.flatpak\" found and SHA checksum matches, proceeding."
|
||||||
|
log d "Uninstalling old RetroDECK flatpak"
|
||||||
|
# Remove current version before installing new one, to avoid duplicates
|
||||||
|
flatpak-spawn --host flatpak remove --noninteractive -y net.retrodeck.retrodeck && log d "Uninstallation successful"
|
||||||
|
log d "Installing new flatpak file from: \"$temp_folder/RetroDECK-cooker.flatpak\""
|
||||||
|
flatpak-spawn --host flatpak install --user --bundle --noninteractive -y "$temp_folder/RetroDECK-cooker.flatpak" && log d "Installation successful"
|
||||||
|
else
|
||||||
|
log e "Flatpak file \"$temp_folder/RetroDECK-cooker.flatpak\" found but SHA checksum does not match. Quitting."
|
||||||
|
configurator_generic_dialog "RetroDECK Online Update" "There was an error during the update: flatpak file found but SHA checksum does not match. Please check the log file."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
log e "Flatpak file \"$temp_folder/RetroDECK-cooker.flatpak\" NOT FOUND. Quitting"
|
log e "Flatpak file \"$temp_folder/RetroDECK-cooker.flatpak\" NOT FOUND. Quitting."
|
||||||
configurator_generic_dialog "RetroDECK Online Update" "There was an error during the update: flatpak file not found please check the log file."
|
configurator_generic_dialog "RetroDECK Online Update" "There was an error during the update: flatpak file not found. Please check the log file."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -rf "$temp_folder" # Cleanup old bundles to save space
|
rm -rf "$temp_folder" # Cleanup old bundles to save space
|
||||||
) |
|
) |
|
||||||
zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \
|
zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \
|
||||||
|
|
2
functions/cloud_sync.sh
Normal file
2
functions/cloud_sync.sh
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
source /app/libexec/functions.sh
|
source /app/libexec/functions.sh
|
||||||
|
|
||||||
|
# Dialog colors
|
||||||
|
purple="#a864fc"
|
||||||
|
blue="#6fbfff"
|
||||||
|
|
||||||
debug_dialog() {
|
debug_dialog() {
|
||||||
# This function is for displaying commands run by the Configurator without actually running them
|
# This function is for displaying commands run by the Configurator without actually running them
|
||||||
# USAGE: debug_dialog "command"
|
# USAGE: debug_dialog "command"
|
||||||
|
@ -175,8 +179,7 @@ changelog_dialog() {
|
||||||
else
|
else
|
||||||
local version_changelog=$(xml sel -t -m "//release[@version='$1']/description" -v . -n $rd_appdata | tr -s '\n' | sed 's/^\s*//')
|
local version_changelog=$(xml sel -t -m "//release[@version='$1']/description" -v . -n $rd_appdata | tr -s '\n' | sed 's/^\s*//')
|
||||||
|
|
||||||
echo -e "In RetroDECK version $1, the following changes were made:\n$version_changelog" > "/var/config/retrodeck/changelog-partial.txt"
|
echo -e "In RetroDECK version $1, the following changes were made:\n$version_changelog" > "/var/config/retrodeck/changelog-partial.txt" 2>/dev/null
|
||||||
"$version_changelog" >> "/var/config/retrodeck/changelog-partial.txt"
|
|
||||||
|
|
||||||
zenity --icon-name=net.retrodeck.retrodeck --text-info --width=1200 --height=720 \
|
zenity --icon-name=net.retrodeck.retrodeck --text-info --width=1200 --height=720 \
|
||||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
|
|
|
@ -39,11 +39,21 @@ set_setting_value() {
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"rpcs3" | "vita3k" ) # This does not currently work for settings with a $ in them
|
"rpcs3" | "vita3k" )
|
||||||
if [[ -z $current_section_name ]]; then
|
# This does not currently work for settings with a $ in them
|
||||||
sed -i 's^\^'"$setting_name_to_change"': .*^'"$setting_name_to_change"': '"$setting_value_to_change"'^' "$1"
|
|
||||||
else
|
if [[ "$1" =~ (.ini)$ ]]; then # If this is a RPCS3 .ini file
|
||||||
sed -i '\^\['"$current_section_name"'\]^,\^\^'"$setting_name_to_change"'.*^s^\^'"$setting_name_to_change"': .*^'"$setting_name_to_change"': '"$setting_value_to_change"'^' "$1"
|
if [[ -z $current_section_name ]]; then
|
||||||
|
sed -i 's^\^'"$setting_name_to_change"'=.*^'"$setting_name_to_change"'='"$setting_value_to_change"'^' "$1"
|
||||||
|
else
|
||||||
|
sed -i '\^\['"$current_section_name"'\]^,\^\^'"$setting_name_to_change"'=^s^\^'"$setting_name_to_change"'=.*^'"$setting_name_to_change"'='"$setting_value_to_change"'^' "$1"
|
||||||
|
fi
|
||||||
|
elif [[ "$1" =~ (.yml)$ ]]; then # If this is an YML-based file
|
||||||
|
if [[ -z $current_section_name ]]; then
|
||||||
|
sed -i 's^\^'"$setting_name_to_change"': .*^'"$setting_name_to_change"': '"$setting_value_to_change"'^' "$1"
|
||||||
|
else
|
||||||
|
sed -i '\^\['"$current_section_name"'\]^,\^\^'"$setting_name_to_change"'.*^s^\^'"$setting_name_to_change"': .*^'"$setting_name_to_change"': '"$setting_value_to_change"'^' "$1"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
@ -55,7 +65,9 @@ set_setting_value() {
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"mame" ) # In this option, $current_section_name is the <system name> in the .cfg file.
|
"mame" )
|
||||||
|
# In this option, $current_section_name is the <system name> in the .cfg file.
|
||||||
|
|
||||||
local mame_current_value=$(get_setting_value "$1" "$setting_name_to_change" "$4" "$current_section_name")
|
local mame_current_value=$(get_setting_value "$1" "$setting_name_to_change" "$4" "$current_section_name")
|
||||||
if [[ "$1" =~ (.ini)$ ]]; then # If this is a MAME .ini file
|
if [[ "$1" =~ (.ini)$ ]]; then # If this is a MAME .ini file
|
||||||
sed -i '\^\^'"$setting_name_to_change"'\s^s^'"$mame_current_value"'^'"$setting_value_to_change"'^' "$1"
|
sed -i '\^\^'"$setting_name_to_change"'\s^s^'"$mame_current_value"'^'"$setting_value_to_change"'^' "$1"
|
||||||
|
@ -84,7 +96,11 @@ get_setting_name() {
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"rpcs3" | "vita3k" )
|
"rpcs3" | "vita3k" )
|
||||||
echo "$current_setting_line" | grep -o -P "^\s*?.*?(?=\s?:\s?)" | sed -e 's/^[ \t]*//;s^\\ ^ ^g'
|
if [[ "$1" =~ (.ini)$ ]]; then # If this is a RPCS3 .ini file
|
||||||
|
echo "$current_setting_line" | grep -o -P "^\s*?.*?(?=\s?=\s?)" | sed -e 's/^[ \t]*//;s^\\ ^ ^g;s^\\$^^'
|
||||||
|
elif [[ "$1" =~ (.yml)$ ]]; then # If this is an YML-based file
|
||||||
|
echo "$current_setting_line" | grep -o -P "^\s*?.*?(?=\s?:\s?)" | sed -e 's/^[ \t]*//;s^\\ ^ ^g'
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"mame" ) # This only works for mame .ini files, not the .cfg XML files
|
"mame" ) # This only works for mame .ini files, not the .cfg XML files
|
||||||
|
|
|
@ -138,7 +138,6 @@ fi
|
||||||
|
|
||||||
# If there is no config file I initalize the file with the the default values
|
# If there is no config file I initalize the file with the the default values
|
||||||
if [[ ! -f "$rd_conf" ]]; then
|
if [[ ! -f "$rd_conf" ]]; then
|
||||||
create_dir /var/config/retrodeck/logs
|
|
||||||
log w "RetroDECK config file not found in $rd_conf"
|
log w "RetroDECK config file not found in $rd_conf"
|
||||||
log i "Initializing"
|
log i "Initializing"
|
||||||
# if we are here means that the we are in a new installation, so the version is valorized with the hardcoded one
|
# if we are here means that the we are in a new installation, so the version is valorized with the hardcoded one
|
||||||
|
@ -168,7 +167,7 @@ if [[ ! -f "$rd_conf" ]]; then
|
||||||
set_setting_value $rd_conf "version" "$version" retrodeck # Set current version for new installs
|
set_setting_value $rd_conf "version" "$version" retrodeck # Set current version for new installs
|
||||||
set_setting_value $rd_conf "sdcard" "$default_sd" retrodeck "paths" # Set SD card location if default path has changed
|
set_setting_value $rd_conf "sdcard" "$default_sd" retrodeck "paths" # Set SD card location if default path has changed
|
||||||
|
|
||||||
if grep -qF "cooker" <<< $hard_version; then # If newly-installed version is a "cooker" build
|
if grep -qF "cooker" <<< "$hard_version" || grep -qF "PR-" <<< "$hard_version"; then # If newly-installed version is a "cooker" or PR build
|
||||||
set_setting_value $rd_conf "update_repo" "RetroDECK-cooker" retrodeck "options"
|
set_setting_value $rd_conf "update_repo" "RetroDECK-cooker" retrodeck "options"
|
||||||
set_setting_value $rd_conf "update_check" "true" retrodeck "options"
|
set_setting_value $rd_conf "update_check" "true" retrodeck "options"
|
||||||
set_setting_value $rd_conf "developer_options" "true" retrodeck "options"
|
set_setting_value $rd_conf "developer_options" "true" retrodeck "options"
|
||||||
|
|
|
@ -300,6 +300,45 @@ post_update() {
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ $(check_version_is_older_than "0.8.1b") == "true" ]]; then
|
||||||
|
log i "In version 0.8.1b, the following changes were made that required config file updates/reset or other changes to the filesystem:"
|
||||||
|
log i "- ES-DE files were moved inside the retrodeck folder, migrating to the new structure"
|
||||||
|
log i "- Give the user the option to reset Ryujinx, which was not properly initialized in 0.8.0b"
|
||||||
|
|
||||||
|
log d "ES-DE files were moved inside the retrodeck folder, migrating to the new structure"
|
||||||
|
dir_prep "$rdhome/ES-DE/collections" "/var/config/ES-DE/collections"
|
||||||
|
dir_prep "$rdhome/ES-DE/gamelists" "/var/config/ES-DE/gamelists"
|
||||||
|
log i "Moving ES-DE collections, downloaded_media, gamelist, and themes from \"$rdhome\" to \"$rdhome/ES-DE\""
|
||||||
|
set_setting_value "$es_settings" "MediaDirectory" "$rdhome/ES-DE/downloaded_media" "es_settings"
|
||||||
|
set_setting_value "$es_settings" "UserThemeDirectory" "$rdhome/ES-DE/themes" "es_settings"
|
||||||
|
mv -f "$rdhome/themes" "$rdhome/ES-DE/themes" && log d "Move of \"$rdhome/themes\" completed"
|
||||||
|
mv -f "$rdhome/downloaded_media" "$rdhome/ES-DE/downloaded_media" && log d "Move of \"$rdhome/downloaded_media\" completed"
|
||||||
|
mv -f "$rdhome/gamelists/"* "$rdhome/ES-DE/gamelists" && log d "Move of \"$rdhome/gamelists/\" completed"
|
||||||
|
rm -rf "$rdhome/gamelists"
|
||||||
|
|
||||||
|
log i "MAME-SA, migrating samples to the new exposed folder: from \"/var/data/mame/assets/samples\" to \"$bios_folder/mame-sa/samples\""
|
||||||
|
create_dir "$bios_folder/mame-sa/samples"
|
||||||
|
mv -f "/var/data/mame/assets/samples/"* "$bios_folder/mame-sa/samples"
|
||||||
|
set_setting_value "$mameconf" "samplepath" "$bios_folder/mame-sa/samples" "mame"
|
||||||
|
|
||||||
|
log i "Installing the missing ScummVM assets and renaming \"$mods_folder/RetroArch/ScummVM/themes\" into \"theme\""
|
||||||
|
mv -f "$mods_folder/RetroArch/ScummVM/themes" "$mods_folder/RetroArch/ScummVM/theme"
|
||||||
|
unzip -o "$emuconfigs/retroarch/ScummVM.zip" 'scummvm/extra/*' -d /tmp
|
||||||
|
unzip -o "$emuconfigs/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
|
||||||
|
|
||||||
|
log i "Placing cheats in \"/var/data/mame/cheat\""
|
||||||
|
unzip -j -o "$emuconfigs/mame/cheat0264.zip" 'cheat.7z' -d "/var/data/mame/cheat"
|
||||||
|
|
||||||
|
log d "Verifying with user if they want to reset Ryujinx"
|
||||||
|
if [[ "$(configurator_generic_question_dialog "RetroDECK 0.8.1b Ryujinx Reset" "In RetroDECK 0.8.0b the Ryujinx emulator was not properly initialized for upgrading users.\nThis would cause Ryujinx to not work properly.\n\nWould you like to reset Ryujinx to default RetroDECK settings now?\n\nIf you have made your own changes to the Ryujinx config, you can decline this reset.")" == "true" ]]; then
|
||||||
|
log d "User agreed to Ryujinx reset"
|
||||||
|
prepare_component "reset" "ryujinx"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# if [[ $(check_version_is_older_than "0.9.0b") == "true" ]]; then
|
# if [[ $(check_version_is_older_than "0.9.0b") == "true" ]]; then
|
||||||
# # Placeholder for version 0.9.0b
|
# # Placeholder for version 0.9.0b
|
||||||
# rm /var/config/emulationstation/.emulationstation # remving the old symlink to .emulationstation as it might be not needed anymore
|
# rm /var/config/emulationstation/.emulationstation # remving the old symlink to .emulationstation as it might be not needed anymore
|
||||||
|
@ -335,8 +374,9 @@ post_update() {
|
||||||
) |
|
) |
|
||||||
zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \
|
zenity --icon-name=net.retrodeck.retrodeck --progress --no-cancel --pulsate --auto-close \
|
||||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Finishing Upgrade" \
|
--title "RetroDECK - Upgrade Process" \
|
||||||
--text="RetroDECK is finishing the upgrade process, please wait."
|
--width=400 --height=200 \
|
||||||
|
--text="RetroDECK is finishing up the upgrading process, please be patient.\n\n<span foreground='$purple' size='larger'><b>NOTICE - If the process is taking too long:</b></span>\n\nSome windows might be running in the background that could require your attention: pop-ups from emulators or the upgrade itself that needs user input to continue.\n\n"
|
||||||
|
|
||||||
version=$hard_version
|
version=$hard_version
|
||||||
conf_write
|
conf_write
|
||||||
|
|
|
@ -10,7 +10,7 @@ prepare_component() {
|
||||||
# USAGE: prepare_component "$action" "$component" "$call_source(optional)"
|
# USAGE: prepare_component "$action" "$component" "$call_source(optional)"
|
||||||
|
|
||||||
action="$1"
|
action="$1"
|
||||||
component="$2"
|
component=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||||
call_source="$3"
|
call_source="$3"
|
||||||
|
|
||||||
log d "Preparing component: \"$component\", action: \"$action\""
|
log d "Preparing component: \"$component\", action: \"$action\""
|
||||||
|
@ -48,7 +48,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(es-de|ES-DE|all)$ ]]; then # For use after ESDE-related folders are moved or a reset
|
if [[ "$component" =~ ^(es-de|all)$ ]]; then # For use after ESDE-related folders are moved or a reset
|
||||||
log i "--------------------------------"
|
log i "--------------------------------"
|
||||||
log i "Prepearing ES-DE"
|
log i "Prepearing ES-DE"
|
||||||
log i "--------------------------------"
|
log i "--------------------------------"
|
||||||
|
@ -60,7 +60,8 @@ prepare_component() {
|
||||||
set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings"
|
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" "MediaDirectory" "$media_folder" "es_settings"
|
||||||
set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings"
|
set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings"
|
||||||
dir_prep "$rdhome/gamelists" "/var/config/ES-DE/gamelists"
|
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"
|
dir_prep "$rd_logs_folder/ES-DE" "$es_source_logs"
|
||||||
log d "Generating roms system folders"
|
log d "Generating roms system folders"
|
||||||
#es-de --home /var/config/ES-DE --create-system-dirs
|
#es-de --home /var/config/ES-DE --create-system-dirs
|
||||||
|
@ -75,7 +76,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(retroarch|RetroArch|all)$ ]]; then
|
if [[ "$component" =~ ^(retroarch|all)$ ]]; then
|
||||||
log i "--------------------------------"
|
log i "--------------------------------"
|
||||||
log i "Prepearing RetroArch"
|
log i "Prepearing RetroArch"
|
||||||
log i "--------------------------------"
|
log i "--------------------------------"
|
||||||
|
@ -87,7 +88,7 @@ prepare_component() {
|
||||||
else # Single-user actions
|
else # Single-user actions
|
||||||
create_dir -d /var/config/retroarch
|
create_dir -d /var/config/retroarch
|
||||||
dir_prep "$bios_folder" "/var/config/retroarch/system"
|
dir_prep "$bios_folder" "/var/config/retroarch/system"
|
||||||
dir_prep "$logs_folder/retroarch" "/var/config/retroarch/logs"
|
dir_prep "$rdhome/logs/retroarch" "/var/config/retroarch/logs"
|
||||||
create_dir /var/config/retroarch/shaders/
|
create_dir /var/config/retroarch/shaders/
|
||||||
cp -rf /app/share/libretro/shaders /var/config/retroarch/
|
cp -rf /app/share/libretro/shaders /var/config/retroarch/
|
||||||
dir_prep "$rdhome/shaders/retroarch" "/var/config/retroarch/shaders"
|
dir_prep "$rdhome/shaders/retroarch" "/var/config/retroarch/shaders"
|
||||||
|
@ -103,17 +104,6 @@ prepare_component() {
|
||||||
set_setting_value "$raconf" "screenshot_directory" "$screenshots_folder" "retroarch"
|
set_setting_value "$raconf" "screenshot_directory" "$screenshots_folder" "retroarch"
|
||||||
set_setting_value "$raconf" "log_dir" "$logs_folder" "retroarch"
|
set_setting_value "$raconf" "log_dir" "$logs_folder" "retroarch"
|
||||||
set_setting_value "$raconf" "rgui_browser_directory" "$roms_folder" "retroarch"
|
set_setting_value "$raconf" "rgui_browser_directory" "$roms_folder" "retroarch"
|
||||||
|
|
||||||
# Specific Settings for ScummVM core
|
|
||||||
cp -fv "$emuconfigs/retroarch/scummvm.ini" "$ra_scummvm_conf"
|
|
||||||
create_dir "$mods_folder/RetroArch/ScummVM/icons"
|
|
||||||
create_dir "$mods_folder/RetroArch/ScummVM/extra"
|
|
||||||
create_dir "$mods_folder/RetroArch/ScummVM/themes"
|
|
||||||
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/themes" "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"
|
|
||||||
fi
|
fi
|
||||||
# Shared actions
|
# Shared actions
|
||||||
|
|
||||||
|
@ -161,6 +151,24 @@ prepare_component() {
|
||||||
log i "Copying \"/app/retrodeck/extras/Amiga/capsimg.so\" in \"$bios_folder/capsimg.so\""
|
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"
|
cp -f "/app/retrodeck/extras/Amiga/capsimg.so" "$bios_folder/capsimg.so"
|
||||||
|
|
||||||
|
# ScummVM
|
||||||
|
log i "-----------------------------------------------------------"
|
||||||
|
log i "Prepearing ScummVM LIBRETRO"
|
||||||
|
log i "-----------------------------------------------------------"
|
||||||
|
cp -fv "$emuconfigs/retroarch/scummvm.ini" "$ra_scummvm_conf"
|
||||||
|
create_dir "$mods_folder/RetroArch/ScummVM/icons"
|
||||||
|
log i "Installing ScummVM assets"
|
||||||
|
unzip -o "$emuconfigs/retroarch/ScummVM.zip" 'scummvm/extra/*' -d /tmp
|
||||||
|
unzip -o "$emuconfigs/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-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/cache" "/var/config/retroarch/system/Mupen64plus/cache"
|
||||||
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture" "/var/config/retroarch/system/Mupen64plus/hires_texture"
|
dir_prep "$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture" "/var/config/retroarch/system/Mupen64plus/hires_texture"
|
||||||
|
@ -202,7 +210,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(citra|citra-emu|Citra|all)$ ]]; then
|
if [[ "$component" =~ ^(citra|citra-emu|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "------------------------"
|
log i "------------------------"
|
||||||
log i "Prepearing CITRA"
|
log i "Prepearing CITRA"
|
||||||
|
@ -247,7 +255,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(cemu|Cemu|all)$ ]]; then
|
if [[ "$component" =~ ^(cemu|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
log i "Prepearing CEMU"
|
log i "Prepearing CEMU"
|
||||||
|
@ -274,7 +282,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(dolphin|dolphin-emu|Dolphin|all)$ ]]; then
|
if [[ "$component" =~ ^(dolphin|dolphin-emu|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
log i "Prepearing DOLPHIN"
|
log i "Prepearing DOLPHIN"
|
||||||
|
@ -327,7 +335,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(duckstation|Duckstation|all)$ ]]; then
|
if [[ "$component" =~ ^(duckstation|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "------------------------"
|
log i "------------------------"
|
||||||
log i "Prepearing DUCKSTATION"
|
log i "Prepearing DUCKSTATION"
|
||||||
|
@ -372,7 +380,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(melonds|melonDS|MelonDS|all)$ ]]; then
|
if [[ "$component" =~ ^(melonds|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
log i "Prepearing MELONDS"
|
log i "Prepearing MELONDS"
|
||||||
|
@ -410,7 +418,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(pcsx2|PCSX2|all)$ ]]; then
|
if [[ "$component" =~ ^(pcsx2|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
log i "Prepearing PCSX2"
|
log i "Prepearing PCSX2"
|
||||||
|
@ -464,7 +472,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(ppsspp|PPSSPP|all)$ ]]; then
|
if [[ "$component" =~ ^(ppsspp|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "------------------------"
|
log i "------------------------"
|
||||||
log i "Prepearing PPSSPPSDL"
|
log i "Prepearing PPSSPPSDL"
|
||||||
|
@ -492,7 +500,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(primehack|Primehack|all)$ ]]; then
|
if [[ "$component" =~ ^(primehack|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
log i "Prepearing Primehack"
|
log i "Prepearing Primehack"
|
||||||
|
@ -535,7 +543,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(rpcs3|RPCS3|all)$ ]]; then
|
if [[ "$component" =~ ^(rpcs3|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "------------------------"
|
log i "------------------------"
|
||||||
log i "Prepearing RPCS3"
|
log i "Prepearing RPCS3"
|
||||||
|
@ -571,7 +579,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(ryujinx|Ryujinx|all)$ ]]; then
|
if [[ "$component" =~ ^(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
|
# 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.
|
# 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
|
||||||
|
@ -615,7 +623,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(yuzu|Yuzu|all)$ ]]; then
|
if [[ "$component" =~ ^(yuzu|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
log i "Prepearing YUZU"
|
log i "Prepearing YUZU"
|
||||||
|
@ -668,7 +676,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(xemu|XEMU|all)$ ]]; then
|
if [[ "$component" =~ ^(xemu|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "------------------------"
|
log i "------------------------"
|
||||||
log i "Prepearing XEMU"
|
log i "Prepearing XEMU"
|
||||||
|
@ -712,7 +720,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(vita3k|Vita3K|all)$ ]]; then
|
if [[ "$component" =~ ^(vita3k|all)$ ]]; then
|
||||||
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
if [[ "$action" == "reset" ]]; then # Run reset-only commands
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
log i "Prepearing Vita3K"
|
log i "Prepearing Vita3K"
|
||||||
|
@ -736,7 +744,7 @@ prepare_component() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(mame|MAME|all)$ ]]; then
|
if [[ "$component" =~ ^(mame|all)$ ]]; then
|
||||||
# TODO: do a proper script
|
# TODO: do a proper script
|
||||||
# This is just a placeholder script to test the emulator's flow
|
# This is just a placeholder script to test the emulator's flow
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
|
@ -757,7 +765,7 @@ prepare_component() {
|
||||||
|
|
||||||
create_dir "/var/data/mame/plugin-data"
|
create_dir "/var/data/mame/plugin-data"
|
||||||
create_dir "/var/data/mame/hash"
|
create_dir "/var/data/mame/hash"
|
||||||
create_dir "/var/data/mame/assets/samples"
|
create_dir "$bios_folder/mame-sa/samples"
|
||||||
create_dir "/var/data/mame/assets/artwork"
|
create_dir "/var/data/mame/assets/artwork"
|
||||||
create_dir "/var/data/mame/assets/fonts"
|
create_dir "/var/data/mame/assets/fonts"
|
||||||
create_dir "/var/data/mame/cheat"
|
create_dir "/var/data/mame/cheat"
|
||||||
|
@ -798,10 +806,14 @@ prepare_component() {
|
||||||
set_setting_value "$mameconf" "state_directory" "$states_folder/mame-sa" "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" "snapshot_directory" "$screenshots_folder/mame-sa" "mame"
|
||||||
set_setting_value "$mameconf" "diff_directory" "$saves_folder/mame-sa/diff" "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 "$emuconfigs/mame/cheat0264.zip" 'cheat.7z' -d "/var/data/mame/cheat"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(gzdoom|GZDOOM|all)$ ]]; then
|
if [[ "$component" =~ ^(gzdoom|all)$ ]]; then
|
||||||
# TODO: do a proper script
|
# TODO: do a proper script
|
||||||
# This is just a placeholder script to test the emulator's flow
|
# This is just a placeholder script to test the emulator's flow
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
|
@ -821,7 +833,7 @@ prepare_component() {
|
||||||
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
|
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
|
fi
|
||||||
|
|
||||||
if [[ "$component" =~ ^(boilr|BOILR|all)$ ]]; then
|
if [[ "$component" =~ ^(boilr|all)$ ]]; then
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
log i "Prepearing BOILR"
|
log i "Prepearing BOILR"
|
||||||
log i "----------------------"
|
log i "----------------------"
|
||||||
|
@ -830,7 +842,7 @@ prepare_component() {
|
||||||
cp -fvr "/app/libexec/steam-sync/config.toml" "/var/config/boilr"
|
cp -fvr "/app/libexec/steam-sync/config.toml" "/var/config/boilr"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ ! "$component" =~ ^(retrodeck|es-de|ES-DE|retroarch|RetroArch|citra|citra-emu|Citra|cemu|Cemu|dolphin|dolphin-emu|Dolphin|duckstation|Duckstation|melonds|melonDS|MelonDS|pcsx2|PCSX2|pico8|pico-8|ppsspp|PPSSPP|primehack|Primehack|rpcs3|RPCS3|ryujinx|Ryujinx|yuzu|Yuzu|xemu|XEMU|vita3k|Vita3K|mame|MAME|gzdoom|GZDOOM|boilr|BOILR|)$ ]]; then
|
if [[ ! "$component" =~ ^(retrodeck|es-de|retroarch|citra|citra-emu|cemu|dolphin|dolphin-emu|duckstation|melonds|melonDS|pcsx2|pico8|pico-8|ppsspp|primehack|rpcs3|ryujinx|yuzu|xemu|vita3k|mame|gzdoom|boilr|)$ ]]; then
|
||||||
log e "Supplied component $component not found, not resetting"
|
log e "Supplied component $component not found, not resetting"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
|
@ -128,7 +128,7 @@ build_preset_config() {
|
||||||
create_dir "$(realpath "$(dirname "$read_target_file")")"
|
create_dir "$(realpath "$(dirname "$read_target_file")")"
|
||||||
echo "$read_setting_name = \""$new_setting_value"\"" > "$read_target_file"
|
echo "$read_setting_name = \""$new_setting_value"\"" > "$read_target_file"
|
||||||
else
|
else
|
||||||
if [[ -z $(grep "$read_setting_name" "$read_target_file") ]]; then
|
if [[ -z $(grep -o -P "^$read_setting_name\b" "$read_target_file") ]]; then
|
||||||
add_setting "$read_target_file" "$read_setting_name" "$new_setting_value" "$read_config_format" "$section"
|
add_setting "$read_target_file" "$read_setting_name" "$new_setting_value" "$read_config_format" "$section"
|
||||||
else
|
else
|
||||||
set_setting_value "$read_target_file" "$read_setting_name" "$new_setting_value" "$read_config_format" "$section"
|
set_setting_value "$read_target_file" "$read_setting_name" "$new_setting_value" "$read_config_format" "$section"
|
||||||
|
|
|
@ -1,34 +0,0 @@
|
||||||
Vita3K
|
|
||||||
|
|
||||||
Fix the bindings and make sure everything works
|
|
||||||
|
|
||||||
MAME
|
|
||||||
|
|
||||||
Double check all the inputs and hotkeys for Player 1 to 4
|
|
||||||
|
|
||||||
GZDoom
|
|
||||||
|
|
||||||
Fix the config.
|
|
||||||
Feel if the bindings are right when everything is done and all works as excpected.
|
|
||||||
|
|
||||||
Primehack
|
|
||||||
|
|
||||||
See what bindings works best
|
|
||||||
|
|
||||||
Dolphin
|
|
||||||
|
|
||||||
Look into Rotational controls while holding two buttons + right joystick.
|
|
||||||
|
|
||||||
RetroArch
|
|
||||||
|
|
||||||
User complained about Touchscreen
|
|
||||||
Make sure the config is SDL
|
|
||||||
|
|
||||||
ALL
|
|
||||||
|
|
||||||
Test all inputs after everything is done
|
|
||||||
|
|
||||||
|
|
||||||
Question:
|
|
||||||
|
|
||||||
Does the X/Y A/B switcher needs to be updated?
|
|
|
@ -60,9 +60,46 @@
|
||||||
<p>Discord: https://discord.gg/WDc5C9YWMx
|
<p>Discord: https://discord.gg/WDc5C9YWMx
|
||||||
(If you want to help out with the project join the "i-want-to-help" channel)</p>
|
(If you want to help out with the project join the "i-want-to-help" channel)</p>
|
||||||
</description>
|
</description>
|
||||||
|
<branding>
|
||||||
|
<color type="primary" scheme_preference="light">#94a6fb</color>
|
||||||
|
<color type="primary" scheme_preference="dark">#404b98</color>
|
||||||
|
</branding>
|
||||||
<project_license>GPL-3.0</project_license>
|
<project_license>GPL-3.0</project_license>
|
||||||
<metadata_license>CC0-1.0</metadata_license>
|
<metadata_license>CC0-1.0</metadata_license>
|
||||||
<releases>
|
<releases>
|
||||||
|
<release version="0.8.1b" date="2024-05-13">
|
||||||
|
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.8.1b</url>
|
||||||
|
<description>
|
||||||
|
<p>Changes:</p>
|
||||||
|
<ul>
|
||||||
|
<li>All emulators updated</li>
|
||||||
|
<li>PREPARE_COMPONENT: now the choice is passed lowercased so the script don't have to check for the possible casings, this should fix the issue where GZDoom couldn't be reset as it was expecting both GZDOOM or gzdoom.</li>
|
||||||
|
<li>ES-DE: downloaded_media, gamelist, and themes are now moved to the new retrodeck/ES-DE (previously was retrodeck)</li>
|
||||||
|
<li>ES-DE: custom collections are now located in retrodeck/ES-DE/collections, this prevents to be destroyed by a reset</li>
|
||||||
|
<li>LOGGER: version notes are no more outputed in the terminal or in the logs</li>
|
||||||
|
<li>WORKFLOWS: added RetroDECK.flatpak.sha files</li>
|
||||||
|
<li>WORKFLOWS: disabled nightly builds (was broken)</li>
|
||||||
|
<li>FRAMEWORK: now the PR builds are recognized same as cooker builds</li>
|
||||||
|
<li>FRAMEWORK: now there is a warning to check background windows, useful when installing RCPS3 firmware as some users were stuck on that screen without noticing the windows in the backgrounds</li>
|
||||||
|
<li>COOKER_UPDATER: added the hash check before uninstalling the flatpak</li>
|
||||||
|
<li>HELPER_FILES: updated links pointing to the new wiki</li>
|
||||||
|
<li>MAME-SA: added cheats</li>
|
||||||
|
<li>RYUJINX: added an helper file to specify how to install the firmware (not copying it in the folder)</li>
|
||||||
|
<li>RPCS3: included the confirm on quit preset, that can be enabled or disabled trough configurator like the other emulators</li>
|
||||||
|
<li>RETROARCH: fixed an issue where if a zip contained more than the game files it failed to load the game</li>
|
||||||
|
<li>CITRA_LIBRETRO: upscaled to 2x (was 4x but was too much), set system as "New 3DS"</li>
|
||||||
|
<li>GW_LIBRETRO: Handheld Electronic (GW) Libretro is now the defaulted Game And Watch emulator (due to a bug)</li>
|
||||||
|
<li>MESEN_LIBRETRO: enabled FDS disk auto load</li>
|
||||||
|
<li>SCUMMVM_LIBRETRO: provided assets</li>
|
||||||
|
<li>BIOS_CHECKER: added bios support for 3DO, GB, GBC, GBA, Neo Geo CD</li>
|
||||||
|
<li>BIOS_CHECKER: added more missing hashes</li>
|
||||||
|
</ul>
|
||||||
|
<p>Known issues:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Please check the know issues in the Wiki under General Infomration.</li>
|
||||||
|
</ul>
|
||||||
|
</description>
|
||||||
|
</release>
|
||||||
<release version="0.8.0b" date="2024-04-17">
|
<release version="0.8.0b" date="2024-04-17">
|
||||||
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.8.0b</url>
|
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.8.0b</url>
|
||||||
<description>
|
<description>
|
||||||
|
@ -70,7 +107,7 @@
|
||||||
<ul>
|
<ul>
|
||||||
<li>All the emulators and engines are updated to their latest version</li>
|
<li>All the emulators and engines are updated to their latest version</li>
|
||||||
<li>ES-DE: updated to 3.0.1</li>
|
<li>ES-DE: updated to 3.0.1</li>
|
||||||
<li>RPCS3 is now running via shortcut (.desktop file) by default - WARN THE USERS TO MIGRATE and how to change it back</li>
|
<li>RPCS3 is now running via shortcut (.desktop file) by default</li>
|
||||||
<li>CITRA-SA: removed, it will available trough Ponzu. The libretro core is now the default emulator</li>
|
<li>CITRA-SA: removed, it will available trough Ponzu. The libretro core is now the default emulator</li>
|
||||||
<li>YUZU: removed, Ryujinx is now the default emulator, it will available trough Ponzu</li>
|
<li>YUZU: removed, Ryujinx is now the default emulator, it will available trough Ponzu</li>
|
||||||
<li>PONZU: added, check the wiki if interested in this preservational function</li>
|
<li>PONZU: added, check the wiki if interested in this preservational function</li>
|
||||||
|
@ -112,8 +149,8 @@
|
||||||
<li>Removed talk names in the manifest as they're not needed anymore as enabled by default</li>
|
<li>Removed talk names in the manifest as they're not needed anymore as enabled by default</li>
|
||||||
<li>Fixed an issue that prevented RetroDECK to work properly on some distributions on Wayland</li>
|
<li>Fixed an issue that prevented RetroDECK to work properly on some distributions on Wayland</li>
|
||||||
<li>Added the needed subfolders in retrodeck/bios</li>
|
<li>Added the needed subfolders in retrodeck/bios</li>
|
||||||
<li>DVELOPER TOOLS: fixed some issues that preventing RetroDECK to be built locally</li>
|
<li>DEVELOPER TOOLS: fixed some issues that preventing RetroDECK to be built locally</li>
|
||||||
<li>DVELOPER TOOLS: added a script to inject changes in the current RetroDECK installation in order to test script and config changes without a full manifest rebuild</li>
|
<li>DEVELOPER TOOLS: added a script to inject changes in the current RetroDECK installation in order to test script and config changes without a full manifest rebuild</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>Known issues:</p>
|
<p>Known issues:</p>
|
||||||
<ul>
|
<ul>
|
||||||
|
|
|
@ -22,7 +22,7 @@ finish-args:
|
||||||
- --talk-name=org.freedesktop.login1.Manager
|
- --talk-name=org.freedesktop.login1.Manager
|
||||||
- --filesystem=xdg-run/app/com.discordapp.Discord:create
|
- --filesystem=xdg-run/app/com.discordapp.Discord:create
|
||||||
- --filesystem=xdg-config/gtk-3.0:ro
|
- --filesystem=xdg-config/gtk-3.0:ro
|
||||||
- --env=QT_QPA_PLATFORM=wayland-egl;wayland;xcb
|
- --env=QT_QPA_PLATFORM=wayland;wayland-egl;xcb
|
||||||
# Dolphin
|
# Dolphin
|
||||||
- --allow=bluetooth
|
- --allow=bluetooth
|
||||||
# It allows an SDL application to specify its window class, which can be useful for window managers and desktop environments to identify and group similar windows
|
# It allows an SDL application to specify its window class, which can be useful for window managers and desktop environments to identify and group similar windows
|
||||||
|
@ -69,7 +69,7 @@ modules:
|
||||||
# The version number is hardcoded in /app/retrodeck/version
|
# The version number is hardcoded in /app/retrodeck/version
|
||||||
#
|
#
|
||||||
# UPDATE STEPS FOR MAIN:
|
# UPDATE STEPS FOR MAIN:
|
||||||
# [x] Update the VERSION variable on line containing "VERSION=THISBRANCH"
|
# [ ] Update the VERSION variable on line containing "VERSION=THISBRANCH"
|
||||||
# [x] Update the appdata.xml with the version number and notes
|
# [x] Update the appdata.xml with the version number and notes
|
||||||
#
|
#
|
||||||
- name: version-initialization
|
- name: version-initialization
|
||||||
|
@ -79,7 +79,7 @@ modules:
|
||||||
|
|
||||||
# on main please update this with the version variable, eg: VERSION=0.8.0b
|
# on main please update this with the version variable, eg: VERSION=0.8.0b
|
||||||
# on cooker will be THISBRANCH
|
# on cooker will be THISBRANCH
|
||||||
VERSION=0.8.0b
|
VERSION=THISBRANCH
|
||||||
|
|
||||||
git checkout ${GITHUB_REF_NAME}
|
git checkout ${GITHUB_REF_NAME}
|
||||||
mkdir -p ${FLATPAK_DEST}/retrodeck/
|
mkdir -p ${FLATPAK_DEST}/retrodeck/
|
||||||
|
@ -162,20 +162,6 @@ modules:
|
||||||
url: https://ftp.osuosl.org/pub/blfs/conglomeration/libgudev/libgudev-237.tar.xz
|
url: https://ftp.osuosl.org/pub/blfs/conglomeration/libgudev/libgudev-237.tar.xz
|
||||||
sha256: 0d06b21170d20c93e4f0534dbb9b0a8b4f1119ffb00b4031aaeb5b9148b686aa
|
sha256: 0d06b21170d20c93e4f0534dbb9b0a8b4f1119ffb00b4031aaeb5b9148b686aa
|
||||||
|
|
||||||
# #
|
|
||||||
# DEPRECATED IN FAVOR OF COMPILED MAME TOOL #
|
|
||||||
# #
|
|
||||||
# - name: chdman-tool
|
|
||||||
# buildsystem: simple
|
|
||||||
# build-commands:
|
|
||||||
# - cmake -B . -G Ninja
|
|
||||||
# - cmake --build .
|
|
||||||
# - cp chdman /app/bin
|
|
||||||
# sources:
|
|
||||||
# - type: git
|
|
||||||
# url: https://github.com/CharlesThobe/chdman.git
|
|
||||||
# commit: f7cadf1720cbeba8a14f2685830ff424a0c7f6cd
|
|
||||||
|
|
||||||
- name: rclone
|
- name: rclone
|
||||||
buildsystem: simple
|
buildsystem: simple
|
||||||
build-commands:
|
build-commands:
|
||||||
|
@ -224,6 +210,7 @@ modules:
|
||||||
url: https://github.com/mikefarah/yq/releases/download/v4.33.3/yq_linux_amd64
|
url: https://github.com/mikefarah/yq/releases/download/v4.33.3/yq_linux_amd64
|
||||||
sha256: 4ee662847c588c3ef2fec8bfb304e8739e3dbaba87ccb9a608d691c88f5b64dc
|
sha256: 4ee662847c588c3ef2fec8bfb304e8739e3dbaba87ccb9a608d691c88f5b64dc
|
||||||
|
|
||||||
|
# dependency of: CEMU
|
||||||
- name: glslang
|
- name: glslang
|
||||||
buildsystem: cmake-ninja
|
buildsystem: cmake-ninja
|
||||||
config-opts:
|
config-opts:
|
||||||
|
@ -236,8 +223,8 @@ modules:
|
||||||
- /lib/cmake
|
- /lib/cmake
|
||||||
sources:
|
sources:
|
||||||
- type: archive
|
- type: archive
|
||||||
url: https://github.com/KhronosGroup/glslang/archive/14.0.0.tar.gz
|
url: https://github.com/KhronosGroup/glslang/archive/14.1.0.tar.gz
|
||||||
sha256: 80bbb916a23e94ea9cbfb1acb5d1a44a7e0c9613bcf5b5947c03f2273bdc92b0
|
sha256: b5e4c36d60eda7613f36cfee3489c6f507156829c707e1ecd7f48ca45b435322
|
||||||
x-checker-data:
|
x-checker-data:
|
||||||
type: anitya
|
type: anitya
|
||||||
stable-only: true
|
stable-only: true
|
||||||
|
@ -357,7 +344,6 @@ modules:
|
||||||
# ES-DE - START
|
# ES-DE - START
|
||||||
# https://gitlab.com/es-de/emulationstation-de
|
# https://gitlab.com/es-de/emulationstation-de
|
||||||
|
|
||||||
#This is disabled because we added the extension (line 11), check if the videos are ok.
|
|
||||||
- name: ffmpeg
|
- name: ffmpeg
|
||||||
config-opts:
|
config-opts:
|
||||||
- --disable-static
|
- --disable-static
|
||||||
|
@ -692,8 +678,8 @@ modules:
|
||||||
- ln -s "${FLATPAK_DEST}/pcsx2-qt/usr/bin/pcsx2-qt" "${FLATPAK_DEST}/bin/pcsx2-qt"
|
- ln -s "${FLATPAK_DEST}/pcsx2-qt/usr/bin/pcsx2-qt" "${FLATPAK_DEST}/bin/pcsx2-qt"
|
||||||
sources:
|
sources:
|
||||||
- type: file
|
- type: file
|
||||||
url: https://github.com/PCSX2/pcsx2/releases/download/v1.7.5645/pcsx2-v1.7.5645-linux-appimage-x64-Qt.AppImage
|
url: https://github.com/PCSX2/pcsx2/releases/download/v1.7.5769/pcsx2-v1.7.5769-linux-appimage-x64-Qt.AppImage
|
||||||
sha256: dcd11469a91d8daa57fe46719a968e73ed282d81925879aca9393527f8b695fd
|
sha256: d819a339b9f3c43ee44fe9b6d975b9f76cff7716b5976a3b94f77e2cf4cab667
|
||||||
|
|
||||||
# PCSX2 - END
|
# PCSX2 - END
|
||||||
|
|
||||||
|
@ -1002,8 +988,8 @@ modules:
|
||||||
- /lib/cmake
|
- /lib/cmake
|
||||||
sources:
|
sources:
|
||||||
- type: archive
|
- type: archive
|
||||||
url: https://boostorg.jfrog.io/artifactory/main/release/1.84.0/source/boost_1_84_0.tar.bz2
|
url: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/boost_1_85_0.tar.bz2
|
||||||
sha256: cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454
|
sha256: 7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617
|
||||||
x-checker-data:
|
x-checker-data:
|
||||||
type: anitya
|
type: anitya
|
||||||
project-id: 6845
|
project-id: 6845
|
||||||
|
@ -1080,8 +1066,8 @@ modules:
|
||||||
x-checker-data:
|
x-checker-data:
|
||||||
type: git
|
type: git
|
||||||
tag-pattern: ^v([\d.]+-\d+)$
|
tag-pattern: ^v([\d.]+-\d+)$
|
||||||
tag: v2.0-73
|
tag: v2.0-79
|
||||||
commit: 241915e1a6bfd92e4ffd0d6961a178335300e83f
|
commit: efbbb817fe1cbe09ee132344b44a0f61f8b8ac96
|
||||||
- type: shell
|
- type: shell
|
||||||
commands:
|
commands:
|
||||||
- sed "s/set(EXPERIMENTAL_VERSION.*/set(EXPERIMENTAL_VERSION \"$(git describe
|
- sed "s/set(EXPERIMENTAL_VERSION.*/set(EXPERIMENTAL_VERSION \"$(git describe
|
||||||
|
@ -1234,8 +1220,8 @@ modules:
|
||||||
ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx.sh
|
ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx.sh
|
||||||
sources:
|
sources:
|
||||||
- type: file
|
- type: file
|
||||||
url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1247/ryujinx-1.1.1247-linux_x64.tar.gz
|
url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1297/ryujinx-1.1.1297-linux_x64.tar.gz
|
||||||
sha256: c929a17b3fe819b155b1126ae5d255e71c986c0be257c92fbbae967e5070e51a
|
sha256: 28b38754e7d2e92083b313b23278c180ae54ac025edbbd0276ec03baec0cec0f
|
||||||
|
|
||||||
# Ryujinx Appimage - END
|
# Ryujinx Appimage - END
|
||||||
|
|
||||||
|
|
|
@ -145,7 +145,7 @@ jobs:
|
||||||
## Commits since last release
|
## Commits since last release
|
||||||
${{ steps.commits.outputs.commits }}
|
${{ steps.commits.outputs.commits }}
|
||||||
|
|
||||||
For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/qQcrFvaA2C) on our Discord server.
|
For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/WDc5C9YWMx) on our Discord server.
|
||||||
|
|
||||||
Cooker channel is provided for the community to test fixes and explore new functionality.
|
Cooker channel is provided for the community to test fixes and explore new functionality.
|
||||||
Please DO NOT open issues or ask support on this build.
|
Please DO NOT open issues or ask support on this build.
|
||||||
|
@ -164,3 +164,47 @@ jobs:
|
||||||
name: retrodeck-flatpak
|
name: retrodeck-flatpak
|
||||||
path: RetroDECK-cooker.flatpak
|
path: RetroDECK-cooker.flatpak
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
|
|
||||||
|
# - name: Upload RetroDECK-cooker.flatpak to Gitea Release
|
||||||
|
# run: |
|
||||||
|
# # Set variables for Gitea host, organization, repository, access token, and release details
|
||||||
|
# GITEA_HOST="repo.retrodeck.net"
|
||||||
|
# ORGANIZATION="RetroDECK"
|
||||||
|
# REPO="RetroDECK-cooker"
|
||||||
|
# GITEA_TOKEN="${{ secrets.GITEA_TRIGGER_BUILD_TOKEN }}"
|
||||||
|
# RELEASE_NAME="RetroDECK ${{env.TAG}}"
|
||||||
|
# TAG="${{env.TAG}}"
|
||||||
|
# RELEASE_BODY="# Release Notes (Cooker)
|
||||||
|
# This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}.
|
||||||
|
# On branch [${{env.BRANCH_NAME}}](https://repo.retrodeck.net/RetroDECK/RetroDECK/src/branch/${{env.BRANCH_NAME}}).
|
||||||
|
|
||||||
|
# ## Commits since last release
|
||||||
|
# ${{ steps.commits.outputs.commits }}
|
||||||
|
|
||||||
|
# For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/WDc5C9YWMx) on our Discord server.
|
||||||
|
|
||||||
|
# Cooker channel is provided for the community to test fixes and explore new functionality.
|
||||||
|
# Please DO NOT open issues or ask support on this build."
|
||||||
|
|
||||||
|
# # Create a release using curl and capture the release ID
|
||||||
|
# release_response=$(curl -X POST \
|
||||||
|
# -H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
|
# -H "Content-Type: application/json" \
|
||||||
|
# -d "{\"tag_name\":\"$TAG\",\"name\":\"$RELEASE_NAME\",\"body\":\"$RELEASE_BODY\"}" \
|
||||||
|
# "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases")
|
||||||
|
|
||||||
|
# # Extract the release ID from the response
|
||||||
|
# release_id=$(echo $release_response | jq -r '.id')
|
||||||
|
|
||||||
|
# # Upload artifacts
|
||||||
|
# curl -X POST \
|
||||||
|
# -H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
|
# -H "Content-Type: multipart/form-data" \
|
||||||
|
# -F "attachment=@RetroDECK-cooker.flatpak" \
|
||||||
|
# "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-cooker.flatpak"
|
||||||
|
|
||||||
|
# curl -X POST \
|
||||||
|
# -H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
|
# -H "Content-Type: multipart/form-data" \
|
||||||
|
# -F "attachment=@RetroDECK-Artifact.tar.gz" \
|
||||||
|
# "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-Artifact.tar.gz"
|
219
old/disabled-workflows/cooker-selfhosted.yml
Normal file
219
old/disabled-workflows/cooker-selfhosted.yml
Normal file
|
@ -0,0 +1,219 @@
|
||||||
|
name: "Build cooker"
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- cooker*
|
||||||
|
- feat*
|
||||||
|
paths:
|
||||||
|
- '.github/workflows/**'
|
||||||
|
- 'automation_tools/**'
|
||||||
|
- 'emu-configs/**'
|
||||||
|
- 'es-configs/**'
|
||||||
|
- 'functions/**'
|
||||||
|
- 'rd-submodules/**'
|
||||||
|
- '*.sh'
|
||||||
|
- 'net.retrodeck.retrodeck.yml'
|
||||||
|
- 'net.retrodeck.retrodeck.appdata.xml'
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- cooker*
|
||||||
|
|
||||||
|
# Italy (CET): 11:00 PM
|
||||||
|
# Japan (JST): 7:00 AM
|
||||||
|
# schedule:
|
||||||
|
# - cron: '0 22 * * *'
|
||||||
|
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
|
||||||
|
Building_RetroDECK:
|
||||||
|
runs-on: self-hosted
|
||||||
|
steps:
|
||||||
|
|
||||||
|
# Circumventing this bug: https://github.com/flatpak/flatpak-builder/issues/317
|
||||||
|
- name: Remove stuck mounts
|
||||||
|
run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
|
- name: Clone RetroDECK repo
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
submodules: 'true'
|
||||||
|
|
||||||
|
- name: "Install dependencies"
|
||||||
|
run: "automation_tools/install_dependencies.sh"
|
||||||
|
|
||||||
|
- name: Generate cooker build ID
|
||||||
|
run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/cooker_build_id.sh"
|
||||||
|
|
||||||
|
- name: Get branch name
|
||||||
|
id: branch_name
|
||||||
|
run: echo "BRANCH_NAME=$(echo $GITHUB_REF | sed 's|refs/heads/||')" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
# if it's a feature branch it will not marked as "latest" cooker version
|
||||||
|
- name: "Set makeLatest (cooker only)"
|
||||||
|
run: |
|
||||||
|
if [[ "$BRANCH_NAME" == 'feat/'* || "$BRANCH_NAME" == 'refs/'* ]]; then
|
||||||
|
echo "MAKE_LATEST=false" >> $GITHUB_ENV
|
||||||
|
else
|
||||||
|
echo "MAKE_LATEST=true" >> $GITHUB_ENV
|
||||||
|
fi
|
||||||
|
|
||||||
|
# if the branch is coming from a PR the tag should be manually built
|
||||||
|
- name: "Generate version tag"
|
||||||
|
run: |
|
||||||
|
if [[ "$BRANCH_NAME" == 'refs/'* ]]; then
|
||||||
|
pr_number=$(echo ${{env.BRANCH_NAME}} | awk -F'/' '{print $3}')
|
||||||
|
source_branch=$(curl -s "https://api.github.com/repos/XargonWan/RetroDECK/pulls/$pr_number" | jq -r '.head.ref')
|
||||||
|
source_branch=${source_branch//\//-}
|
||||||
|
echo "[DEBUG] source branch is: $source_branch"
|
||||||
|
echo "TAG=PR-$pr_number-$source_branch-${{ env.buildid }}" >> $GITHUB_ENV
|
||||||
|
else
|
||||||
|
echo "TAG=${{env.BRANCH_NAME}}-${{ env.buildid }}" >> $GITHUB_ENV
|
||||||
|
fi
|
||||||
|
echo "Version TAG: ${{ env.TAG }}"
|
||||||
|
|
||||||
|
# backing up manifest in case download fails and hashes must be recalculated
|
||||||
|
- name: Manifest backup
|
||||||
|
run: "cp ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak"
|
||||||
|
|
||||||
|
- name: Run pre-build automation tasks
|
||||||
|
run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
|
||||||
|
|
||||||
|
- name: "Adding flatpak portal for automated updates (cooker only)"
|
||||||
|
run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/cooker_flatpak_portal_add.sh"
|
||||||
|
|
||||||
|
- name: "Updating release notes in appdata"
|
||||||
|
run: "automation_tools/appdata_management.sh"
|
||||||
|
|
||||||
|
- name: "[DEBUG] Outputting manifest"
|
||||||
|
run: cat net.retrodeck.retrodeck.yml
|
||||||
|
|
||||||
|
- name: "Build flatpak: download only"
|
||||||
|
id: "flatpak-download"
|
||||||
|
run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh"
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
|
# Sometimes flatpak download fails, in this case it tries a second time
|
||||||
|
- name: "Build flatpak: download only (retry)"
|
||||||
|
if: steps.flatpak-download.outcome == 'failure'
|
||||||
|
run: |
|
||||||
|
echo "Download failed, maybe some hash changed since the build start."
|
||||||
|
echo "Recalculating hashes and retrying download..."
|
||||||
|
rm -f "{GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml"
|
||||||
|
cp "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml"
|
||||||
|
"${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
|
||||||
|
"${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh"
|
||||||
|
|
||||||
|
- name: Build flatpak
|
||||||
|
run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only.sh"
|
||||||
|
|
||||||
|
- name: Create Artifact for flathub
|
||||||
|
run: |
|
||||||
|
tar -czf ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.tar.gz -C ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker .
|
||||||
|
hash=($(sha256sum ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.tar.gz))
|
||||||
|
echo $hash > ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.sha
|
||||||
|
mv -f RetroDECK-Artifact-cooker.* ${{ secrets.ARTIFACT_REPO }}
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
|
- name: Create Bundle
|
||||||
|
run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_bundle.sh"
|
||||||
|
|
||||||
|
- name: Set environment variable with current branch name
|
||||||
|
run: echo "GITHUB_REF_SLUG=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Get commits since last release
|
||||||
|
run: |
|
||||||
|
# Get the latest release tag
|
||||||
|
LATEST_TAG=$(git describe --tags --abbrev=0)
|
||||||
|
# Get all commits since the latest release tag
|
||||||
|
COMMITS=$(git log $LATEST_TAG..HEAD --pretty=format:"- %s")
|
||||||
|
# Set the output variable
|
||||||
|
echo "::set-output name=commits::$COMMITS"
|
||||||
|
id: commits
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
|
- name: Publish the flatpak in a new cooker release
|
||||||
|
uses: ncipollo/release-action@v1
|
||||||
|
with:
|
||||||
|
tag: "${{env.TAG}}"
|
||||||
|
body: |
|
||||||
|
# Release Notes (Cooker)
|
||||||
|
This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}.
|
||||||
|
On branch [${{env.BRANCH_NAME}}](https://github.com/XargonWan/RetroDECK/tree/${{env.BRANCH_NAME}}).
|
||||||
|
|
||||||
|
## Commits since last release
|
||||||
|
${{ steps.commits.outputs.commits }}
|
||||||
|
|
||||||
|
For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/WDc5C9YWMx) on our Discord server.
|
||||||
|
|
||||||
|
Cooker channel is provided for the community to test fixes and explore new functionality.
|
||||||
|
Please DO NOT open issues or ask support on this build.
|
||||||
|
|
||||||
|
artifacts: "RetroDECK-cooker.flatpak,RetroDECK-cooker.flatpak.sha,RetroDECK-Artifact.tar.gz"
|
||||||
|
allowUpdates: true
|
||||||
|
makeLatest: ${{env.MAKE_LATEST}} # if it's a feat branch is not considered the latest build
|
||||||
|
token: ${{ secrets.TRIGGER_BUILD_TOKEN }}
|
||||||
|
repo: RetroDECK-cooker
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
|
# In case it cannot publish the release at least it's providing the flatpak file for creating a manual release
|
||||||
|
- name: Upload RetroDECK-cooker.flatpak
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: retrodeck-flatpak
|
||||||
|
path: RetroDECK-cooker.flatpak
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
|
# - name: Upload RetroDECK-cooker.flatpak to Gitea Release
|
||||||
|
# run: |
|
||||||
|
# # Set variables for Gitea host, organization, repository, access token, and release details
|
||||||
|
# GITEA_HOST="repo.retrodeck.net"
|
||||||
|
# ORGANIZATION="RetroDECK"
|
||||||
|
# REPO="RetroDECK-cooker"
|
||||||
|
# GITEA_TOKEN="${{ secrets.GITEA_TRIGGER_BUILD_TOKEN }}"
|
||||||
|
# RELEASE_NAME="RetroDECK ${{env.TAG}}"
|
||||||
|
# TAG="${{env.TAG}}"
|
||||||
|
# RELEASE_BODY="# Release Notes (Cooker)
|
||||||
|
# This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}.
|
||||||
|
# On branch [${{env.BRANCH_NAME}}](https://repo.retrodeck.net/RetroDECK/RetroDECK/src/branch/${{env.BRANCH_NAME}}).
|
||||||
|
|
||||||
|
# ## Commits since last release
|
||||||
|
# ${{ steps.commits.outputs.commits }}
|
||||||
|
|
||||||
|
# For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/WDc5C9YWMx) on our Discord server.
|
||||||
|
|
||||||
|
# Cooker channel is provided for the community to test fixes and explore new functionality.
|
||||||
|
# Please DO NOT open issues or ask support on this build."
|
||||||
|
|
||||||
|
# # Create a release using curl and capture the release ID
|
||||||
|
# release_response=$(curl -X POST \
|
||||||
|
# -H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
|
# -H "Content-Type: application/json" \
|
||||||
|
# -d "{\"tag_name\":\"$TAG\",\"name\":\"$RELEASE_NAME\",\"body\":\"$RELEASE_BODY\"}" \
|
||||||
|
# "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases")
|
||||||
|
|
||||||
|
# # Extract the release ID from the response
|
||||||
|
# release_id=$(echo $release_response | jq -r '.id')
|
||||||
|
|
||||||
|
# # Upload artifacts
|
||||||
|
# curl -X POST \
|
||||||
|
# -H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
|
# -H "Content-Type: multipart/form-data" \
|
||||||
|
# -F "attachment=@RetroDECK-cooker.flatpak" \
|
||||||
|
# "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-cooker.flatpak"
|
||||||
|
|
||||||
|
# # Upload artifacts sha
|
||||||
|
# curl -X POST \
|
||||||
|
# -H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
|
# -H "Content-Type: multipart/form-data" \
|
||||||
|
# -F "attachment=@RetroDECK-cooker.flatpak.sha" \
|
||||||
|
# "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-cooker.flatpak.sha"
|
||||||
|
|
||||||
|
# curl -X POST \
|
||||||
|
# -H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
|
# -H "Content-Type: multipart/form-data" \
|
||||||
|
# -F "attachment=@RetroDECK-Artifact.tar.gz" \
|
||||||
|
# "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-Artifact.tar.gz"
|
27
other_licenses.txt
Normal file
27
other_licenses.txt
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
All Licenses of the projects we are using are listed on the wiki:
|
||||||
|
https://retrodeck.readthedocs.io/en/latest/wiki_about/donations-licenses/
|
||||||
|
|
||||||
|
If we have made some linkage errors or your license needs to be included in the projects github page please contact the RetroDECK Team on Discord or Matrix.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Freedoom
|
||||||
|
https://github.com/freedoom/freedoom?tab=License-1-ov-file#readme
|
||||||
|
|
||||||
|
Copyright © 2001-2024 Contributors to the Freedoom project. All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
||||||
|
|
||||||
|
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
||||||
|
|
||||||
|
Neither the name of the Freedoom project nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
For a list of contributors to the Freedoom project, see the file CREDITS.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,7 @@ Arguments:
|
||||||
--info-msg Print paths and config informations
|
--info-msg Print paths and config informations
|
||||||
--configurator Starts the RetroDECK Configurator
|
--configurator Starts the RetroDECK Configurator
|
||||||
--compress-one <file> Compresses target file to a compatible format
|
--compress-one <file> Compresses target file to a compatible format
|
||||||
--compress-all <format> Compresses all supported games into compatible format. Available formats are \"chd\", \"zip\", \"rvz\" and \"all\".
|
--compress-all <format> Compresses all supported games into a compatible format. Available formats are \"chd\", \"zip\", \"rvz\" and \"all\".
|
||||||
--reset-component <component> Reset one or more component or emulator configs to the default values
|
--reset-component <component> Reset one or more component or emulator configs to the default values
|
||||||
--reset-retrodeck Starts the initial RetroDECK installer (backup your data first!)
|
--reset-retrodeck Starts the initial RetroDECK installer (backup your data first!)
|
||||||
|
|
||||||
|
@ -58,6 +58,7 @@ https://retrodeck.net
|
||||||
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, dolphin, duckstation, gzdoom, melonds, pcsx3, pico8, ppsspp, primehack, rpcs3, ryujinx, xemu, vita3k, mame, boilr, all"
|
echo "Available options are: es-de, retroarch, cemu, dolphin, duckstation, gzdoom, melonds, pcsx3, pico8, ppsspp, primehack, rpcs3, ryujinx, xemu, vita3k, mame, 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
|
||||||
|
component=$(echo "$component" | tr '[:upper:]' '[:lower:]')
|
||||||
if [[ "$component" =~ ^(es-de|retroarch|cemu|dolphin|duckstation|gzdoom|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
|
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
|
||||||
|
@ -182,12 +183,6 @@ if [[ $update_check == "true" ]]; then
|
||||||
log i "You're running the latest version"
|
log i "You're running the latest version"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# THIS IS A ONE-OFF FORCED REFRESH OF RETRODECK CONTROLLER PROFILES IN A 0.7.6b VERSION REFRESH - REMOVE BEFORE NEXT VERSION RELEASE
|
|
||||||
if [[ -f "$HOME/.steam/steam/controller_base/templates/RetroDECK_controller_config.vdf" ]]; then # If RetroDECK controller profile has been previously installed
|
|
||||||
install_retrodeck_controller_profile
|
|
||||||
fi
|
|
||||||
# REMOVE BEFORE NEXT VERSION RELEASE
|
|
||||||
|
|
||||||
# Normal Startup
|
# Normal Startup
|
||||||
|
|
||||||
if [[ $steam_sync == "true" ]]; then
|
if [[ $steam_sync == "true" ]]; then
|
||||||
|
|
|
@ -107,12 +107,12 @@ source /app/libexec/global.sh
|
||||||
configurator_welcome_dialog() {
|
configurator_welcome_dialog() {
|
||||||
log i "Configurator: opening welcome dialog"
|
log i "Configurator: opening welcome dialog"
|
||||||
if [[ $developer_options == "true" ]]; then
|
if [[ $developer_options == "true" ]]; then
|
||||||
welcome_menu_options=("Presets & Settings" "Here you find various presets, tweaks and settings to customize your RetroDECK experience" \
|
welcome_menu_options=("Presets & Settings" "Here you will find various presets, tweaks and settings to customize your RetroDECK experience" \
|
||||||
"Open Emulator" "Launch and configure each emulators settings (for advanced users)" \
|
"Open Emulator" "Launch and configure each emulator's settings (for advanced users)" \
|
||||||
"RetroDECK: Tools" "Compress games, move RetroDECK and install optional features" \
|
"RetroDECK: Tools" "Compress games, move RetroDECK and install optional features" \
|
||||||
"RetroDECK: Troubleshooting" "Backup data, perform BIOS / multi-disc file checks checks and emulator resets" \
|
"RetroDECK: Troubleshooting" "Backup data, perform BIOS / multi-disc file checks and emulator resets" \
|
||||||
"RetroDECK: About" "Show additional information about RetroDECK" \
|
"RetroDECK: About" "Show additional information about RetroDECK" \
|
||||||
"Sync with Steam" "Sync with Steam all the favorites games" \
|
"Sync with Steam" "Sync all favorited games with Steam" \
|
||||||
"Developer Options" "Welcome to the DANGER ZONE")
|
"Developer Options" "Welcome to the DANGER ZONE")
|
||||||
else
|
else
|
||||||
welcome_menu_options=("Presets & Settings" "Here you find various presets, tweaks and settings to customize your RetroDECK experience" \
|
welcome_menu_options=("Presets & Settings" "Here you find various presets, tweaks and settings to customize your RetroDECK experience" \
|
||||||
|
@ -211,7 +211,7 @@ configurator_global_presets_and_settings_dialog() {
|
||||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \
|
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \
|
||||||
--column="Choice" --column="Action" \
|
--column="Choice" --column="Action" \
|
||||||
"Widescreen: Enable/Disable" "Enable or disable widescreen in supported systems" \
|
"Widescreen: Enable/Disable" "Enable or disable widescreen in supported systems" \
|
||||||
"Ask-to-Exit: Enable/Disable" "Enable or disable emulators confirming when quitting in supported systems" \
|
"Ask-to-Exit: Enable/Disable" "Enable or disable emulators confirming attempts to quit in supported systems" \
|
||||||
"Quick Resume: Enable/Disable" "Enable or disable save state auto-save/load in supported systems" \
|
"Quick Resume: Enable/Disable" "Enable or disable save state auto-save/load in supported systems" \
|
||||||
"RetroAchievements: Login" "Log into the RetroAchievements service in supported systems" \
|
"RetroAchievements: Login" "Log into the RetroAchievements service in supported systems" \
|
||||||
"RetroAchievements: Logout" "Disable RetroAchievements service in ALL supported systems" \
|
"RetroAchievements: Logout" "Disable RetroAchievements service in ALL supported systems" \
|
||||||
|
@ -343,7 +343,7 @@ configurator_dolphin_input_textures_dialog() {
|
||||||
zenity --question \
|
zenity --question \
|
||||||
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Configurator - Dolphin Textures: Universal Dynamic Input" \
|
--title "RetroDECK Configurator - Dolphin Textures: Universal Dynamic Input" \
|
||||||
--text="Custom input textures are currently enabled. Do you want to disable them?."
|
--text="Custom input textures are currently enabled. Do you want to disable them?"
|
||||||
|
|
||||||
if [ $? == 0 ]
|
if [ $? == 0 ]
|
||||||
then
|
then
|
||||||
|
@ -357,7 +357,7 @@ configurator_dolphin_input_textures_dialog() {
|
||||||
zenity --question \
|
zenity --question \
|
||||||
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Configurator - Dolphin Textures: Universal Dynamic Input" \
|
--title "RetroDECK Configurator - Dolphin Textures: Universal Dynamic Input" \
|
||||||
--text="Custom input textures are currently disabled. Do you want to enable them?.\n\nThis process may take several minutes to complete."
|
--text="Custom input textures are currently disabled. Do you want to enable them?\n\nThis process may take several minutes to complete."
|
||||||
|
|
||||||
if [ $? == 0 ]
|
if [ $? == 0 ]
|
||||||
then
|
then
|
||||||
|
@ -381,7 +381,7 @@ configurator_primehack_input_textures_dialog() {
|
||||||
zenity --question \
|
zenity --question \
|
||||||
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Configurator - Dolphin Custom Input Textures" \
|
--title "RetroDECK Configurator - Dolphin Custom Input Textures" \
|
||||||
--text="Custom input textures are currently enabled. Do you want to disable them?."
|
--text="Custom input textures are currently enabled. Do you want to disable them?"
|
||||||
|
|
||||||
if [ $? == 0 ]
|
if [ $? == 0 ]
|
||||||
then
|
then
|
||||||
|
@ -395,7 +395,7 @@ configurator_primehack_input_textures_dialog() {
|
||||||
zenity --question \
|
zenity --question \
|
||||||
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Configurator - Primehack Custom Input Textures" \
|
--title "RetroDECK Configurator - Primehack Custom Input Textures" \
|
||||||
--text="Custom input textures are currently disabled. Do you want to enable them?.\n\nThis process may take several minutes to complete."
|
--text="Custom input textures are currently disabled. Do you want to enable them?\n\nThis process may take several minutes to complete."
|
||||||
|
|
||||||
if [ $? == 0 ]
|
if [ $? == 0 ]
|
||||||
then
|
then
|
||||||
|
@ -419,7 +419,7 @@ configurator_power_user_warning_dialog() {
|
||||||
choice=$(zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="Yes" --extra-button="No" --extra-button="Never show this again" \
|
choice=$(zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="Yes" --extra-button="No" --extra-button="Never show this again" \
|
||||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Power User Warning" \
|
--title "RetroDECK Power User Warning" \
|
||||||
--text="Making manual changes to an emulators configuration may create serious issues,\nand some settings may be overwitten during RetroDECK updates or when using presets.\n\nSome standalone emulator functions may not work properly outside of Desktop mode.\n\nPlease continue only if you know what you're doing.\n\nDo you want to continue?")
|
--text="Making manual changes to an emulator's configuration may create serious issues,\nand some settings may be overwitten during RetroDECK updates or when using presets.\n\nSome standalone emulator functions may not work properly outside of Desktop mode.\n\nPlease continue only if you know what you're doing.\n\nDo you want to continue?")
|
||||||
fi
|
fi
|
||||||
rc=$? # Capture return code, as "Yes" button has no text value
|
rc=$? # Capture return code, as "Yes" button has no text value
|
||||||
if [[ $rc == "0" ]]; then # If user clicked "Yes"
|
if [[ $rc == "0" ]]; then # If user clicked "Yes"
|
||||||
|
@ -608,12 +608,13 @@ configurator_retrodeck_tools_dialog() {
|
||||||
(
|
(
|
||||||
update_rpcs3_firmware
|
update_rpcs3_firmware
|
||||||
) |
|
) |
|
||||||
zenity --progress --pulsate \
|
zenity --progress --no-cancel --pulsate --auto-close \
|
||||||
--icon-name=net.retrodeck.retrodeck \
|
--icon-name=net.retrodeck.retrodeck \
|
||||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title="Downloading PS3 Firmware" \
|
--title="Downloading PS3 Firmware" \
|
||||||
--no-cancel \
|
--width=400 --height=200 \
|
||||||
--auto-close
|
--text="Dowloading and installing PS3 Firmware, please be patient.\n\n<span foreground='$purple' size='larger'><b>NOTICE - If the process is taking too long:</b></span>\n\nSome windows might be running in the background that could require your attention: pop-ups from emulators or the upgrade itself that needs user input to continue.\n\n"
|
||||||
|
|
||||||
else
|
else
|
||||||
configurator_generic_dialog "RetroDECK Configurator - Install: PS3 Firmware" "You do not appear to currently have Internet access, which is required by this tool. Please try again when network access has been restored."
|
configurator_generic_dialog "RetroDECK Configurator - Install: PS3 Firmware" "You do not appear to currently have Internet access, which is required by this tool. Please try again when network access has been restored."
|
||||||
configurator_retrodeck_tools_dialog
|
configurator_retrodeck_tools_dialog
|
||||||
|
@ -823,7 +824,7 @@ configurator_compress_single_game_dialog() {
|
||||||
configurator_compression_tool_dialog
|
configurator_compression_tool_dialog
|
||||||
|
|
||||||
else
|
else
|
||||||
configurator_generic_dialog "RetroDECK Configurator - RetroDECK: Compression Tool" "The selected file does not have any compatible compressed format."
|
configurator_generic_dialog "RetroDECK Configurator - RetroDECK: Compression Tool" "The selected file does not have any compatible compression formats."
|
||||||
configurator_compression_tool_dialog
|
configurator_compression_tool_dialog
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
|
@ -1053,7 +1054,7 @@ configurator_retrodeck_troubleshooting_dialog() {
|
||||||
}
|
}
|
||||||
|
|
||||||
configurator_check_bios_files() {
|
configurator_check_bios_files() {
|
||||||
configurator_generic_dialog "RetroDECK Configurator - Check & Verify: BIOS Files" "This check will look for BIOS files that RetroDECK has identified as working.\n\nNot all BIOS files are required for games to work, please check the BIOS description for more information on its purpose.\n\nThere may be additional BIOS files that will function with the emulators that are not checked.\n\nSome more advanced emulators such as Ryujinx will have additional methods for verifiying the BIOS files are in working order."
|
configurator_generic_dialog "RetroDECK Configurator - Check & Verify: BIOS Files" "This check will look for BIOS files that RetroDECK has identified as working.\n\nNot all BIOS files are required for games to work, please check the BIOS description for more information on its purpose.\n\nBIOS files not known to this tool could still function.\n\nSome more advanced emulators such as Ryujinx will have additional methods to verify that the BIOS files are in working order."
|
||||||
bios_checked_list=()
|
bios_checked_list=()
|
||||||
|
|
||||||
check_bios_files "basic"
|
check_bios_files "basic"
|
||||||
|
@ -1071,7 +1072,7 @@ configurator_check_bios_files() {
|
||||||
}
|
}
|
||||||
|
|
||||||
configurator_check_bios_files_expert_mode() {
|
configurator_check_bios_files_expert_mode() {
|
||||||
configurator_generic_dialog "RetroDECK Configurator - Check & Verify: BIOS Files - Expert Mode" "This check will look for BIOS files that RetroDECK has identified as working.\n\nNot all BIOS files are required for games to work, please check the BIOS description for more information on its purpose.\n\nThere may be additional BIOS files that will function with the emulators that are not checked.\n\nSome more advanced emulators such as Ryujinx will have additional methods for verifiying the BIOS files are in working order."
|
configurator_generic_dialog "RetroDECK Configurator - Check & Verify: BIOS Files - Expert Mode" "This check will look for BIOS files that RetroDECK has identified as working.\n\nNot all BIOS files are required for games to work, please check the BIOS description for more information on its purpose.\n\nBIOS files not known to this tool could still function.\n\nSome more advanced emulators such as Ryujinx will have additional methods to verify that the BIOS files are in working order."
|
||||||
bios_checked_list=()
|
bios_checked_list=()
|
||||||
|
|
||||||
check_bios_files "expert"
|
check_bios_files "expert"
|
||||||
|
@ -1192,7 +1193,7 @@ configurator_reset_dialog() {
|
||||||
component_to_reset=$(zenity --list \
|
component_to_reset=$(zenity --list \
|
||||||
--title "RetroDECK Configurator Utility - Reset Specific RetroDECK Component" --cancel-label="Back" \
|
--title "RetroDECK Configurator Utility - Reset Specific RetroDECK Component" --cancel-label="Back" \
|
||||||
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \
|
--window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \
|
||||||
--text="Which component do you want to reset to default?" \
|
--text="Which component do you want to reset to default settings?" \
|
||||||
--column="Component" --column="Action" \
|
--column="Component" --column="Action" \
|
||||||
"BoilR" "Reset BoilR that manages the sync and scraping toward Steam library" \
|
"BoilR" "Reset BoilR that manages the sync and scraping toward Steam library" \
|
||||||
"ES-DE" "Reset the ES-DE frontend" \ )
|
"ES-DE" "Reset the ES-DE frontend" \ )
|
||||||
|
@ -1298,7 +1299,7 @@ configurator_add_steam() {
|
||||||
zenity --question \
|
zenity --question \
|
||||||
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Configurator - RetroDECK Steam Syncronization" \
|
--title "RetroDECK Configurator - RetroDECK Steam Syncronization" \
|
||||||
--text="Steam syncronization is current enabled. Do you want to disable it?\n\nThe already added shortcut will not be removed.\n"
|
--text="Steam syncronization is currently enabled. Do you want to disable it?\n\nThe already added shortcut will not be removed.\n"
|
||||||
|
|
||||||
if [ $? == 0 ] # User clicked "Yes"
|
if [ $? == 0 ] # User clicked "Yes"
|
||||||
then
|
then
|
||||||
|
@ -1310,7 +1311,7 @@ configurator_add_steam() {
|
||||||
zenity --question \
|
zenity --question \
|
||||||
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Configurator - RetroDECK Steam Syncronization" \
|
--title "RetroDECK Configurator - RetroDECK Steam Syncronization" \
|
||||||
--text="Steam syncronization is current disabled. Do you want to enable it?\n\nAll the games marked as favorites will be syncronized with Steam thanks to BoilR.\nRemember to restart Steam each time to see the changes.\n"
|
--text="Steam syncronization is currently disabled. Do you want to enable it?\n\nAll the games marked as favorites will be syncronized with Steam thanks to BoilR.\nRemember to restart Steam each time to see the changes.\n"
|
||||||
|
|
||||||
if [ $? == 0 ]
|
if [ $? == 0 ]
|
||||||
then
|
then
|
||||||
|
@ -1421,7 +1422,7 @@ configurator_retrodeck_multiuser_dialog() {
|
||||||
zenity --question \
|
zenity --question \
|
||||||
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Configurator - RetroDECK Multi-user Support" \
|
--title "RetroDECK Configurator - RetroDECK Multi-user Support" \
|
||||||
--text="Multi-user support is current enabled. Do you want to disable it?\n\nIf there are more than one user configured,\nyou will be given a choice of which to use as the single RetroDECK user.\n\nThis users files will be moved to the default locations.\n\nOther users files will remain in the mutli-user-data folder.\n"
|
--text="Multi-user support is currently enabled. Do you want to disable it?\n\nIf there is more than one user configured,\nyou will be given a choice of which to use as the single RetroDECK user.\n\nThis user's files will be moved to the default locations.\n\nOther users' files will remain in the mutli-user-data folder.\n"
|
||||||
|
|
||||||
if [ $? == 0 ] # User clicked "Yes"
|
if [ $? == 0 ] # User clicked "Yes"
|
||||||
then
|
then
|
||||||
|
@ -1433,7 +1434,7 @@ configurator_retrodeck_multiuser_dialog() {
|
||||||
zenity --question \
|
zenity --question \
|
||||||
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
--no-wrap --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \
|
||||||
--title "RetroDECK Configurator - RetroDECK Multi-user support" \
|
--title "RetroDECK Configurator - RetroDECK Multi-user support" \
|
||||||
--text="Multi-user support is current disabled. Do you want to enable it?\n\nThe current users saves and states will be backed up and then moved to the \"retrodeck/multi-user-data\" folder.\nAdditional users will automatically be stored in their own folder here as they are added."
|
--text="Multi-user support is currently disabled. Do you want to enable it?\n\nThe current user's saves and states will be backed up and then moved to the \"retrodeck/multi-user-data\" folder.\nAdditional users will automatically be stored in their own folder here as they are added."
|
||||||
|
|
||||||
if [ $? == 0 ]
|
if [ $? == 0 ]
|
||||||
then
|
then
|
||||||
|
|
Loading…
Reference in a new issue