Merge branch 'branch/cooker-0.8.3b'

This commit is contained in:
XargonWan 2024-07-31 21:24:51 +09:00
commit 4dd2ad143e
6 changed files with 107 additions and 26 deletions

View file

@ -5,6 +5,7 @@ on:
branches:
- cooker*
- feat*
- branch/cooker*
paths:
- '.github/workflows/**'
- 'automation_tools/**'

View file

@ -307,7 +307,7 @@ update_vita3k_firmware() {
backup_retrodeck_userdata() {
create_dir "$backups_folder"
zip -rq9 "$backups_folder/$(date +"%0m%0d")_retrodeck_userdata.zip" "$saves_folder" "$states_folder" "$bios_folder" "$media_folder" "$themes_folder" "$logs_folder" "$screenshots_folder" "$mods_folder" "$texture_packs_folder" "$borders_folder" > $logs_folder/$(date +"%0m%0d")_backup_log.log
zip -rq9 "$backups_folder/$(date +"%0m%0d")_retrodeck_userdata.zip" "$saves_folder" "$states_folder" "$bios_folder" "$media_folder" "$themes_folder" "$rdhome/ES-DE/collections" "$rdhome/ES-DE/gamelists" "$logs_folder" "$screenshots_folder" "$mods_folder" "$texture_packs_folder" "$borders_folder" > $logs_folder/$(date +"%0m%0d")_backup_log.log
}
make_name_pretty() {

View file

@ -214,7 +214,7 @@ post_update() {
prepare_component "reset" "pico8"
configurator_generic_dialog "RetroDECK 0.7.0b Upgrade" "Would you like to install the official controller profile?\n(this will reset your custom emulator settings)\n\nAfter installation you can enable it from from Controller Settings -> Templates."
configurator_generic_dialog "RetroDECK 0.7.0b Upgrade" "Would you like to install the official controller profile?\n(this will reset your custom emulator settings)\n\nAfter installation you can enable it from from Controller Settings\t->\tTemplates."
if [[ $(configurator_generic_question_dialog "RetroDECK Official Controller Profile" "Would you like to install the official RetroDECK controller profile?") == "true" ]]; then
install_retrodeck_controller_profile
prepare_component "reset" "all"
@ -339,16 +339,68 @@ post_update() {
fi
if [[ $(check_version_is_older_than "0.8.2b") == "true" ]]; then
log i "Vita3K changed some paths, reflecting them: moving \"/var/data/Vita3K\" in \"/var/config/Vita3K\""
mv -f "/var/data/Vita3K" "/var/config/Vita3K"
log i "Moving ES-DE downloaded_media, gamelist, and themes from \"$rdhome\" to \"$rdhome/ES-DE\" due to a RetroDECK Framework bug"
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 "Since in this version we moved to a PR build of Ryujinx we need to symlink it."
ln -sv $ryujinxconf "$(dirname $ryujinxconf)/PRConfig.json"
log i "Vita3K changed some paths, reflecting them: moving \"/var/data/Vita3K\" in \"/var/config/Vita3K\""
move "/var/data/Vita3K" "/var/config/Vita3K"
log i "Moving ES-DE downloaded_media, gamelist, and themes from \"$rdhome\" to \"$rdhome/ES-DE\" due to a RetroDECK Framework bug"
move "$rdhome/themes" "$rdhome/ES-DE/themes" && log d "Move of \"$rdhome/themes\" completed"
move "$rdhome/downloaded_media" "$rdhome/ES-DE/downloaded_media" && log d "Move of \"$rdhome/downloaded_media\" completed"
move "$rdhome/gamelists" "$rdhome/ES-DE/gamelists" && log d "Move of \"$rdhome/gamelists/\" completed"
move "$rdhome/collections" "$rdhome/ES-DE/collections" && log d "Move of \"$rdhome/collections/\" completed"
log i "Since in this version we moved to a PR build of Ryujinx we need to symlink it."
ln -sv $ryujinxconf "$(dirname $ryujinxconf)/PRConfig.json"
fi
if [[ $(check_version_is_older_than "0.8.3b") == "true" ]]; then
# In version 0.8.3b, the following changes were made:
# - Recovery from a failed move of the themes, downloaded_media and gamelists folder to their new ES-DE locations.
# Check if any of the directories exist
if [ -d "$rdhome/themes" ] || [ -d "$rdhome/downloaded_media" ] || [ -d "$rdhome/gamelists" ] || [ -d "$rdhome/collections" ]; then
log i "Moving ES-DE downloaded_media, gamelist, and themes from \"$rdhome\" to \"$rdhome/ES-DE\" due to a RetroDECK Framework bug"
# Ask user if they want to move and overwrite the data
if [[ $(configurator_generic_question_dialog "Move Data" "In the previous version some users suffered a bug where ES-DE appeared empty (no scraped data or collections for example).\n\n<span foreground='$purple' size='larger'><b>Your data is not gone!</b></span>\n\nit's just in a different path.\n\nDo you want to recover your old data replacing the actual one?\nBy choosing no instead, the folder with be moved but no data will be replaced and it will be availalbe in the retrodeck folder.\n\nThe affected folders are:\n\nretrodeck/themes\t\t\t\t->\tretrodeck/ES-DE/themes\nretrodeck/downloaded_media\t->\tretrodeck/ES-DE/downloaded_media\nretrodeck/gamelists\t\t\t\t->\tretrodeck/ES-DE/gamelist\nretrodeck/collections\t\t\t->\tretrodeck/ES-DE/collections") == "true" ]]; then
move_cmd="mv -f" # Use mv with overwrite
log i "User chose to move and overwrite the data."
else
move_cmd="move" # Use existing move function
log i "User chose to move the data without overwriting."
fi
# Move each directory if it exists
if [[ -d "$rdhome/themes" ]]; then
$move_cmd "$rdhome/themes" "$rdhome/ES-DE/" && log d "Move of \"$rdhome/themes\" completed"
else
log i "ES-DE themes appears to already have been migrated."
fi
if [[ -d "$rdhome/downloaded_media" ]]; then
$move_cmd "$rdhome/downloaded_media" "$rdhome/ES-DE/" && log d "Move of \"$rdhome/downloaded_media\" completed"
else
log i "ES-DE downloaded media appears to already have been migrated."
fi
if [[ -d "$rdhome/gamelists" ]]; then
$move_cmd "$rdhome/gamelists" "$rdhome/ES-DE/" && log d "Move of \"$rdhome/gamelists/\" completed"
else
log i "ES-DE gamelists appears to already have been migrated."
fi
if [[ -d "$rdhome/collections" ]]; then
$move_cmd "$rdhome/collections" "$rdhome/ES-DE/" && log d "Move of \"$rdhome/collections/\" completed"
else
log i "ES-DE collections appears to already have been migrated."
fi
else
log i "ES-DE folders appears to already have been migrated."
fi
# Better to refresh the paths
set_setting_value "$es_settings" "ROMDirectory" "$roms_folder" "es_settings"
set_setting_value "$es_settings" "MediaDirectory" "$media_folder" "es_settings"
set_setting_value "$es_settings" "UserThemeDirectory" "$themes_folder" "es_settings"
fi
# if [[ $(check_version_is_older_than "0.9.0b") == "true" ]]; then
# # Placeholder for version 0.9.0b
# rm /var/config/emulationstation/.emulationstation # remving the old symlink to .emulationstation as it might be not needed anymore

View file

@ -26,7 +26,7 @@ prepare_component() {
declare -g "$current_setting_name=$rdhome/${current_setting_value#*retrodeck/}" #removes everything until "retrodeck" and adds the actual retrodeck folder
log d "Setting: $current_setting_name=$current_setting_value"
if [[ ! $current_setting_name == "logs_folder" ]]; then # Don't create a logs folder normally, we want to maintain the current files exactly to not lose early-install logs.
create_dir "$rdhome/$(basename $current_setting_value)"
create_dir "$rdhome/${current_setting_value#*retrodeck/}"
else # Log folder-specific actions
mv "$rd_logs_folder" "$logs_folder" # Move existing logs folder from internal to userland
ln -sf "$logs_folder" "$rd_logs_folder" # Link userland logs folder back to statically-written location
@ -42,8 +42,8 @@ prepare_component() {
local current_setting_name=$(get_setting_name "$config_line" "retrodeck")
if [[ ! $current_setting_name =~ (rdhome|sdcard) ]]; then # Ignore these locations
local current_setting_value=$(get_setting_value "$rd_conf" "$current_setting_name" "retrodeck" "paths")
if [[ -d "$rdhome/$(basename $current_setting_value)" ]]; then # If the folder exists at the new ~/retrodeck location
declare -g "$current_setting_name=$rdhome/$(basename $current_setting_value)"
if [[ -d "$rdhome/${current_setting_value#*retrodeck/}" ]]; then # If the folder exists at the new ~/retrodeck location
declare -g "$current_setting_name=$rdhome/${current_setting_value#*retrodeck/}"
fi
fi
done < <(grep -v '^\s*$' $rd_conf | awk '/^\[paths\]/{f=1;next} /^\[/{f=0} f')

View file

@ -67,6 +67,20 @@
<project_license>GPL-3.0</project_license>
<metadata_license>CC0-1.0</metadata_license>
<releases>
<release version="0.8.3b" date="2024-07-31">
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.8.3b</url>
<description>
<p>Bug fixes:</p>
<ul>
<li>FRAMEWORK: Fixed a bug where the ES-DE folders were not correctly migrated from retrodeck folder to retrodeck/ES-DE folder</li>
<li>RYUJINX: reverted it to an older version without the symlink bug</li>
</ul>
<p>Known issues:</p>
<ul>
<li>Please check the know issues in the Wiki under General Information</li>
</ul>
</description>
</release>
<release version="0.8.2b" date="2024-07-18">
<url>https://github.com/XargonWan/RetroDECK/releases/tag/0.8.2b</url>
<description>
@ -89,7 +103,8 @@
</ul>
<p>Known issues:</p>
<ul>
<li>Please check the know issues in the Wiki under General Information.</li>
<li>Ryujinx is broken in this version, we plan to fix it soon, check the known issues to learn more</li>
<li>Please check the know issues in the Wiki under General Information</li>
</ul>
</description>
</release>

View file

@ -78,7 +78,7 @@ modules:
# on main please update this with the version variable, eg: VERSION=0.8.0b
# on cooker will be THISBRANCH
VERSION=0.8.2b
VERSION=cooker-0.8.3b
git checkout ${GITHUB_REF_NAME}
mkdir -p ${FLATPAK_DEST}/retrodeck/
@ -1232,21 +1232,34 @@ modules:
# url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1343/ryujinx-1.1.1343-linux_x64.tar.gz
# sha256: 3cd2172d2f42a0fb93a83bffe6bd8fb2d1d81fb45afc80e0068a245c8f755ac1
- name: Ryujinx-with-symlink-fix
# - name: Ryujinx-with-symlink-fix
# buildsystem: simple
# build-commands:
# - |
# mkdir -p ${FLATPAK_DEST}/ryujinx
# mkdir -p ${FLATPAK_DEST}/bin
# chmod +x Ryujinx.sh
# chmod +x Ryujinx
# mv -v * ${FLATPAK_DEST}/ryujinx
# ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx.sh ${FLATPAK_DEST}/bin/Ryujinx.sh
# chmod +x ${FLATPAK_DEST}/bin/Ryujinx.sh
# sources:
# - type: archive
# url: https://gitlab.com/-/project/59825450/uploads/a512ffca03dea9a687a7c3048dc1fd00/ryujinx-Release-1.1.0+56c8844-linux_x64.zip
# sha256: 890f82146d6847efaf480d63867f439d58f28261e9070a4790f77eab9be16e6b
# This version was reported as working with symlinks: https://discord.com/channels/951662718102962256/951715885968654418/1264882000658169866
- name: Ryujinx-reported-working-version
buildsystem: simple
build-commands:
- |
mkdir -p ${FLATPAK_DEST}/ryujinx
mkdir -p ${FLATPAK_DEST}/bin
chmod +x Ryujinx.sh
chmod +x Ryujinx
mv -v * ${FLATPAK_DEST}/ryujinx
ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx.sh ${FLATPAK_DEST}/bin/Ryujinx.sh
chmod +x ${FLATPAK_DEST}/bin/Ryujinx.sh
tar -zxvf *.tar.gz
mv -v publish ${FLATPAK_DEST}/ryujinx
ln -sv ${FLATPAK_DEST}/ryujinx/Ryujinx ${FLATPAK_DEST}/bin/Ryujinx.sh
sources:
- type: archive
url: https://gitlab.com/-/project/59825450/uploads/8519a04d7a3f5b5949f14b6ad25a4185/ryujinx-Release-1.1.0+81fd228-linux_x64.zip
sha256: 9e4a4393a3dcc44fda2aec40c2842492e30656c7369a9959d865a3351f12eeb9
- type: file
url: https://github.com/Ryujinx/release-channel-master/releases/download/1.1.1297/ryujinx-1.1.1297-linux_x64.tar.gz
sha256: 28b38754e7d2e92083b313b23278c180ae54ac025edbbd0276ec03baec0cec0f
# Ryujinx Appimage - END