* new paths

* /

* EmuDeck/

* mv

* no &

* ESDE new location

* ESDE new path

* no symlink load

* bigpemu new path

* force move

* global vars

* oopsie

* missing $emudeckBackend

* better migration detection

* Keep Appimages in Applications

* Keep Appimages in Applications
This commit is contained in:
Dragoon Dorise 2025-01-02 13:42:31 +01:00 committed by GitHub
parent 5719097f7c
commit 00a8f1c19c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
162 changed files with 2294 additions and 2537 deletions

View File

@ -64,5 +64,5 @@ body:
id: logs id: logs
attributes: attributes:
label: Relevant log output label: Relevant log output
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks. You can find the EmuDeck log in $HOME/emudeck. For more information, see https://emudeck.github.io/troubleshooting/steamos/#how-to-get-the-emudeck-log. description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks. You can find the EmuDeck log in $HOME/.config/EmuDeck. For more information, see https://emudeck.github.io/troubleshooting/steamos/#how-to-get-the-emudeck-log.
render: shell render: shell

View File

@ -10,7 +10,7 @@ function Android_Dolphin_install(){
function Android_Dolphin_init(){ function Android_Dolphin_init(){
setMSG "Setting up Dolphin" setMSG "Setting up Dolphin"
rsync -ra "$HOME/.config/EmuDeck/backend/android/configs/mmjr2-vbi/" "$Android_temp_internal/mmjr2-vbi/" rsync -ra "$emudeckBackend/android/configs/mmjr2-vbi/" "$Android_temp_internal/mmjr2-vbi/"
originFile="$Android_temp_internal/mmjr2-vbi/Config/Dolphin.ini" originFile="$Android_temp_internal/mmjr2-vbi/Config/Dolphin.ini"
origin="XXXX" origin="XXXX"

View File

@ -9,7 +9,7 @@ function Android_Lime3DS_install(){
function Android_Lime3DS_init(){ function Android_Lime3DS_init(){
setMSG "Setting up Citra" setMSG "Setting up Citra"
rsync -ra "$HOME/.config/EmuDeck/backend/android/configs/citra-emu/" "$Android_temp_internal/citra-emu/" rsync -ra "$emudeckBackend/android/configs/citra-emu/" "$Android_temp_internal/citra-emu/"
} }
function Android_Lime3DS_setup(){ function Android_Lime3DS_setup(){

View File

@ -9,7 +9,7 @@ function Android_NetherSX2_install(){
rm -rf "$Android_folder/$temp_emu.zip" rm -rf "$Android_folder/$temp_emu.zip"
chmod +x $Android_folder/builder/build-nethersx2.sh chmod +x $Android_folder/builder/build-nethersx2.sh
$Android_folder/builder/build-nethersx2.sh $Android_folder/builder/build-nethersx2.sh
Android_ADB_installAPK "$HOME/emudeck/android/builder/PatchedAPK/15210-v1.5-4248-noads.apk" Android_ADB_installAPK "$emudeckFolder/android/builder/PatchedAPK/15210-v1.5-4248-noads.apk"
} }
function Android_NetherSX2_init(){ function Android_NetherSX2_init(){

View File

@ -2127,16 +2127,16 @@ Android_RetroArch_retroAchievementsPromptLogin(){
ans=$? ans=$?
if [ $ans -eq 0 ]; then if [ $ans -eq 0 ]; then
echo "RetroAchievment Login" echo "RetroAchievment Login"
echo "$RAInput" | awk -F "," '{print $1}' > "$HOME/.config/EmuDeck/.rau" echo "$RAInput" | awk -F "," '{print $1}' > "$emudeckFolder/.rau"
echo "$RAInput" | awk -F "," '{print $2}' > "$HOME/.config/EmuDeck/.rap" echo "$RAInput" | awk -F "," '{print $2}' > "$emudeckFolder/.rap"
else else
echo "Cancel RetroAchievment Login" echo "Cancel RetroAchievment Login"
fi fi
} }
Android_RetroArch_retroAchievementsSetLogin(){ Android_RetroArch_retroAchievementsSetLogin(){
rm -rf "$HOME/.config/EmuDeck/.rap" rm -rf "$emudeckFolder/.rap"
rau=$(cat "$HOME/.config/EmuDeck/.rau") rau=$(cat "$emudeckFolder/.rau")
rat=$(cat "$HOME/.config/EmuDeck/.rat") rat=$(cat "$emudeckFolder/.rat")
echo "Evaluate RetroAchievements Login." echo "Evaluate RetroAchievements Login."
if [ ${#rat} -lt 1 ]; then if [ ${#rat} -lt 1 ]; then
echo "--No token." echo "--No token."

View File

@ -10,7 +10,7 @@ function Android_Yuzu_install(){
function Android_Yuzu_init(){ function Android_Yuzu_init(){
setMSG "Setting up Yuzu" setMSG "Setting up Yuzu"
rsync -ra "$HOME/.config/EmuDeck/backend/android/configs/Android/data/org.yuzu.yuzu_emu/" "$Android_temp_android_data/org.yuzu.yuzu_emu/" rsync -ra "$emudeckBackend/android/configs/Android/data/org.yuzu.yuzu_emu/" "$Android_temp_android_data/org.yuzu.yuzu_emu/"
originFile="$Android_temp_android_data/org.yuzu.yuzu_emu/files/config/config.ini" originFile="$Android_temp_android_data/org.yuzu.yuzu_emu/files/config/config.ini"
origin="XXXX" origin="XXXX"

View File

@ -16,15 +16,15 @@ function Android_ADB_isInstalled(){
function Android_ADB_install(){ function Android_ADB_install(){
local outFile="adb.zip" local outFile="adb.zip"
local outDir="$HOME/emudeck/android" local outDir="$emudeckFolder/android"
Android_download "$outFile" "$Android_ADB_url" && unzip -o "$outDir/$outFile" -d $outDir && rm -rf "$outDir/$outFile" && echo "true" && return 0 Android_download "$outFile" "$Android_ADB_url" && unzip -o "$outDir/$outFile" -d $outDir && rm -rf "$outDir/$outFile" && echo "true" && return 0
} }
function Android_download(){ function Android_download(){
local outDir="$HOME/emudeck/android/" local outDir="$emudeckFolder/android/"
local outFile="$HOME/emudeck/android/$1" local outFile="$emudeckFolder/android/$1"
local url=$2 local url=$2
mkdir -p $outDir mkdir -p $outDir
@ -75,7 +75,7 @@ Android_ADB_dl_installAPK(){
local temp_emu=$1 local temp_emu=$1
local temp_url=$2 local temp_url=$2
Android_download "$temp_emu.apk" $temp_url Android_download "$temp_emu.apk" $temp_url
Android_ADB_installAPK "$HOME/emudeck/android/$temp_emu.apk" Android_ADB_installAPK "$emudeckFolder/android/$temp_emu.apk"
} }
function Android_ADB_getSDCard(){ function Android_ADB_getSDCard(){

View File

@ -38,7 +38,7 @@ function Android_Pegasus_init(){
Android_Pegasus_dl_theme $temp_emu $temp_url Android_Pegasus_dl_theme $temp_emu $temp_url
#Change paths #Change paths
rsync -ra "$HOME/.config/EmuDeck/backend/android/configs/Android/data/org.pegasus_frontend.android/files/pegasus-frontend/" "$Android_Pegasus_temp/" rsync -ra "$emudeckBackend/android/configs/Android/data/org.pegasus_frontend.android/files/pegasus-frontend/" "$Android_Pegasus_temp/"
originFile="$Android_Pegasus_temp/game_dirs.txt" originFile="$Android_Pegasus_temp/game_dirs.txt"
origin="XXXX" origin="XXXX"
target="$androidStoragePath" target="$androidStoragePath"

View File

@ -1,26 +1,27 @@
#!/bin/bash #!/bin/bash
# SETTINGSFILEANDROID="$HOME/emudeck/android_settings.sh" # SETTINGSFILEANDROID="$emudeckFolder/android_settings.sh"
# if [ -f "$SETTINGSFILEANDROID" ]; then # if [ -f "$SETTINGSFILEANDROID" ]; then
# # shellcheck source=./settings.sh # # shellcheck source=./settings.sh
# source "$SETTINGSFILEANDROID" # source "$SETTINGSFILEANDROID"
# else # else
# cp "$EMUDECKGIT/android/android_settings.sh" "$SETTINGSFILEANDROID" # cp "$emudeckBackend/android/android_settings.sh" "$SETTINGSFILEANDROID"
# source "$HOME/emudeck/android_settings.sh" # source "$emudeckFolder/android_settings.sh"
# fi # fi
source "$EMUDECKGIT/android/vars.sh" source "$emudeckBackend/vars.sh"
source "$emudeckBackend/android/vars.sh"
source "$EMUDECKGIT"/android/functions/EmuScripts/Android_Yuzu.sh source "$emudeckBackend"/android/functions/EmuScripts/Android_Yuzu.sh
source "$EMUDECKGIT"/android/functions/EmuScripts/Android_NetherSX2.sh source "$emudeckBackend"/android/functions/EmuScripts/Android_NetherSX2.sh
source "$EMUDECKGIT"/android/functions/EmuScripts/Android_Lime3DS.sh source "$emudeckBackend"/android/functions/EmuScripts/Android_Lime3DS.sh
source "$EMUDECKGIT"/android/functions/EmuScripts/Android_Dolphin.sh source "$emudeckBackend"/android/functions/EmuScripts/Android_Dolphin.sh
source "$EMUDECKGIT"/android/functions/EmuScripts/Android_RetroArch.sh source "$emudeckBackend"/android/functions/EmuScripts/Android_RetroArch.sh
source "$EMUDECKGIT"/android/functions/EmuScripts/Android_PPSSPP.sh source "$emudeckBackend"/android/functions/EmuScripts/Android_PPSSPP.sh
source "$EMUDECKGIT"/android/functions/EmuScripts/Android_ScummVM.sh source "$emudeckBackend"/android/functions/EmuScripts/Android_ScummVM.sh
source "$EMUDECKGIT"/android/functions/EmuScripts/Android_Vita3K.sh source "$emudeckBackend"/android/functions/EmuScripts/Android_Vita3K.sh
source "$EMUDECKGIT"/android/functions/ToolScripts/Android_ADB.sh source "$emudeckBackend"/android/functions/ToolScripts/Android_ADB.sh
source "$EMUDECKGIT"/android/functions/ToolScripts/Android_Daijisho.sh source "$emudeckBackend"/android/functions/ToolScripts/Android_Daijisho.sh
source "$EMUDECKGIT"/android/functions/ToolScripts/Android_Pegasus.sh source "$emudeckBackend"/android/functions/ToolScripts/Android_Pegasus.sh
Android_ADB_setPath Android_ADB_setPath

View File

@ -1,9 +1,16 @@
#!/bin/bash #!/bin/bash
#source $HOME/.config/EmuDeck/backend/functions/all.sh
#
##
## set backend location
##
#
if [[ "$emudeckBackend" == "" ]]; then
emudeckBackend="$HOME/.config/EmuDeck/backend/"
fi
. "$emudeckBackend/vars.sh"
MSG=$emudeckLogs/msg.log
MSG=$HOME/emudeck/logs/msg.log
echo "0" > "$MSG" echo "0" > "$MSG"
# #
@ -13,8 +20,8 @@ echo "0" > "$MSG"
# #
#mkdir -p "$HOME/.config/EmuDeck" #mkdir -p "$HOME/.config/EmuDeck"
#mkdir -p "$HOME/emudeck/logs" #mkdir -p "$emudeckLogs"
PIDFILE="$HOME/.config/EmuDeck/install.pid" PIDFILE="$emudeckFolder/install.pid"
if [ -f "$PIDFILE" ]; then if [ -f "$PIDFILE" ]; then
@ -55,9 +62,9 @@ trap finish EXIT
# #
#Creating log file #Creating log file
LOGFILE="$HOME/emudeck/logs/emudeckAndroidSetup.log" LOGFILE="$emudeckLogs/emudeckAndroidSetup.log"
mv "${LOGFILE}" "$HOME/emudeck/logs/emudeckAndroidSetup.last.log" #backup last log mv "${LOGFILE}" "$emudeckLogs/emudeckAndroidSetup.last.log" #backup last log
if echo "${@}" > "${LOGFILE}" ; then if echo "${@}" > "${LOGFILE}" ; then
echo "Log created" echo "Log created"
@ -72,23 +79,16 @@ date "+%Y.%m.%d-%H:%M:%S %Z"
echo 'Github API limits:' echo 'Github API limits:'
curl -H "Accept: application/vnd.github+json" -H "X-GitHub-Api-Version: 2022-11-28" "https://api.github.com/rate_limit" curl -H "Accept: application/vnd.github+json" -H "X-GitHub-Api-Version: 2022-11-28" "https://api.github.com/rate_limit"
#
##
## set backend location
##
#
if [[ "$EMUDECKGIT" == "" ]]; then
EMUDECKGIT="$HOME/.config/EmuDeck/backend"
fi
# #
## ##
## Start of installation ## Start of installation
## ##
# #
source "$EMUDECKGIT"/functions/helperFunctions.sh source "$emudeckBackend"/functions/helperFunctions.sh
source "$EMUDECKGIT"/functions/jsonToBashVars.sh source "$emudeckBackend"/functions/jsonToBashVars.sh
jsonToBashVars "$HOME/.config/EmuDeck/settings.json" jsonToBashVars "$emudeckFolder/settings.json"
source "$EMUDECKGIT/functions/all.sh" source "$emudeckBackend/functions/all.sh"
mkdir -p $Android_temp_internal mkdir -p $Android_temp_internal
mkdir -p $Android_temp_external mkdir -p $Android_temp_external
@ -103,7 +103,7 @@ fi
setMSG "Creating rom folders in $androidStoragePath..." setMSG "Creating rom folders in $androidStoragePath..."
mkdir -p "$Android_cond_path/Emulation/roms/" mkdir -p "$Android_cond_path/Emulation/roms/"
rsync -ra --ignore-existing "$EMUDECKGIT/roms/" "$Android_cond_path/Emulation/roms/" rsync -ra --ignore-existing "$emudeckBackend/roms/" "$Android_cond_path/Emulation/roms/"
setMSG "Copying BIOS" setMSG "Copying BIOS"
rsync -ra --ignore-existing "$biosPath/" "$Android_cond_path/Emulation/bios/" rsync -ra --ignore-existing "$biosPath/" "$Android_cond_path/Emulation/bios/"
@ -207,8 +207,8 @@ xdg-open "$Android_folder/temp" &
# #
# We mark the script as finished # We mark the script as finished
# #
echo "100" > "$HOME/emudeck/logs/msg.log" echo "100" > "$emudeckLogs/msg.log"
echo "# Installation Complete" >> "$HOME/emudeck/logs/msg.log" echo "# Installation Complete" >> "$emudeckLogs/msg.log"
} | tee "${LOGFILE}" 2>&1 } | tee "${LOGFILE}" 2>&1

View File

@ -1,8 +1,8 @@
#!/bin/bash #!/bin/bash
Android_ADB_path="$HOME/emudeck/android/platform-tools" Android_ADB_path="$emudeckFolder/android/platform-tools"
Android_ADB_url="https://dl.google.com/android/repository/platform-tools-latest-linux.zip" Android_ADB_url="https://dl.google.com/android/repository/platform-tools-latest-linux.zip"
Android_folder="$HOME/emudeck/android/" Android_folder="$emudeckFolder/android/"
Android_temp_android_data="$HOME/emudeck/android/temp/CopyToInternal/Android/data" Android_temp_android_data="$emudeckFolder/android/temp/CopyToInternal/Android/data"
Android_temp_internal="$HOME/emudeck/android/temp/CopyToInternal" Android_temp_internal="$emudeckFolder/android/temp/CopyToInternal"
Android_temp_external="$HOME/emudeck/android/temp/CopyToSDCARD" Android_temp_external="$emudeckFolder/android/temp/CopyToSDCARD"
Android_emusPath="/storage/emulated/0" Android_emusPath="/storage/emulated/0"

6
api.sh
View File

@ -1,9 +1,9 @@
#!/bin/bash #!/bin/bash
. $HOME/.config/EmuDeck/backend/functions/all.sh . "$HOME/.config/EmuDeck/backend/functions/all.sh"
API_pull(){ API_pull(){
local branch=$1 local branch=$1
cd ~/.config/EmuDeck/backend && touch ~/emudeck/logs/git.log && git reset --hard && git clean -fd && git checkout $branch && git pull && appImageInit && echo "OK" || echo "KO" >&2 cd ~/.config/EmuDeck/backend && touch $emudeckLogs/git.log && git reset --hard && git clean -fd && git checkout $branch && git pull && appImageInit && echo "OK" || echo "KO" >&2
} }
API_autoSave(){ API_autoSave(){
@ -57,7 +57,7 @@ API_setCloud(){
API_setToken(){ API_setToken(){
local token=$1 local token=$1
local user=$2 local user=$2
echo $token > "$HOME/.config/EmuDeck/.rat" && echo $user > "$HOME/.config/EmuDeck/.rau" && RetroArch_retroAchievementsSetLogin && DuckStation_retroAchievementsSetLogin && PCSX2QT_retroAchievementsSetLogin && echo "OK" || echo "KO" >&2 echo $token > "$emudeckFolder/.rat" && echo $user > "$emudeckFolder/.rau" && RetroArch_retroAchievementsSetLogin && DuckStation_retroAchievementsSetLogin && PCSX2QT_retroAchievementsSetLogin && echo "OK" || echo "KO" >&2
} }
API_getToken(){ API_getToken(){

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
clear clear
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
NONE='\033[00m' NONE='\033[00m'
RED='\033[01;31m' RED='\033[01;31m'

View File

@ -10,48 +10,127 @@
</emulator> </emulator>
<emulator name="RETROARCH"> <emulator name="RETROARCH">
<rule type="staticpath"> <rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/retroarch.sh</entry> <entry>/run/media/mmcblk0p1/Emulation/tools/launchers/retroarch.sh</entry>
</rule> </rule>
</emulator> </emulator>
<core name="RETROARCH"> <core name="RETROARCH">
<rule type="corepath"> <rule type="corepath">
<!-- Flatpak package -->
<entry>~/.var/app/org.libretro.RetroArch/config/retroarch/cores</entry>
<!-- Snap package -->
<entry>~/snap/retroarch/current/.config/retroarch/cores</entry>
<!-- AppImage and compiled from source -->
<entry>~/.config/retroarch/cores</entry> <entry>~/.config/retroarch/cores</entry>
<!-- Ubuntu and Linux Mint repository -->
<entry>/usr/lib/x86_64-linux-gnu/libretro</entry>
<!-- Fedora repository -->
<entry>/usr/lib64/libretro</entry>
<!-- Manjaro repository -->
<entry>/usr/lib/libretro</entry>
<!-- FreeBSD and OpenBSD repository -->
<entry>/usr/local/lib/libretro</entry>
<!-- NetBSD repository -->
<entry>/usr/pkg/lib/libretro</entry>
</rule> </rule>
</core> </core>
<emulator name="SHADPS4"> <emulator name="SHADPS4">
<!-- PS4 emulator ShadPS4 -->
<rule type="staticpath"> <rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/shadps4.sh</entry> <entry>/run/media/mmcblk0p1/Emulation/tools/launchers/shadps4.sh</entry>
</rule> </rule>
</emulator> </emulator>
<emulator name="YUZU"> <emulator name="YUZU">
<!-- Nintendo Switch emulator Yuzu -->
<rule type="systempath">
<entry>yuzu</entry>
<entry>org.yuzu_emu.yuzu</entry>
</rule>
<rule type="staticpath"> <rule type="staticpath">
<entry>~/Applications/yuzu*.AppImage</entry> <entry>/run/media/mmcblk0p1/Emulation/tools/launchers/yuzu.sh</entry>
<entry>~/.local/share/applications/yuzu*.AppImage</entry> </rule>
<entry>~/.local/bin/yuzu*.AppImage</entry> </emulator>
<entry>~/bin/yuzu*.AppImage</entry> <emulator name="CEMU">
<entry>/var/lib/flatpak/exports/bin/org.yuzu_emu.yuzu</entry> <rule type="staticpath">
<entry>~/.local/share/flatpak/exports/bin/org.yuzu_emu.yuzu</entry> <entry>/run/media/mmcblk0p1/Emulation/tools/launchers/cemu.sh</entry>
</rule>
</emulator>
<emulator name="CITRA">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/citra.sh</entry>
</rule>
</emulator>
<emulator name="DOLPHIN">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/dolphin.sh</entry>
</rule>
</emulator>
<emulator name="DUCKSTATION">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/duckstation.sh</entry>
</rule>
</emulator>
<emulator name="FLYCAST">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/flycast.sh</entry>
</rule>
</emulator>
<emulator name="LIME3DS">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/lime3ds.sh</entry>
</rule>
</emulator>
<emulator name="MAME">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/mame.sh</entry>
</rule>
</emulator>
<emulator name="MELONDS">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/melonds.sh</entry>
</rule>
</emulator>
<emulator name="MGBA">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/mgba.sh</entry>
</rule>
</emulator>
<emulator name="MODEL2">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/model-2-emulator.sh</entry>
</rule>
</emulator>
<emulator name="SUPERMODEL">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/supermodel.sh</entry>
</rule>
</emulator>
<emulator name="PCSX2QT">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/pcsx2-qt.sh</entry>
</rule>
</emulator>
<emulator name="PPSSPP">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/ppsspp.sh</entry>
</rule>
</emulator>
<emulator name="PRIMEHACK">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/primehack.sh</entry>
</rule>
</emulator>
<emulator name="RMG">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/rosaliesmupengui.sh</entry>
</rule>
</emulator>
<emulator name="RPCS3">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/rpcs3.sh</entry>
</rule>
</emulator>
<emulator name="RYUJINX">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/ryujinx.sh</entry>
</rule>
</emulator>
<emulator name="SCUMMVM">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/scummvm.sh</entry>
</rule>
</emulator>
<emulator name="VITA3K">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/vita3k.sh</entry>
</rule>
</emulator>
<emulator name="XEMU">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/xemu.sh</entry>
</rule>
</emulator>
<emulator name="XENIA">
<rule type="staticpath">
<entry>/run/media/mmcblk0p1/Emulation/tools/launchers/xenia.sh</entry>
</rule> </rule>
</emulator> </emulator>
</ruleList> </ruleList>

File diff suppressed because it is too large Load Diff

View File

@ -15,23 +15,23 @@
"specifiedAccounts": "" "specifiedAccounts": ""
}, },
"executable": { "executable": {
"path": "/home/deck/Applications/Vita3K/Vita3K", "path": "/home/deck/.config/EmuDeck/Emulators/Vita3K/Vita3K",
"shortcutPassthrough": false, "shortcutPassthrough": false,
"appendArgsToExecutable": true "appendArgsToExecutable": true
}, },
"parserInputs": { "parserInputs": {
"glob": "**/${title}/@(eboot.bin|EBOOT.BIN)" "glob": "**/${title}/@(eboot.bin|EBOOT.BIN)"
}, },
"controllers": { "controllers": {
"ps4": null, "ps4": null,
"ps5": null, "ps5": null,
"xbox360": null, "xbox360": null,
"xboxone": null, "xboxone": null,
"switch_joycon_left": null, "switch_joycon_left": null,
"switch_joycon_right": null, "switch_joycon_right": null,
"switch_pro": null, "switch_pro": null,
"neptune": null "neptune": null
}, },
"titleFromVariable": { "titleFromVariable": {
"limitToGroups": "${PSV}", "limitToGroups": "${PSV}",
"caseInsensitiveVariables": true, "caseInsensitiveVariables": true,

View File

@ -9491,7 +9491,7 @@
] ]
}, },
"executable": { "executable": {
"path": "/home/deck/Applications/Vita3K/Vita3K", "path": "/home/deck/.config/EmuDeck/Emulators/Vita3K/Vita3K",
"shortcutPassthrough": false, "shortcutPassthrough": false,
"appendArgsToExecutable": true "appendArgsToExecutable": true
}, },

View File

@ -71,7 +71,7 @@ mkdir -p "$destination/EmuDeck/saves"
for entry in "$emulationPath/saves/"* for entry in "$emulationPath/saves/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/saves/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/saves/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/saves/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/saves/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close
done done
@ -96,7 +96,7 @@ if [ "$size" -gt 4096 ]; then
for entry in "$emulationPath/storage/"* for entry in "$emulationPath/storage/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/storage/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/storage/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/storage/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/storage/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close
done done
else else
@ -122,7 +122,7 @@ if [ "$size" -gt 4096 ]; then
for entry in "$emulationPath/bios/"* for entry in "$emulationPath/bios/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/bios/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/bios/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/bios/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/bios/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close
done done
else else
@ -147,7 +147,7 @@ if [ "$size" -gt 4096 ]; then
for entry in "$emulationPath/bios/"* for entry in "$emulationPath/bios/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/bios/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/bios/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/bios/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/bios/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close
done done
else else
@ -172,7 +172,7 @@ if [ "$size" -gt 4096 ]; then
for entry in "$ESDEscrapData/"* for entry in "$ESDEscrapData/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/roms/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/tools/downloaded_media/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$destination/EmuDeck/roms/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Exporting $entry to $destination/EmuDeck/tools/downloaded_media/" --title="Exporting $entry..." --width=400 --percentage=0 --auto-close
done done
else else

View File

@ -2,9 +2,9 @@
#variables #variables
BigPEmu_emuName="BigPEmu" BigPEmu_emuName="BigPEmu"
BigPEmu_emuType="$emuDeckEmuTypeWindows" BigPEmu_emuType="$emuDeckEmuTypeWindows"
BigPEmu_emuPath="$HOME/Applications/BigPEmu/BigPEmu.exe" BigPEmu_emuPath="$emusFolder/BigPEmu/bigpemu"
BigPEmu_appData="$HOME/Applications/BigPEmu/UserData" BigPEmu_appData="$emusFolder/BigPEmu/UserData"
BigPEmu_BigPEmuSettings="$HOME/Applications/BigPEmu/UserData/BigPEmuConfig.bigpcfg" BigPEmu_BigPEmuSettings="$emusFolder/BigPEmu/UserData/BigPEmuConfig.bigpcfg"
#cleanupOlderThings #cleanupOlderThings
BigPEmu_cleanup(){ BigPEmu_cleanup(){
@ -19,27 +19,27 @@ BigPEmu_install(){
BigPEmudownloadLink=$(curl -s "https://www.richwhitehouse.com/jaguar/index.php?content=download" | grep -o 'https://www\.richwhitehouse\.com/jaguar/builds/BigPEmu_Linux64_v[0-9]*\.tar.gz' | grep -v "BigPEmu_*-DEV.tar.gz" | head -n 1) BigPEmudownloadLink=$(curl -s "https://www.richwhitehouse.com/jaguar/index.php?content=download" | grep -o 'https://www\.richwhitehouse\.com/jaguar/builds/BigPEmu_Linux64_v[0-9]*\.tar.gz' | grep -v "BigPEmu_*-DEV.tar.gz" | head -n 1)
if safeDownload "BigPEmu" "$BigPEmudownloadLink" "$HOME/Applications/BigPEmu/BigPEmu.tar.gz" "$showProgress"; then if safeDownload "BigPEmu" "$BigPEmudownloadLink" "$emusFolder/BigPEmu/BigPEmu.tar.gz" "$showProgress"; then
tar -xvzf "$HOME/Applications/BigPEmu/BigPEmu.tar.gz" -C "$HOME/Applications/BigPEmu" --strip-components 1 tar -xvzf "$emusFolder/BigPEmu/BigPEmu.tar.gz" -C "$emusFolder/BigPEmu" --strip-components 1
rm -f "$HOME/Applications/BigPEmu/BigPEmu.tar.gz" rm -f "$emusFolder/BigPEmu/BigPEmu.tar.gz"
else else
return 1 return 1
fi fi
cp "$EMUDECKGIT/tools/launchers/bigpemu.sh" "$toolsPath/launchers/bigpemu.sh" cp "$emudeckBackend/tools/launchers/bigpemu.sh" "$toolsPath/launchers/bigpemu.sh"
# So users can still open BigPEmu from the ~/Applications folder. # So users can still open BigPEmu from the ~/Applications folder.
#cp "$EMUDECKGIT/tools/launchers/bigpemu.sh" "$HOME/Applications/BigPEmu/bigpemu.sh" #cp "$emudeckBackend/tools/launchers/bigpemu.sh" "$emusFolder/BigPEmu/bigpemu.sh"
cp "$EMUDECKGIT/tools/launchers/bigpemu.sh" "$romsPath/emulators/bigpemu.sh" cp "$emudeckBackend/tools/launchers/bigpemu.sh" "$romsPath/emulators/bigpemu.sh"
chmod +x "${toolsPath}/launchers/bigpemu.sh" chmod +x "${toolsPath}/launchers/bigpemu.sh"
#chmod +x "$HOME/Applications/BigPEmu/bigpemu.sh" #chmod +x "$emusFolder/BigPEmu/bigpemu.sh"
chmod +x "$romsPath/emulators/bigpemu.sh" chmod +x "$romsPath/emulators/bigpemu.sh"
rm -rf "$HOME/.local/share/applications/BigPEmu (Proton).desktop" rm -rf "$HOME/.local/share/applications/BigPEmu (Proton).desktop"
rm -rf "$HOME/Applications/BigPEmu/bigpemu.sh" rm -rf "$emusFolder/BigPEmu/bigpemu.sh"
createDesktopShortcut "$HOME/.local/share/applications/BigPEmu.desktop" \ createDesktopShortcut "$HOME/.local/share/applications/BigPEmu.desktop" \
"BigPEmu" \ "BigPEmu" \
@ -50,7 +50,7 @@ BigPEmu_install(){
#ApplyInitialSettings #ApplyInitialSettings
BigPEmu_init(){ BigPEmu_init(){
setMSG "Initializing $BigPEmu_emuName settings." setMSG "Initializing $BigPEmu_emuName settings."
rsync -avhp "$EMUDECKGIT/configs/bigpemu/" "$BigPEmu_appData" --backup --suffix=.bak rsync -avhp "$emudeckBackend/configs/bigpemu/" "$BigPEmu_appData" --backup --suffix=.bak
BigPEmu_setEmulationFolder BigPEmu_setEmulationFolder
BigPEmu_setupSaves BigPEmu_setupSaves
BigPEmu_flushEmulatorLauncher BigPEmu_flushEmulatorLauncher
@ -66,7 +66,7 @@ BigPEmu_init(){
#update #update
BigPEmu_update(){ BigPEmu_update(){
setMSG "Updating $BigPEmu_emuName settings." setMSG "Updating $BigPEmu_emuName settings."
rsync -avhp "$EMUDECKGIT/configs/bigpemu/" "$BigPEmu_appData" --ignore-existing rsync -avhp "$emudeckBackend/configs/bigpemu/" "$BigPEmu_appData" --ignore-existing
BigPEmu_setEmulationFolder BigPEmu_setEmulationFolder
BigPEmu_setupSaves BigPEmu_setupSaves
BigPEmu_flushEmulatorLauncher BigPEmu_flushEmulatorLauncher
@ -203,7 +203,7 @@ BigPEmu_addSteamInputProfile(){
echo "NYI" echo "NYI"
# addSteamInputCustomIcons # addSteamInputCustomIcons
# setMSG "Adding $BigPEmu_emuName Steam Input Profile." # setMSG "Adding $BigPEmu_emuName Steam Input Profile."
# rsync -r "$EMUDECKGIT/configs/steam-input/BigPEmu_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" # rsync -r "$emudeckBackend/configs/steam-input/BigPEmu_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }
BigPEmu_flushEmulatorLauncher(){ BigPEmu_flushEmulatorLauncher(){

View File

@ -8,7 +8,7 @@ Cemu_functions () {
declare -A CemuNative=( declare -A CemuNative=(
[emuName]="CemuNative" [emuName]="CemuNative"
[emuType]="AppImage" [emuType]="AppImage"
[emuPath]="${HOME}/Applications/Cemu.AppImage" [emuPath]="$emusFolder/Cemu.AppImage"
[configDir]="${HOME}/.config/Cemu" [configDir]="${HOME}/.config/Cemu"
[configFile]="${HOME}/.config/Cemu/settings.xml" [configFile]="${HOME}/.config/Cemu/settings.xml"
[shareDir]="${HOME}/.local/share/Cemu" [shareDir]="${HOME}/.local/share/Cemu"
@ -270,11 +270,13 @@ Cemu_functions () {
# Apply initial settings # Apply initial settings
init () { init () {
setMSG "Initialising ${CemuNative[emuName]} settings." setMSG "Initialising ${CemuNative[emuName]} settings."
configEmuAI "cemu" "config" "${CemuNative[configDir]}" "${EMUDECKGIT}/configs/cemu/config/cemu" "true" configEmuAI "cemu" "config" "${CemuNative[configDir]}" "$emudeckBackend/configs/cemu/config/cemu" "true"
cp "$EMUDECKGIT/$SRM_userData_directory/parsers/optional/nintendo_wiiu-cemu-native-rpx.json" "$SRM_userData_configDir/parsers/custom/" mv "${CemuNative[configDir]}" "$HOME/EmuDeck/configs/cemu"
cp "$EMUDECKGIT/$SRM_userData_directory/parsers/optional/nintendo_wiiu-cemu-native-wud-wux-wua.json" "$SRM_userData_configDir/parsers/custom/" ln -sf "$HOME/EmuDeck/configs/cemu" "${CemuNative[configDir]}"
cp "$emudeckBackend/$SRM_userData_directory/parsers/optional/nintendo_wiiu-cemu-native-rpx.json" "$SRM_userData_configDir/parsers/custom/"
cp "$emudeckBackend/$SRM_userData_directory/parsers/optional/nintendo_wiiu-cemu-native-wud-wux-wua.json" "$SRM_userData_configDir/parsers/custom/"
#SRM_createParsers #SRM_createParsers
#configEmuAI "cemu" "data" "${storagePath}/cemu" "${EMUDECKGIT}/configs/cemu/data/cemu" "true" #seems unneeded? maybe? #configEmuAI "cemu" "data" "${storagePath}/cemu" "$emudeckBackend/configs/cemu/data/cemu" "true" #seems unneeded? maybe?
setEmulationFolder setEmulationFolder
setupStorage setupStorage
setupSaves setupSaves
@ -294,11 +296,11 @@ Cemu_functions () {
# Update # Update
update () { update () {
setMSG "Updating ${CemuNative[emuName]} settings." setMSG "Updating ${CemuNative[emuName]} settings."
configEmuAI "cemu" "config" "${CemuNative[configDir]}" "${EMUDECKGIT}/configs/cemu/.config/cemu" configEmuAI "cemu" "config" "${CemuNative[configDir]}" "$emudeckBackend/configs/cemu/.config/cemu"
cp "$EMUDECKGIT/$SRM_userData_directory/parsers/optional/nintendo_wiiu-cemu-native-rpx.json" "$SRM_userData_configDir/parsers/custom/" cp "$emudeckBackend/$SRM_userData_directory/parsers/optional/nintendo_wiiu-cemu-native-rpx.json" "$SRM_userData_configDir/parsers/custom/"
cp "$EMUDECKGIT/$SRM_userData_directory/parsers/optional/nintendo_wiiu-cemu-native-wud-wux-wua.json" "$SRM_userData_configDir/parsers/custom/" cp "$emudeckBackend/$SRM_userData_directory/parsers/optional/nintendo_wiiu-cemu-native-wud-wux-wua.json" "$SRM_userData_configDir/parsers/custom/"
SRM_createParsers SRM_createParsers
#configEmuAI "cemu" "data" "${storagePath}/cemu" "${EMUDECKGIT}/configs/cemu/data/cemu" #seems unneeded? maybe? #configEmuAI "cemu" "data" "${storagePath}/cemu" "$emudeckBackend/configs/cemu/data/cemu" #seems unneeded? maybe?
#migrate #migrate
setEmulationFolder setEmulationFolder
setupStorage setupStorage
@ -334,8 +336,8 @@ Cemu_functions () {
addSteamInputProfile () { addSteamInputProfile () {
addSteamInputCustomIcons addSteamInputCustomIcons
setMSG "Adding ${CemuNative[emuName]} Steam Input Profile." setMSG "Adding ${CemuNative[emuName]} Steam Input Profile."
#rsync -r "${EMUDECKGIT}/configs/steam-input/cemu_controller_config.vdf" "${HOME}/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/cemu_controller_config.vdf" "${HOME}/.steam/steam/controller_base/templates/"
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -51,7 +51,7 @@ CemuProton_install(){
# fi # fi
cp "$EMUDECKGIT/tools/launchers/cemu.sh" "${toolsPath}/launchers/cemu.sh" cp "$emudeckBackend/tools/launchers/cemu.sh" "${toolsPath}/launchers/cemu.sh"
sed -i "s|/run/media/mmcblk0p1/Emulation/tools|${toolsPath}|g" "${toolsPath}/launchers/cemu.sh" sed -i "s|/run/media/mmcblk0p1/Emulation/tools|${toolsPath}|g" "${toolsPath}/launchers/cemu.sh"
sed -i "s|/run/media/mmcblk0p1/Emulation/roms|${romsPath}|" "${toolsPath}/launchers/cemu.sh" sed -i "s|/run/media/mmcblk0p1/Emulation/roms|${romsPath}|" "${toolsPath}/launchers/cemu.sh"
@ -70,7 +70,7 @@ CemuProton_install(){
#ApplyInitialSettings #ApplyInitialSettings
CemuProton_init(){ CemuProton_init(){
setMSG "Initializing $CemuProton_emuName settings." setMSG "Initializing $CemuProton_emuName settings."
rsync -avhp "$EMUDECKGIT/configs/info.cemu.Cemu/data/cemu/" "${romsPath}/wiiu" --backup --suffix=.bak rsync -avhp "$emudeckBackend/configs/info.cemu.Cemu/data/cemu/" "${romsPath}/wiiu" --backup --suffix=.bak
if [ -e "$CemuProton_cemuSettings.bak" ]; then if [ -e "$CemuProton_cemuSettings.bak" ]; then
mv -f "$CemuProton_cemuSettings.bak" "$CemuProton_cemuSettings" #retain cemuSettings mv -f "$CemuProton_cemuSettings.bak" "$CemuProton_cemuSettings" #retain cemuSettings
fi fi
@ -102,7 +102,7 @@ CemuProton_init(){
#update #update
CemuProton_update(){ CemuProton_update(){
setMSG "Updating $CemuProton_emuName settings." setMSG "Updating $CemuProton_emuName settings."
rsync -avhp "$EMUDECKGIT/configs/info.cemu.Cemu/data/cemu/" "${romsPath}/wiiu" --ignore-existing rsync -avhp "$emudeckBackend/configs/info.cemu.Cemu/data/cemu/" "${romsPath}/wiiu" --ignore-existing
CemuProton_setEmulationFolder CemuProton_setEmulationFolder
CemuProton_setupSaves CemuProton_setupSaves
#CemuProton_addSteamInputProfile #CemuProton_addSteamInputProfile
@ -253,7 +253,7 @@ CemuProton_resetConfig(){
CemuProton_addSteamInputProfile(){ CemuProton_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
#setMSG "Adding $CemuProton_emuName Steam Input Profile." #setMSG "Adding $CemuProton_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/CemuProton_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/CemuProton_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }
CemuProton_setResolution(){ CemuProton_setResolution(){

View File

@ -2,7 +2,7 @@
#variables #variables
Citra_emuName="Citra" Citra_emuName="Citra"
Citra_emuType="$emuDeckEmuTypeAppImage" Citra_emuType="$emuDeckEmuTypeAppImage"
Citra_emuPath="$HOME/Applications/citra-qt.AppImage" Citra_emuPath="$emusFolder/citra-qt.AppImage"
Citra_releaseURL="" Citra_releaseURL=""
Citra_configFile="$HOME/.config/citra-emu/qt-config.ini" Citra_configFile="$HOME/.config/citra-emu/qt-config.ini"
Citra_configPath="$HOME/.config/citra-emu" Citra_configPath="$HOME/.config/citra-emu"
@ -14,12 +14,12 @@ Citra_install(){
local showProgress="$1" local showProgress="$1"
if installEmuAI "$Citra_emuName" "" "https://github.com/PabloMK7/citra/releases/download/r608383e/citra-linux-appimage-20240927-608383e.tar.gz" "citra" "tar.gz" "emulator" "$showProgress"; then #citra-qt.AppImage if installEmuAI "$Citra_emuName" "" "https://github.com/PabloMK7/citra/releases/download/r608383e/citra-linux-appimage-20240927-608383e.tar.gz" "citra" "tar.gz" "emulator" "$showProgress"; then #citra-qt.AppImage
#if installEmuAI "$Citra_emuName" "" "https://github.com/PabloMK7/citra/releases/download/r518f723/citra-linux-appimage-20240717-518f723.tar.gz" "citra" "tar.gz" "emulator" "$showProgress"; then #citra-qt.AppImage #if installEmuAI "$Citra_emuName" "" "https://github.com/PabloMK7/citra/releases/download/r518f723/citra-linux-appimage-20240717-518f723.tar.gz" "citra" "tar.gz" "emulator" "$showProgress"; then #citra-qt.AppImage
mkdir "$HOME/Applications/citra-temp" mkdir "$emusFolder/citra-temp"
tar -xvzf "$HOME/Applications/citra.tar.gz" -C "$HOME/Applications/citra-temp" --strip-components 1 tar -xvzf "$emusFolder/citra.tar.gz" -C "$emusFolder/citra-temp" --strip-components 1
mv "$HOME/Applications/citra-temp/citra-qt.AppImage" "$HOME/Applications" mv "$emusFolder/citra-temp/citra-qt.AppImage" "$emusFolder"
rm -rf "$HOME/Applications/citra-temp" rm -rf "$emusFolder/citra-temp"
rm -rf "$HOME/Applications/citra.tar.gz" rm -rf "$emusFolder/citra.tar.gz"
chmod +x "$HOME/Applications/citra-qt.AppImage" chmod +x "$emusFolder/citra-qt.AppImage"
else else
return 1 return 1
fi fi
@ -28,7 +28,7 @@ Citra_install(){
#ApplyInitialSettings #ApplyInitialSettings
Citra_init(){ Citra_init(){
setMSG "Initializing $Citra_emuName settings." setMSG "Initializing $Citra_emuName settings."
configEmuAI "$Citra_emuName" "citra-emu" "$HOME/.config/citra-emu" "$EMUDECKGIT/configs/citra-emu" "true" configEmuAI "$Citra_emuName" "citra-emu" "$HOME/.config/citra-emu" "$emudeckBackend/configs/citra-emu" "true"
Citra_setEmulationFolder Citra_setEmulationFolder
Citra_setupStorage Citra_setupStorage
Citra_setupSaves Citra_setupSaves
@ -41,7 +41,7 @@ Citra_init(){
#update #update
Citra_update(){ Citra_update(){
setMSG "Updating $Citra_emuName settings." setMSG "Updating $Citra_emuName settings."
configEmuAI "$Citra_emuName" "citra-emu" "$HOME/.config/citra-emu" "$EMUDECKGIT/configs/citra-emu" configEmuAI "$Citra_emuName" "citra-emu" "$HOME/.config/citra-emu" "$emudeckBackend/configs/citra-emu"
Citra_setupStorage Citra_setupStorage
Citra_setEmulationFolder Citra_setEmulationFolder
Citra_setupSaves Citra_setupSaves
@ -219,8 +219,8 @@ Citra_resetConfig(){
Citra_addSteamInputProfile(){ Citra_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
setMSG "Adding $Citra_emuName Steam Input Profile." setMSG "Adding $Citra_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/citra_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/citra_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/"
} }
Citra_setResolution(){ Citra_setResolution(){
@ -253,7 +253,7 @@ Citra_flushSymlinks(){
echo "Steam install not found" echo "Steam install not found"
fi fi
if [ ! -f "$HOME/.config/EmuDeck/.citralegacysymlinks" ] && [ -f "$HOME/.config/EmuDeck/.citrasymlinks" ]; then if [ ! -f "$emudeckFolder/.citralegacysymlinks" ] && [ -f "$emudeckFolder/.citrasymlinks" ]; then
mkdir -p "$romsPath/n3ds" mkdir -p "$romsPath/n3ds"
# Temporary deletion to check if there are any additional contents in the n3ds folder. # Temporary deletion to check if there are any additional contents in the n3ds folder.
@ -295,14 +295,14 @@ Citra_flushSymlinks(){
fi fi
rsync -avh "$EMUDECKGIT/roms/n3ds/." "$romsPath/n3ds/." --ignore-existing rsync -avh "$emudeckBackend/roms/n3ds/." "$romsPath/n3ds/." --ignore-existing
if [ -d "$toolsPath/downloaded_media/n3ds" ] && [ ! -d "$romsPath/n3ds/media" ]; then if [ -d "$toolsPath/downloaded_media/n3ds" ] && [ ! -d "$romsPath/n3ds/media" ]; then
ln -s "$toolsPath/downloaded_media/n3ds" "$romsPath/n3ds/media" ln -s "$toolsPath/downloaded_media/n3ds" "$romsPath/n3ds/media"
fi fi
find "$STEAMPATH/userdata" -name "shortcuts.vdf" -exec sed -i "s|${romsPath}/3ds|${romsPath}/n3ds|g" {} + find "$STEAMPATH/userdata" -name "shortcuts.vdf" -exec sed -i "s|${romsPath}/3ds|${romsPath}/n3ds|g" {} +
touch "$HOME/.config/EmuDeck/.citralegacysymlinks" touch "$emudeckFolder/.citralegacysymlinks"
echo "Citra symlink cleanup completed." echo "Citra symlink cleanup completed."
else else
@ -310,7 +310,7 @@ Citra_flushSymlinks(){
fi fi
if [ ! -f "$HOME/.config/EmuDeck/.citrasymlinks" ]; then if [ ! -f "$emudeckFolder/.citrasymlinks" ]; then
mkdir -p "$romsPath/n3ds" mkdir -p "$romsPath/n3ds"
@ -352,14 +352,14 @@ Citra_flushSymlinks(){
fi fi
fi fi
rsync -avh "$EMUDECKGIT/roms/n3ds/." "$romsPath/n3ds/." --ignore-existing rsync -avh "$emudeckBackend/roms/n3ds/." "$romsPath/n3ds/." --ignore-existing
if [ -d "$toolsPath/downloaded_media/n3ds" ] && [ ! -d "$romsPath/n3ds/media" ]; then if [ -d "$toolsPath/downloaded_media/n3ds" ] && [ ! -d "$romsPath/n3ds/media" ]; then
ln -s "$toolsPath/downloaded_media/n3ds" "$romsPath/n3ds/media" ln -s "$toolsPath/downloaded_media/n3ds" "$romsPath/n3ds/media"
fi fi
find "$STEAMPATH/userdata" -name "shortcuts.vdf" -exec sed -i "s|${romsPath}/3ds|${romsPath}/n3ds|g" {} + find "$STEAMPATH/userdata" -name "shortcuts.vdf" -exec sed -i "s|${romsPath}/3ds|${romsPath}/n3ds|g" {} +
touch "$HOME/.config/EmuDeck/.citrasymlinks" touch "$emudeckFolder/.citrasymlinks"
echo "Citra symlink cleanup completed." echo "Citra symlink cleanup completed."
else else

View File

@ -182,7 +182,7 @@ Citra_resetConfig(){
Citra_addSteamInputProfile(){ Citra_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
rsync -r "$EMUDECKGIT/configs/steam-input/citra_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" rsync -r "$emudeckBackend/configs/steam-input/citra_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }
Citra_setResolution(){ Citra_setResolution(){

View File

@ -235,7 +235,7 @@ Dolphin_flushSymlinks(){
echo "Steam install not found" echo "Steam install not found"
fi fi
if [ ! -f "$HOME/.config/EmuDeck/.dolphinlegacysymlinks" ] && [ -f "$HOME/.config/EmuDeck/.dolphinsymlinks" ]; then if [ ! -f "$emudeckFolder/.dolphinlegacysymlinks" ] && [ -f "$emudeckFolder/.dolphinsymlinks" ]; then
mkdir -p "$romsPath/gc" mkdir -p "$romsPath/gc"
# Temporary deletion to check if there are any additional contents in the gc folder. # Temporary deletion to check if there are any additional contents in the gc folder.
@ -276,20 +276,20 @@ Dolphin_flushSymlinks(){
fi fi
fi fi
rsync -avh "$EMUDECKGIT/roms/gc/." "$romsPath/gc/." --ignore-existing rsync -avh "$emudeckBackend/roms/gc/." "$romsPath/gc/." --ignore-existing
if [ -d "$toolsPath/downloaded_media/gc" ] && [ ! -d "$romsPath/gc/media" ]; then if [ -d "$toolsPath/downloaded_media/gc" ] && [ ! -d "$romsPath/gc/media" ]; then
ln -s "$toolsPath/downloaded_media/gc" "$romsPath/gc/media" ln -s "$toolsPath/downloaded_media/gc" "$romsPath/gc/media"
fi fi
find "$STEAMPATH/userdata" -name "shortcuts.vdf" -exec sed -i "s|${romsPath}/gamecube|${romsPath}/gc|g" {} + find "$STEAMPATH/userdata" -name "shortcuts.vdf" -exec sed -i "s|${romsPath}/gamecube|${romsPath}/gc|g" {} +
touch "$HOME/.config/EmuDeck/.dolphinlegacysymlinks" touch "$emudeckFolder/.dolphinlegacysymlinks"
echo "Dolphin symlink cleanup completed." echo "Dolphin symlink cleanup completed."
else else
echo "Dolphin symlinks already cleaned." echo "Dolphin symlinks already cleaned."
fi fi
if [ ! -f "$HOME/.config/EmuDeck/.dolphinsymlinks" ]; then if [ ! -f "$emudeckFolder/.dolphinsymlinks" ]; then
mkdir -p "$romsPath/gc" mkdir -p "$romsPath/gc"
# Temporary deletion to check if there are any additional contents in the gc folder. # Temporary deletion to check if there are any additional contents in the gc folder.
@ -330,14 +330,14 @@ Dolphin_flushSymlinks(){
fi fi
fi fi
rsync -avh "$EMUDECKGIT/roms/gc/." "$romsPath/gc/." --ignore-existing rsync -avh "$emudeckBackend/roms/gc/." "$romsPath/gc/." --ignore-existing
if [ -d "$toolsPath/downloaded_media/gc" ] && [ ! -d "$romsPath/gc/media" ]; then if [ -d "$toolsPath/downloaded_media/gc" ] && [ ! -d "$romsPath/gc/media" ]; then
ln -s "$toolsPath/downloaded_media/gc" "$romsPath/gc/media" ln -s "$toolsPath/downloaded_media/gc" "$romsPath/gc/media"
fi fi
find "$STEAMPATH/userdata" -name "shortcuts.vdf" -exec sed -i "s|${romsPath}/gamecube|${romsPath}/gc|g" {} + find "$STEAMPATH/userdata" -name "shortcuts.vdf" -exec sed -i "s|${romsPath}/gamecube|${romsPath}/gc|g" {} +
touch "$HOME/.config/EmuDeck/.dolphinsymlinks" touch "$emudeckFolder/.dolphinsymlinks"
echo "Dolphin symlink cleanup completed." echo "Dolphin symlink cleanup completed."
else else

View File

@ -156,7 +156,7 @@ DuckStation_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
#echo "NYI" #echo "NYI"
#setMSG "Adding $DuckStation_emuName Steam Input Profile." #setMSG "Adding $DuckStation_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/duckstation_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/duckstation_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }
DuckStation_retroAchievementsOn(){ DuckStation_retroAchievementsOn(){
@ -176,8 +176,8 @@ DuckStation_retroAchievementsHardCoreOff(){
DuckStation_retroAchievementsSetLogin(){ DuckStation_retroAchievementsSetLogin(){
rau=$(cat "$HOME/.config/EmuDeck/.rau") rau=$(cat "$emudeckFolder/.rau")
rat=$(cat "$HOME/.config/EmuDeck/.rat") rat=$(cat "$emudeckFolder/.rat")
echo "Evaluate RetroAchievements Login." echo "Evaluate RetroAchievements Login."
if [ ${#rat} -lt 1 ]; then if [ ${#rat} -lt 1 ]; then
echo "--No token." echo "--No token."

View File

@ -142,7 +142,7 @@ Flycast_resetConfig(){
Flycast_addSteamInputProfile(){ Flycast_addSteamInputProfile(){
echo "NYI" echo "NYI"
# setMSG "Adding $Flycast_emuName Steam Input Profile." # setMSG "Adding $Flycast_emuName Steam Input Profile."
# rsync -r "$EMUDECKGIT/configs/steam-input/Flycast_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" # rsync -r "$emudeckBackend/configs/steam-input/Flycast_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }
Flycast_setResolution(){ Flycast_setResolution(){
@ -158,5 +158,5 @@ Flycast_flushEmulatorLauncher(){
Flycast_addSteamInputProfile(){ Flycast_addSteamInputProfile(){
setMSG "Adding $Flycast_emuName Steam Input Profile." setMSG "Adding $Flycast_emuName Steam Input Profile."
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/emudeck_steam_deck_light_gun_controls.vdf" "$HOME/.steam/steam/controller_base/templates/emudeck_steam_deck_light_gun_controls.vdf" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/emudeck_steam_deck_light_gun_controls.vdf" "$HOME/.steam/steam/controller_base/templates/emudeck_steam_deck_light_gun_controls.vdf"
} }

View File

@ -2,7 +2,7 @@
#variables #variables
Lime3DS_emuName="Lime3DS" Lime3DS_emuName="Lime3DS"
Lime3DS_emuType="$emuDeckEmuTypeAppImage" Lime3DS_emuType="$emuDeckEmuTypeAppImage"
Lime3DS_emuPath="$HOME/Applications/lime3ds-gui.AppImage" Lime3DS_emuPath="$emusFolder/lime3ds-gui.AppImage"
Lime3DS_releaseURL="" Lime3DS_releaseURL=""
Lime3DS_configFile="$HOME/.config/lime3ds-emu/qt-config.ini" Lime3DS_configFile="$HOME/.config/lime3ds-emu/qt-config.ini"
Lime3DS_configPath="$HOME/.config/lime3ds-emu" Lime3DS_configPath="$HOME/.config/lime3ds-emu"
@ -13,20 +13,20 @@ Lime3DS_install(){
echo "Begin $Lime3DS_emuName Install" echo "Begin $Lime3DS_emuName Install"
local showProgress="$1" local showProgress="$1"
if installEmuAI "$Lime3DS_emuName" "" "$(getReleaseURLGH "Lime3DS/lime3ds-archive" "tar.gz" "")" "lime3ds" "tar.gz" "emulator" "$showProgress"; then #lime3ds-gui.AppImage if installEmuAI "$Lime3DS_emuName" "" "$(getReleaseURLGH "Lime3DS/lime3ds-archive" "tar.gz" "")" "lime3ds" "tar.gz" "emulator" "$showProgress"; then #lime3ds-gui.AppImage
mkdir "$HOME/Applications/lime3ds-temp" mkdir "$emusFolder/lime3ds-temp"
tar -xvzf "$HOME/Applications/lime3ds.tar.gz" -C "$HOME/Applications/lime3ds-temp" --strip-components 1 tar -xvzf "$emusFolder/lime3ds.tar.gz" -C "$emusFolder/lime3ds-temp" --strip-components 1
if [ -f "$HOME/Applications/lime3ds-temp/lime3ds-gui.AppImage" ]; then if [ -f "$emusFolder/lime3ds-temp/lime3ds-gui.AppImage" ]; then
mv "$HOME/Applications/lime3ds-temp/lime3ds-gui.AppImage" "$Lime3DS_emuPath" mv "$emusFolder/lime3ds-temp/lime3ds-gui.AppImage" "$Lime3DS_emuPath"
elif [ -f "$HOME/Applications/lime3ds-temp/lime3ds.AppImage" ]; then elif [ -f "$emusFolder/lime3ds-temp/lime3ds.AppImage" ]; then
mv "$HOME/Applications/lime3ds-temp/lime3ds.AppImage" "$Lime3DS_emuPath" mv "$emusFolder/lime3ds-temp/lime3ds.AppImage" "$Lime3DS_emuPath"
else else
rm -rf "$HOME/Applications/lime3ds-temp" rm -rf "$emusFolder/lime3ds-temp"
rm -rf "$HOME/Applications/lime3ds.tar.gz" rm -rf "$emusFolder/lime3ds.tar.gz"
return 1 return 1
fi fi
chmod +x "$HOME/Applications/lime3ds-gui.AppImage" chmod +x "$emusFolder/lime3ds-gui.AppImage"
rm -rf "$HOME/Applications/lime3ds-temp" rm -rf "$emusFolder/lime3ds-temp"
rm -rf "$HOME/Applications/lime3ds.tar.gz" rm -rf "$emusFolder/lime3ds.tar.gz"
else else
return 1 return 1
fi fi
@ -35,7 +35,7 @@ Lime3DS_install(){
#ApplyInitialSettings #ApplyInitialSettings
Lime3DS_init(){ Lime3DS_init(){
setMSG "Initializing $Lime3DS_emuName settings." setMSG "Initializing $Lime3DS_emuName settings."
configEmuAI "$Lime3DS_emuName" "lime3ds-emu" "$Lime3DS_configPath" "$EMUDECKGIT/configs/lime3ds" "true" configEmuAI "$Lime3DS_emuName" "lime3ds-emu" "$Lime3DS_configPath" "$emudeckBackend/configs/lime3ds" "true"
Lime3DS_setEmulationFolder Lime3DS_setEmulationFolder
Lime3DS_setupStorage Lime3DS_setupStorage
Lime3DS_setupSaves Lime3DS_setupSaves
@ -47,7 +47,7 @@ Lime3DS_init(){
#update #update
Lime3DS_update(){ Lime3DS_update(){
setMSG "Updating $Lime3DS_emuName settings." setMSG "Updating $Lime3DS_emuName settings."
configEmuAI "$Lime3DS_emuName" "lime3ds-emu" "$Lime3DS_configPath" "$EMUDECKGIT/configs/lime3ds" configEmuAI "$Lime3DS_emuName" "lime3ds-emu" "$Lime3DS_configPath" "$emudeckBackend/configs/lime3ds"
Lime3DS_setupStorage Lime3DS_setupStorage
Lime3DS_setEmulationFolder Lime3DS_setEmulationFolder
Lime3DS_setupSaves Lime3DS_setupSaves
@ -265,8 +265,8 @@ Lime3DS_resetConfig(){
Lime3DS_addSteamInputProfile(){ Lime3DS_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
setMSG "Adding $Lime3DS_emuName Steam Input Profile." setMSG "Adding $Lime3DS_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/Lime3DS_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/Lime3DS_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/"
} }
Lime3DS_setResolution(){ Lime3DS_setResolution(){

View File

@ -23,7 +23,7 @@ Mame_install(){
#ApplyInitialSettings #ApplyInitialSettings
MAME_init(){ MAME_init(){
configEmuAI "${MAME_emuName}" "mame" "$HOME/.mame" "${EMUDECKGIT}/configs/mame" "true" configEmuAI "${MAME_emuName}" "mame" "$HOME/.mame" "$emudeckBackend/configs/mame" "true"
MAME_setupStorage MAME_setupStorage
MAME_setEmulationFolder MAME_setEmulationFolder
MAME_setupSaves MAME_setupSaves
@ -50,7 +50,7 @@ MAME_init(){
#update #update
MAME_update(){ MAME_update(){
configEmuAI "${MAME_emuName}" "mame" "$HOME/.mame" "${EMUDECKGIT}/configs/mame" configEmuAI "${MAME_emuName}" "mame" "$HOME/.mame" "$emudeckBackend/configs/mame"
updateEmuFP "${MAME_emuName}" "${MAME_emuPath}" "emulator" "" updateEmuFP "${MAME_emuName}" "${MAME_emuPath}" "emulator" ""
MAME_setupStorage MAME_setupStorage
MAME_setEmulationFolder MAME_setEmulationFolder
@ -190,5 +190,5 @@ MAME_flushEmulatorLauncher(){
MAME_addSteamInputProfile(){ MAME_addSteamInputProfile(){
setMSG "Adding $MAME_emuName Steam Input Profile." setMSG "Adding $MAME_emuName Steam Input Profile."
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/emudeck_steam_deck_light_gun_controls.vdf" "$HOME/.steam/steam/controller_base/templates/emudeck_steam_deck_light_gun_controls.vdf" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/emudeck_steam_deck_light_gun_controls.vdf" "$HOME/.steam/steam/controller_base/templates/emudeck_steam_deck_light_gun_controls.vdf"
} }

View File

@ -2,7 +2,7 @@
#variables #variables
mGBA_emuName="mGBA" mGBA_emuName="mGBA"
mGBA_emuType="$emuDeckEmuTypeAppImage" mGBA_emuType="$emuDeckEmuTypeAppImage"
mGBA_emuPath="$HOME/Applications/mGBA.AppImage" mGBA_emuPath="$emusFolder/mGBA.AppImage"
mGBA_configFile="$HOME/.config/mgba/config.ini" mGBA_configFile="$HOME/.config/mgba/config.ini"
#cleanupOlderThings #cleanupOlderThings
@ -30,7 +30,7 @@ Mgba_install(){
#ApplyInitialSettings #ApplyInitialSettings
mGBA_init(){ mGBA_init(){
setMSG "Initializing $mGBA_emuName settings." setMSG "Initializing $mGBA_emuName settings."
configEmuAI "$mGBA_emuName" "config" "$HOME/.config/mgba" "$EMUDECKGIT/configs/mgba" "true" configEmuAI "$mGBA_emuName" "config" "$HOME/.config/mgba" "$emudeckBackend/configs/mgba" "true"
mGBA_setupStorage mGBA_setupStorage
mGBA_setEmulationFolder mGBA_setEmulationFolder
mGBA_setupSaves mGBA_setupSaves
@ -42,7 +42,7 @@ mGBA_init(){
#update #update
mGBA_update(){ mGBA_update(){
setMSG "Updating $mGBA_emuName settings." setMSG "Updating $mGBA_emuName settings."
configEmuAI "$mGBA_emuName" "config" "$HOME/.config/mgba" "$EMUDECKGIT/configs/mgba" configEmuAI "$mGBA_emuName" "config" "$HOME/.config/mgba" "$emudeckBackend/configs/mgba"
mGBA_setupStorage mGBA_setupStorage
mGBA_setEmulationFolder mGBA_setEmulationFolder
mGBA_setupSaves mGBA_setupSaves
@ -150,8 +150,8 @@ mGBA_finalize(){
mGBA_addSteamInputProfile(){ mGBA_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
setMSG "Adding $mGBA_emuName Steam Input Profile." setMSG "Adding $mGBA_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/mGBA_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/mGBA_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/"
} }
mGBA_flushEmulatorLauncher(){ mGBA_flushEmulatorLauncher(){

View File

@ -161,8 +161,8 @@ melonDS_resetConfig(){
melonDS_addSteamInputProfile(){ melonDS_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
setMSG "Adding $melonDS_emuName Steam Input Profile." setMSG "Adding $melonDS_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/melonds_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/melonds_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/"
} }
melonDS_setResolution(){ melonDS_setResolution(){

View File

@ -32,9 +32,9 @@ Model2_install(){
return 1 return 1
fi fi
cp "$EMUDECKGIT/tools/launchers/model-2-emulator.sh" "$toolsPath/launchers/model-2-emulator.sh" cp "$emudeckBackend/tools/launchers/model-2-emulator.sh" "$toolsPath/launchers/model-2-emulator.sh"
cp "$EMUDECKGIT/tools/launchers/model-2-emulator.sh" "$romsPath/model2/model-2-emulator.sh" cp "$emudeckBackend/tools/launchers/model-2-emulator.sh" "$romsPath/model2/model-2-emulator.sh"
cp "$EMUDECKGIT/tools/launchers/model-2-emulator.sh" "$romsPath/emulators/model-2-emulator.sh" cp "$emudeckBackend/tools/launchers/model-2-emulator.sh" "$romsPath/emulators/model-2-emulator.sh"
chmod +x "$toolsPath/launchers/model-2-emulator.sh" chmod +x "$toolsPath/launchers/model-2-emulator.sh"
chmod +x "$romsPath/emulators/model-2-emulator.sh" chmod +x "$romsPath/emulators/model-2-emulator.sh"
@ -51,7 +51,7 @@ Model2_install(){
#ApplyInitialSettings #ApplyInitialSettings
Model2_init(){ Model2_init(){
setMSG "Initializing $Model2_emuName settings." setMSG "Initializing $Model2_emuName settings."
rsync -avhp "$EMUDECKGIT/configs/model2/" "${romsPath}/model2" --backup --suffix=.bak rsync -avhp "$emudeckBackend/configs/model2/" "${romsPath}/model2" --backup --suffix=.bak
Model2_downloadProtonGE Model2_downloadProtonGE
Model2ULWGL_install Model2ULWGL_install
#SRM_createParsers #SRM_createParsers
@ -96,7 +96,7 @@ Model2_addESConfig(){
#update #update
Model2_update(){ Model2_update(){
setMSG "Updating $Model2_emuName settings." setMSG "Updating $Model2_emuName settings."
rsync -avhp "$EMUDECKGIT/configs/model2/" "${romsPath}/model2" --ignore-existing rsync -avhp "$emudeckBackend/configs/model2/" "${romsPath}/model2" --ignore-existing
Model2ULWGL_install Model2ULWGL_install
Model2_flushEmulatorLauncher Model2_flushEmulatorLauncher
Model2_addSteamInputProfile Model2_addSteamInputProfile
@ -220,5 +220,5 @@ Model2_flushEmulatorLauncher(){
Model2_addSteamInputProfile(){ Model2_addSteamInputProfile(){
setMSG "Adding $Model2_emuName Steam Input Profile." setMSG "Adding $Model2_emuName Steam Input Profile."
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/emudeck_steam_deck_light_gun_controls.vdf" "$HOME/.steam/steam/controller_base/templates/emudeck_steam_deck_light_gun_controls.vdf" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/emudeck_steam_deck_light_gun_controls.vdf" "$HOME/.steam/steam/controller_base/templates/emudeck_steam_deck_light_gun_controls.vdf"
} }

View File

@ -2,7 +2,7 @@
#variables #variables
PCSX2QT_emuName="PCSX2-QT" PCSX2QT_emuName="PCSX2-QT"
PCSX2QT_emuType="$emuDeckEmuTypeAppImage" PCSX2QT_emuType="$emuDeckEmuTypeAppImage"
PCSX2QT_emuPath="$HOME/Applications/pcsx2-Qt.AppImage" PCSX2QT_emuPath="$emusFolder/pcsx2-Qt.AppImage"
PCSX2QT_configFile="$HOME/.config/PCSX2/inis/PCSX2.ini" PCSX2QT_configFile="$HOME/.config/PCSX2/inis/PCSX2.ini"
#cleanupOlderThings #cleanupOlderThings
@ -37,7 +37,7 @@ PCSX2QT_init() {
if ! "$PCSX2QT_emuPath" -testconfig; then # try to generate the config file. if it fails, insert one as a fallback. if ! "$PCSX2QT_emuPath" -testconfig; then # try to generate the config file. if it fails, insert one as a fallback.
#fallback #fallback
configEmuAI "$PCSX2QT_emuName" "config" "$HOME/.config/PCSX2" "$EMUDECKGIT/configs/pcsx2qt/.config/PCSX2" "true" configEmuAI "$PCSX2QT_emuName" "config" "$HOME/.config/PCSX2" "$emudeckBackend/configs/pcsx2qt/.config/PCSX2" "true"
fi fi
PCSX2QT_setEmulationFolder PCSX2QT_setEmulationFolder
@ -56,7 +56,7 @@ PCSX2QT_init() {
#update #update
PCSX2QT_update() { PCSX2QT_update() {
setMSG "Updating $PCSX2QT_emuName settings." setMSG "Updating $PCSX2QT_emuName settings."
configEmuAI "$PCSX2QT_emuName" "config" "$HOME/.config/PCSX2" "$EMUDECKGIT/configs/pcsx2qt/.config/PCSX2" configEmuAI "$PCSX2QT_emuName" "config" "$HOME/.config/PCSX2" "$emudeckBackend/configs/pcsx2qt/.config/PCSX2"
PCSX2QT_setEmulationFolder PCSX2QT_setEmulationFolder
PCSX2QT_setupStorage PCSX2QT_setupStorage
PCSX2QT_setupSaves PCSX2QT_setupSaves
@ -295,8 +295,8 @@ PCSX2QT_retroAchievementsHardCoreOff() {
} }
PCSX2QT_retroAchievementsSetLogin() { PCSX2QT_retroAchievementsSetLogin() {
rau=$(cat "$HOME/.config/EmuDeck/.rau") rau=$(cat "$emudeckFolder/.rau")
rat=$(cat "$HOME/.config/EmuDeck/.rat") rat=$(cat "$emudeckFolder/.rat")
echo "Evaluate RetroAchievements Login." echo "Evaluate RetroAchievements Login."
if [ ${#rat} -lt 1 ]; then if [ ${#rat} -lt 1 ]; then
echo "--No token." echo "--No token."

View File

@ -137,8 +137,8 @@ PPSSPP_retroAchievementsHardCoreOff() {
PPSSPP_retroAchievementsSetLogin() { PPSSPP_retroAchievementsSetLogin() {
# EmuDeck username and token files # EmuDeck username and token files
rau=$(cat "$HOME/.config/EmuDeck/.rau") rau=$(cat "$emudeckFolder/.rau")
rat=$(cat "$HOME/.config/EmuDeck/.rat") rat=$(cat "$emudeckFolder/.rat")
# Create PPSSPP token file # Create PPSSPP token file
PPSSPP_token="$HOME/.var/app/${PPSSPP_emuPath}/config/ppsspp/PSP/SYSTEM/ppsspp_retroachievements.dat" PPSSPP_token="$HOME/.var/app/${PPSSPP_emuPath}/config/ppsspp/PSP/SYSTEM/ppsspp_retroachievements.dat"
@ -180,7 +180,7 @@ PPSSPP_setRetroAchievements(){
PPSSPP_addSteamInputProfile(){ PPSSPP_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
#setMSG "Adding $PPSSPP_emuName Steam Input Profile." #setMSG "Adding $PPSSPP_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/ppsspp_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/ppsspp_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }
PPSSPP_setResolution(){ PPSSPP_setResolution(){

View File

@ -178,7 +178,7 @@ RMG_resetConfig(){
RMG_addSteamInputProfile(){ RMG_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
#setMSG "Adding $RMG_emuName Steam Input Profile." #setMSG "Adding $RMG_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/rmg_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/rmg_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }
#finalExec - Extra stuff #finalExec - Extra stuff

View File

@ -2,10 +2,10 @@
#variables #variables
RPCS3_emuName="RPCS3" RPCS3_emuName="RPCS3"
RPCS3_emuType="$emuDeckEmuTypeAppImage" RPCS3_emuType="$emuDeckEmuTypeAppImage"
RPCS3_emuPath="$HOME/Applications/rpcs3.AppImage" RPCS3_emuPath="$emusFolder/rpcs3.AppImage"
RPCS3_emuPathFlatpak="net.rpcs3.RPCS3" RPCS3_emuPathFlatpak="net.rpcs3.RPCS3"
RPCS3_VFSConf="$HOME/.config/rpcs3/vfs.yml" RPCS3_VFSConf="$HOME/.config/rpcs3/vfs.yml"
RPCS3_migrationFlag="$HOME/.config/EmuDeck/.${RPCS3_emuName}MigrationCompleted" RPCS3_migrationFlag="$emudeckFolder/.${RPCS3_emuName}MigrationCompleted"
RPCS3_configFile="$HOME/.config/rpcs3/config.yml" RPCS3_configFile="$HOME/.config/rpcs3/config.yml"
declare -A RPCS3_languages declare -A RPCS3_languages
@ -146,7 +146,7 @@ RPCS3_install(){
#ApplyInitialSettings #ApplyInitialSettings
RPCS3_init(){ RPCS3_init(){
RPCS3_migrate RPCS3_migrate
configEmuAI "$RPCS3_emuName" "config" "$HOME/.config/rpcs3" "$EMUDECKGIT/configs/rpcs3" "true" configEmuAI "$RPCS3_emuName" "config" "$HOME/.config/rpcs3" "$emudeckBackend/configs/rpcs3" "true"
RPCS3_setupStorage RPCS3_setupStorage
RPCS3_setEmulationFolder RPCS3_setEmulationFolder
RPCS3_setupSaves RPCS3_setupSaves
@ -169,7 +169,7 @@ RPCS3_setLanguage(){
#update #update
RPCS3_update(){ RPCS3_update(){
RPCS3_migrate RPCS3_migrate
configEmuAI "$RPCS3_emuName" "config" "$HOME/.config/rpcs3" "$EMUDECKGIT/configs/rpcs3" configEmuAI "$RPCS3_emuName" "config" "$HOME/.config/rpcs3" "$emudeckBackend/configs/rpcs3"
RPCS3_setupStorage RPCS3_setupStorage
RPCS3_setEmulationFolder RPCS3_setEmulationFolder
RPCS3_setupSaves RPCS3_setupSaves

View File

@ -2457,16 +2457,16 @@ RetroArch_retroAchievementsPromptLogin(){
ans=$? ans=$?
if [ $ans -eq 0 ]; then if [ $ans -eq 0 ]; then
echo "RetroAchievment Login" echo "RetroAchievment Login"
echo "$RAInput" | awk -F "," '{print $1}' > "$HOME/.config/EmuDeck/.rau" echo "$RAInput" | awk -F "," '{print $1}' > "$emudeckFolder/.rau"
echo "$RAInput" | awk -F "," '{print $2}' > "$HOME/.config/EmuDeck/.rap" echo "$RAInput" | awk -F "," '{print $2}' > "$emudeckFolder/.rap"
else else
echo "Cancel RetroAchievment Login" echo "Cancel RetroAchievment Login"
fi fi
} }
RetroArch_retroAchievementsSetLogin(){ RetroArch_retroAchievementsSetLogin(){
rm -rf "$HOME/.config/EmuDeck/.rap" rm -rf "$emudeckFolder/.rap"
rau=$(cat "$HOME/.config/EmuDeck/.rau") rau=$(cat "$emudeckFolder/.rau")
rat=$(cat "$HOME/.config/EmuDeck/.rat") rat=$(cat "$emudeckFolder/.rat")
echo "Evaluate RetroAchievements Login." echo "Evaluate RetroAchievements Login."
if [ ${#rat} -lt 1 ]; then if [ ${#rat} -lt 1 ]; then
echo "--No token." echo "--No token."

View File

@ -3,7 +3,7 @@
#variables #variables
Ryujinx_emuName="Ryujinx" Ryujinx_emuName="Ryujinx"
Ryujinx_emuType="$emuDeckEmuTypeBinary" Ryujinx_emuType="$emuDeckEmuTypeBinary"
Ryujinx_emuPath="$HOME/Applications/publish" Ryujinx_emuPath="$emusFolder/publish"
Ryujinx_configFile="$HOME/.config/Ryujinx/Config.json" Ryujinx_configFile="$HOME/.config/Ryujinx/Config.json"
# https://github.com/Ryujinx/Ryujinx/blob/master/Ryujinx.Ui.Common/Configuration/System/Language.cs#L3-L23 # https://github.com/Ryujinx/Ryujinx/blob/master/Ryujinx.Ui.Common/Configuration/System/Language.cs#L3-L23
Ryujinx_controllerFile="$HOME/.config/Ryujinx/profiles/controller/Deck.json" Ryujinx_controllerFile="$HOME/.config/Ryujinx/profiles/controller/Deck.json"
@ -50,18 +50,18 @@ Ryujinx_install(){
echo "Begin Ryujinx Install" echo "Begin Ryujinx Install"
local showProgress=$1 local showProgress=$1
if installEmuBI "$Ryujinx_emuName" "$(getReleaseURLGH "Ryubing/Ryujinx" "-linux_x64.tar.gz")" "" "tar.gz" "$showProgress"; then if installEmuBI "$Ryujinx_emuName" "$(getReleaseURLGH "Ryubing/Ryujinx" "-linux_x64.tar.gz")" "" "tar.gz" "$showProgress"; then
mkdir -p "$HOME/Applications/publish" mkdir -p "$emusFolder/publish"
tar -xvf "$HOME/Applications/Ryujinx.tar.gz" -C "$HOME/Applications" && rm -rf "$HOME/Applications/Ryujinx.tar.gz" tar -xvf "$emusFolder/Ryujinx.tar.gz" -C "$emusFolder" && rm -rf "$emusFolder/Ryujinx.tar.gz"
chmod +x "$HOME/Applications/publish/Ryujinx" chmod +x "$emusFolder/publish/Ryujinx"
else else
return 1 return 1
fi fi
# flatpak install flathub org.ryujinx.Ryujinx -y --user # flatpak install flathub org.ryujinx.Ryujinx -y --user
# mkdir -p "$HOME/Applications/publish" # mkdir -p "$emusFolder/publish"
# rsync -av "$HOME/.local/share/flatpak/app/org.ryujinx.Ryujinx/x86_64/stable/active/files/bin/" "$HOME/Applications/publish/" && flatpak uninstall flathub org.ryujinx.Ryujinx -y --user # rsync -av "$HOME/.local/share/flatpak/app/org.ryujinx.Ryujinx/x86_64/stable/active/files/bin/" "$emusFolder/publish/" && flatpak uninstall flathub org.ryujinx.Ryujinx -y --user
# rm -rf "$HOME/.config/Ryujinx/games" # rm -rf "$HOME/.config/Ryujinx/games"
# chmod +x "$HOME/Applications/publish/Ryujinx" # chmod +x "$emusFolder/publish/Ryujinx"
} }
@ -69,7 +69,7 @@ Ryujinx_install(){
Ryujinx_init(){ Ryujinx_init(){
echo "Begin Ryujinx Init" echo "Begin Ryujinx Init"
configEmuAI "Ryujinx" "config" "$HOME/.config/Ryujinx" "$EMUDECKGIT/configs/Ryujinx" "true" configEmuAI "Ryujinx" "config" "$HOME/.config/Ryujinx" "$emudeckBackend/configs/Ryujinx" "true"
Ryujinx_setEmulationFolder Ryujinx_setEmulationFolder
Ryujinx_setupStorage Ryujinx_setupStorage
@ -92,7 +92,7 @@ Ryujinx_init(){
Ryujinx_update(){ Ryujinx_update(){
echo "Begin Ryujinx update" echo "Begin Ryujinx update"
configEmuAI "yuzu" "config" "$HOME/.config/Ryujinx" "$EMUDECKGIT/configs/Ryujinx" configEmuAI "yuzu" "config" "$HOME/.config/Ryujinx" "$emudeckBackend/configs/Ryujinx"
Ryujinx_setEmulationFolder Ryujinx_setEmulationFolder
Ryujinx_setupStorage Ryujinx_setupStorage
@ -207,7 +207,7 @@ Ryujinx_uninstall(){
Ryujinx_migrate(){ Ryujinx_migrate(){
echo "Begin Ryujinx Migration" echo "Begin Ryujinx Migration"
emu="Ryujinx" emu="Ryujinx"
# migrationFlag="$HOME/.config/EmuDeck/.${emu}MigrationCompleted" # migrationFlag="$emudeckFolder/.${emu}MigrationCompleted"
# #check if we have a nomigrateflag for $emu # #check if we have a nomigrateflag for $emu
# if [ ! -f "$migrationFlag" ]; then # if [ ! -f "$migrationFlag" ]; then
# #yuzu flatpak to appimage # #yuzu flatpak to appimage

View File

@ -6,7 +6,7 @@
ShadPS4_emuName="ShadPS4" ShadPS4_emuName="ShadPS4"
ShadPS4_emuType="$emuDeckEmuTypeAppImage" ShadPS4_emuType="$emuDeckEmuTypeAppImage"
ShadPS4_emuPath="$HOME/Applications" ShadPS4_emuPath="$emusFolder"
ShadPS4_dir="$HOME/.local/share/shadPS4" ShadPS4_dir="$HOME/.local/share/shadPS4"
ShadPS4_configFile="$ShadPS4_dir/config.toml" ShadPS4_configFile="$ShadPS4_dir/config.toml"
@ -20,7 +20,7 @@ ShadPS4_install(){
local showProgress=$1 local showProgress=$1
if installEmuAI "$ShadPS4_emuName" "" "$(getReleaseURLGH "shadps4-emu/shadPS4" "zip" "linux-qt")" "" "zip" "emulator" "$showProgress"; then if installEmuAI "$ShadPS4_emuName" "" "$(getReleaseURLGH "shadps4-emu/shadPS4" "zip" "linux-qt")" "" "zip" "emulator" "$showProgress"; then
unzip -o "$HOME/Applications/ShadPS4.zip" -d "$ShadPS4_emuPath" && rm -rf "$HOME/Applications/ShadPS4.zip" unzip -o "$emusFolder/ShadPS4.zip" -d "$ShadPS4_emuPath" && rm -rf "$emusFolder/ShadPS4.zip"
chmod +x "$ShadPS4_emuPath/publish/Shadps4-qt.AppImage" chmod +x "$ShadPS4_emuPath/publish/Shadps4-qt.AppImage"
else else
return 1 return 1
@ -29,7 +29,7 @@ ShadPS4_install(){
ShadPS4_init(){ ShadPS4_init(){
configEmuAI "$ShadPS4_emuName" "config" "$HOME/.local/share/shadPS4" "$EMUDECKGIT/configs/shadps4" "true" configEmuAI "$ShadPS4_emuName" "config" "$HOME/.local/share/shadPS4" "$emudeckBackend/configs/shadps4" "true"
ShadPS4_setupStorage ShadPS4_setupStorage
ShadPS4_setEmulationFolder ShadPS4_setEmulationFolder
ShadPS4_setupSaves ShadPS4_setupSaves

View File

@ -22,8 +22,8 @@ Supermodel_install(){
Supermodel_init(){ Supermodel_init(){
# Flatpak does not install to flatpak directory # Flatpak does not install to flatpak directory
mkdir -p $HOME/.supermodel/Analysis $HOME/.supermodel/Log mkdir -p $HOME/.supermodel/Analysis $HOME/.supermodel/Log
rsync -avhp --mkpath "$EMUDECKGIT/configs/supermodel/Config/Supermodel.ini" "$HOME/.supermodel/Config/Supermodel.ini" --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/configs/supermodel/Config/Supermodel.ini" "$HOME/.supermodel/Config/Supermodel.ini" --backup --suffix=.bak
rsync -avhp --mkpath "$EMUDECKGIT/configs/supermodel/." "$HOME/.supermodel/." --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/configs/supermodel/." "$HOME/.supermodel/." --backup --suffix=.bak
# Download updated gamelist from source # Download updated gamelist from source
if [ -e "$HOME/.supermodel/Config/Games.xml" ]; then if [ -e "$HOME/.supermodel/Config/Games.xml" ]; then
rm -rf "$HOME/.supermodel/Config/Games.xml" rm -rf "$HOME/.supermodel/Config/Games.xml"
@ -41,7 +41,7 @@ Supermodel_init(){
Supermodel_update(){ Supermodel_update(){
# Flatpak does not install to flatpak directory # Flatpak does not install to flatpak directory
mkdir -p $HOME/.supermodel/Analysis $HOME/.supermodel/Log mkdir -p $HOME/.supermodel/Analysis $HOME/.supermodel/Log
rsync -avhp --mkpath "$EMUDECKGIT/configs/supermodel" "$HOME/.supermodel/" --ignore-existing rsync -avhp --mkpath "$emudeckBackend/configs/supermodel" "$HOME/.supermodel/" --ignore-existing
# Download updated gamelist from source # Download updated gamelist from source
if [ -e "$HOME/.supermodel/Config/Games.xml" ]; then if [ -e "$HOME/.supermodel/Config/Games.xml" ]; then
rm -rf "$HOME/.supermodel/Config/Games.xml" rm -rf "$HOME/.supermodel/Config/Games.xml"
@ -136,5 +136,5 @@ Supermodel_flushEmulatorLauncher(){
Supermodel_addSteamInputProfile(){ Supermodel_addSteamInputProfile(){
setMSG "Adding $Supermodel_emuName Steam Input Profile." setMSG "Adding $Supermodel_emuName Steam Input Profile."
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/emudeck_steam_deck_light_gun_controls.vdf" "$HOME/.steam/steam/controller_base/templates/emudeck_steam_deck_light_gun_controls.vdf" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/emudeck_steam_deck_light_gun_controls.vdf" "$HOME/.steam/steam/controller_base/templates/emudeck_steam_deck_light_gun_controls.vdf"
} }

View File

@ -3,7 +3,7 @@
#variables #variables
suyu_emuName="suyu" suyu_emuName="suyu"
suyu_emuType="$emuDeckEmuTypeAppImage" suyu_emuType="$emuDeckEmuTypeAppImage"
suyu_emuPath="$HOME/Applications/suyu.AppImage" suyu_emuPath="$emusFolder/suyu.AppImage"
suyu_configFile="$HOME/.config/suyu/qt-config.ini" suyu_configFile="$HOME/.config/suyu/qt-config.ini"
@ -61,15 +61,15 @@ suyu_install() {
suyu_init() { suyu_init() {
echo "Begin suyu Init" echo "Begin suyu Init"
cp "$EMUDECKGIT/tools/launchers/suyu.sh" "$toolsPath/launchers/suyu.sh" cp "$emudeckBackend/tools/launchers/suyu.sh" "$toolsPath/launchers/suyu.sh"
chmod +x "$toolsPath/launchers/suyu.sh" chmod +x "$toolsPath/launchers/suyu.sh"
mkdir -p "$HOME/.config/suyu" mkdir -p "$HOME/.config/suyu"
mkdir -p "$HOME/.local/share/suyu" mkdir -p "$HOME/.local/share/suyu"
rsync -avhp "$EMUDECKGIT/configs/org.suyu_emu.suyu/config/suyu/." "$HOME/.config/suyu" rsync -avhp "$emudeckBackend/configs/org.suyu_emu.suyu/config/suyu/." "$HOME/.config/suyu"
rsync -avhp "$EMUDECKGIT/configs/org.suyu_emu.suyu/data/suyu/." "$HOME/.local/share/suyu" rsync -avhp "$emudeckBackend/configs/org.suyu_emu.suyu/data/suyu/." "$HOME/.local/share/suyu"
suyu_migrate suyu_migrate
configEmuAI "$suyu_emuName" "config" "$HOME/.config/suyu" "$EMUDECKGIT/configs/org.suyu_emu.suyu/config/suyu" "true" configEmuAI "$suyu_emuName" "config" "$HOME/.config/suyu" "$emudeckBackend/configs/org.suyu_emu.suyu/config/suyu" "true"
configEmuAI "$suyu_emuName" "data" "$HOME/.local/share/suyu" "$EMUDECKGIT/configs/org.suyu_emu.suyu/data/suyu" "true" configEmuAI "$suyu_emuName" "data" "$HOME/.local/share/suyu" "$emudeckBackend/configs/org.suyu_emu.suyu/data/suyu" "true"
suyu_setEmulationFolder suyu_setEmulationFolder
suyu_setupStorage suyu_setupStorage
@ -97,8 +97,8 @@ suyu_update() {
suyu_migrate suyu_migrate
configEmuAI "$suyu_emuName" "config" "$HOME/.config/suyu" "$EMUDECKGIT/configs/org.suyu_emu.suyu/config/suyu" configEmuAI "$suyu_emuName" "config" "$HOME/.config/suyu" "$emudeckBackend/configs/org.suyu_emu.suyu/config/suyu"
configEmuAI "$suyu_emuName" "data" "$HOME/.local/share/suyu" "$EMUDECKGIT/configs/org.suyu_emu.suyu/data/suyu" configEmuAI "$suyu_emuName" "data" "$HOME/.local/share/suyu" "$emudeckBackend/configs/org.suyu_emu.suyu/data/suyu"
suyu_setEmulationFolder suyu_setEmulationFolder
suyu_setupStorage suyu_setupStorage
@ -210,7 +210,7 @@ suyu_uninstall() {
#Migrate #Migrate
suyu_migrate() { suyu_migrate() {
echo "Begin suyu Migration" echo "Begin suyu Migration"
migrationFlag="$HOME/.config/EmuDeck/.${suyu_emuName}MigrationCompleted" migrationFlag="$emudeckFolder/.${suyu_emuName}MigrationCompleted"
#check if we have a nomigrateflag for $emu #check if we have a nomigrateflag for $emu
if [ ! -f "$migrationFlag" ]; then if [ ! -f "$migrationFlag" ]; then
#suyu flatpak to appimage #suyu flatpak to appimage
@ -305,7 +305,7 @@ suyuEA_install() {
if safeDownload "suyu-ea" "$fileToDownload" "${suyuEA_emuPath}" "$showProgress" "Authorization: Bearer ${BEARERTOKEN}"; then if safeDownload "suyu-ea" "$fileToDownload" "${suyuEA_emuPath}" "$showProgress" "Authorization: Bearer ${BEARERTOKEN}"; then
chmod +x "$suyuEA_emuPath" chmod +x "$suyuEA_emuPath"
cp -v "${EMUDECKGIT}/tools/launchers/suyu.sh" "${toolsPath}/launchers/" &>/dev/null cp -v "$emudeckBackend/tools/launchers/suyu.sh" "${toolsPath}/launchers/" &>/dev/null
chmod +x "${toolsPath}/launchers/suyu.sh" chmod +x "${toolsPath}/launchers/suyu.sh"
echo "true" echo "true"
return 0 return 0

View File

@ -3,7 +3,7 @@
#variables #variables
Vita3K_emuName="Vita3K" Vita3K_emuName="Vita3K"
Vita3K_emuType="$emuDeckEmuTypeBinary" Vita3K_emuType="$emuDeckEmuTypeBinary"
Vita3K_emuPath="$HOME/Applications/Vita3K" Vita3K_emuPath="$emusFolder/Vita3K"
Vita3K_configFile="$HOME/.config/Vita3K/config.yml" Vita3K_configFile="$HOME/.config/Vita3K/config.yml"
#cleanupOlderThings #cleanupOlderThings
@ -17,7 +17,7 @@ Vita3K_install(){
local showProgress="$1" local showProgress="$1"
#if installEmuBI "Vita3K" "https://github.com/Vita3K/Vita3K/releases/download/continuous/ubuntu-latest.zip" "Vita3K" "zip" "$showProgress"; then #if installEmuBI "Vita3K" "https://github.com/Vita3K/Vita3K/releases/download/continuous/ubuntu-latest.zip" "Vita3K" "zip" "$showProgress"; then
if installEmuBI "$Vita3K_emuName" "$(getReleaseURLGH "Vita3K/Vita3K" "ubuntu-latest.zip")" "" "zip" "$showProgress"; then if installEmuBI "$Vita3K_emuName" "$(getReleaseURLGH "Vita3K/Vita3K" "ubuntu-latest.zip")" "" "zip" "$showProgress"; then
unzip -o "$HOME/Applications/Vita3K.zip" -d "$Vita3K_emuPath" && rm -rf "$HOME/Applications/Vita3K.zip" unzip -o "$emusFolder/Vita3K.zip" -d "$Vita3K_emuPath" && rm -rf "$emusFolder/Vita3K.zip"
chmod +x "$Vita3K_emuPath/Vita3K" chmod +x "$Vita3K_emuPath/Vita3K"
else else
return 1 return 1
@ -33,7 +33,7 @@ Vita3k_install(){
Vita3K_init(){ Vita3K_init(){
echo "Begin Vita3K Init" echo "Begin Vita3K Init"
configEmuAI "Vita3K" "config" "$HOME/.config/Vita3K" "$EMUDECKGIT/configs/Vita3K" "true" configEmuAI "Vita3K" "config" "$HOME/.config/Vita3K" "$emudeckBackend/configs/Vita3K" "true"
Vita3K_setEmulationFolder Vita3K_setEmulationFolder
Vita3K_setupStorage Vita3K_setupStorage
Vita3K_setupSaves #? Vita3K_setupSaves #?
@ -46,7 +46,7 @@ Vita3K_init(){
Vita3K_update(){ Vita3K_update(){
echo "Begin Vita3K update" echo "Begin Vita3K update"
configEmuAI "Vita3K" "config" "$HOME/.config/Vita3K" "$EMUDECKGIT/configs/Vita3K" configEmuAI "Vita3K" "config" "$HOME/.config/Vita3K" "$emudeckBackend/configs/Vita3K"
Vita3K_setEmulationFolder Vita3K_setEmulationFolder
Vita3K_setupStorage Vita3K_setupStorage

View File

@ -41,9 +41,9 @@ Xenia_install(){
return 1 return 1
fi fi
cp "$EMUDECKGIT/tools/launchers/xenia.sh" "${toolsPath}/launchers/xenia.sh" cp "$emudeckBackend/tools/launchers/xenia.sh" "${toolsPath}/launchers/xenia.sh"
cp "$EMUDECKGIT/tools/launchers/xenia.sh" "$romsPath/emulators/xenia.sh" cp "$emudeckBackend/tools/launchers/xenia.sh" "$romsPath/emulators/xenia.sh"
cp "$EMUDECKGIT/tools/launchers/xenia.sh" "$romsPath/xbox360/xenia.sh" cp "$emudeckBackend/tools/launchers/xenia.sh" "$romsPath/xbox360/xenia.sh"
sed -i "s|/run/media/mmcblk0p1/Emulation/tools|${toolsPath}|g" "${toolsPath}/launchers/xenia.sh" sed -i "s|/run/media/mmcblk0p1/Emulation/tools|${toolsPath}|g" "${toolsPath}/launchers/xenia.sh"
sed -i "s|/run/media/mmcblk0p1/Emulation/roms|${romsPath}|" "${toolsPath}/launchers/xenia.sh" sed -i "s|/run/media/mmcblk0p1/Emulation/roms|${romsPath}|" "${toolsPath}/launchers/xenia.sh"
mkdir -p "$romsPath/xbox360/roms/xbla" mkdir -p "$romsPath/xbox360/roms/xbla"
@ -67,7 +67,7 @@ Xenia_install(){
#ApplyInitialSettings #ApplyInitialSettings
Xenia_init(){ Xenia_init(){
setMSG "Initializing Xenia Config" setMSG "Initializing Xenia Config"
rsync -avhp "$EMUDECKGIT/configs/xenia/" "$romsPath/xbox360" rsync -avhp "$emudeckBackend/configs/xenia/" "$romsPath/xbox360"
mkdir -p "$romsPath/xbox360/roms/xbla" mkdir -p "$romsPath/xbox360/roms/xbla"
Xenia_setupSaves Xenia_setupSaves
#SRM_createParsers #SRM_createParsers

View File

@ -3,7 +3,7 @@
#variables #variables
Yuzu_emuName="yuzu" Yuzu_emuName="yuzu"
Yuzu_emuType="$emuDeckEmuTypeAppImage" Yuzu_emuType="$emuDeckEmuTypeAppImage"
Yuzu_emuPath="$HOME/Applications/yuzu.AppImage" Yuzu_emuPath="$emusFolder/yuzu.AppImage"
Yuzu_configFile="$HOME/.config/yuzu/qt-config.ini" Yuzu_configFile="$HOME/.config/yuzu/qt-config.ini"
@ -60,7 +60,7 @@ Yuzu_install() {
echo "Begin Yuzu Install" echo "Begin Yuzu Install"
local showProgress=$1 local showProgress=$1
local lastVerFile="$HOME/emudeck/yuzu.ver" local lastVerFile="$emudeckFolder/yuzu.ver"
local latestVer=$(curl -fSs "https://api.github.com/repos/yuzu-emu/yuzu-mainline/releases" | jq -r '[ .[].tag_name ][0]') local latestVer=$(curl -fSs "https://api.github.com/repos/yuzu-emu/yuzu-mainline/releases" | jq -r '[ .[].tag_name ][0]')
local success="false" local success="false"
if installEmuAI "$Yuzu_emuName" "$(getReleaseURLGH "yuzu-emu/yuzu-mainline" "AppImage")" "" "$showProgress" "$lastVerFile" "$latestVer"; then # yuzu.AppImage - needs to be lowercase yuzu for EsDE to find it if installEmuAI "$Yuzu_emuName" "$(getReleaseURLGH "yuzu-emu/yuzu-mainline" "AppImage")" "" "$showProgress" "$lastVerFile" "$latestVer"; then # yuzu.AppImage - needs to be lowercase yuzu for EsDE to find it
@ -76,15 +76,15 @@ Yuzu_install() {
Yuzu_init() { Yuzu_init() {
echo "Begin Yuzu Init" echo "Begin Yuzu Init"
cp "$EMUDECKGIT/tools/launchers/yuzu.sh" "$toolsPath/launchers/yuzu.sh" cp "$emudeckBackend/tools/launchers/yuzu.sh" "$toolsPath/launchers/yuzu.sh"
chmod +x "$toolsPath/launchers/yuzu.sh" chmod +x "$toolsPath/launchers/yuzu.sh"
mkdir -p "$HOME/.config/yuzu" mkdir -p "$HOME/.config/yuzu"
mkdir -p "$HOME/.local/share/yuzu" mkdir -p "$HOME/.local/share/yuzu"
rsync -avhp "$EMUDECKGIT/configs/org.yuzu_emu.yuzu/config/yuzu/." "$HOME/.config/yuzu" rsync -avhp "$emudeckBackend/configs/org.yuzu_emu.yuzu/config/yuzu/." "$HOME/.config/yuzu"
rsync -avhp "$EMUDECKGIT/configs/org.yuzu_emu.yuzu/data/yuzu/." "$HOME/.local/share/yuzu" rsync -avhp "$emudeckBackend/configs/org.yuzu_emu.yuzu/data/yuzu/." "$HOME/.local/share/yuzu"
Yuzu_migrate Yuzu_migrate
configEmuAI "$Yuzu_emuName" "config" "$HOME/.config/yuzu" "$EMUDECKGIT/configs/org.yuzu_emu.yuzu/config/yuzu" "true" configEmuAI "$Yuzu_emuName" "config" "$HOME/.config/yuzu" "$emudeckBackend/configs/org.yuzu_emu.yuzu/config/yuzu" "true"
configEmuAI "$Yuzu_emuName" "data" "$HOME/.local/share/yuzu" "$EMUDECKGIT/configs/org.yuzu_emu.yuzu/data/yuzu" "true" configEmuAI "$Yuzu_emuName" "data" "$HOME/.local/share/yuzu" "$emudeckBackend/configs/org.yuzu_emu.yuzu/data/yuzu" "true"
Yuzu_setEmulationFolder Yuzu_setEmulationFolder
Yuzu_setupStorage Yuzu_setupStorage
@ -113,8 +113,8 @@ Yuzu_update() {
Yuzu_migrate Yuzu_migrate
configEmuAI "$Yuzu_emuName" "config" "$HOME/.config/yuzu" "$EMUDECKGIT/configs/org.yuzu_emu.yuzu/config/yuzu" configEmuAI "$Yuzu_emuName" "config" "$HOME/.config/yuzu" "$emudeckBackend/configs/org.yuzu_emu.yuzu/config/yuzu"
configEmuAI "$Yuzu_emuName" "data" "$HOME/.local/share/yuzu" "$EMUDECKGIT/configs/org.yuzu_emu.yuzu/data/yuzu" configEmuAI "$Yuzu_emuName" "data" "$HOME/.local/share/yuzu" "$emudeckBackend/configs/org.yuzu_emu.yuzu/data/yuzu"
Yuzu_setEmulationFolder Yuzu_setEmulationFolder
Yuzu_setupStorage Yuzu_setupStorage
@ -226,7 +226,7 @@ Yuzu_uninstall() {
#Migrate #Migrate
Yuzu_migrate() { Yuzu_migrate() {
echo "Begin Yuzu Migration" echo "Begin Yuzu Migration"
migrationFlag="$HOME/.config/EmuDeck/.${Yuzu_emuName}MigrationCompleted" migrationFlag="$emudeckFolder/.${Yuzu_emuName}MigrationCompleted"
#check if we have a nomigrateflag for $emu #check if we have a nomigrateflag for $emu
if [ ! -f "$migrationFlag" ]; then if [ ! -f "$migrationFlag" ]; then
#yuzu flatpak to appimage #yuzu flatpak to appimage
@ -322,7 +322,7 @@ YuzuEA_install() {
if safeDownload "yuzu-ea" "$fileToDownload" "${YuzuEA_emuPath}" "$showProgress" "Authorization: Bearer ${BEARERTOKEN}"; then if safeDownload "yuzu-ea" "$fileToDownload" "${YuzuEA_emuPath}" "$showProgress" "Authorization: Bearer ${BEARERTOKEN}"; then
chmod +x "$YuzuEA_emuPath" chmod +x "$YuzuEA_emuPath"
cp -v "${EMUDECKGIT}/tools/launchers/yuzu.sh" "${toolsPath}/launchers/" &>/dev/null cp -v "$emudeckBackend/tools/launchers/yuzu.sh" "${toolsPath}/launchers/" &>/dev/null
chmod +x "${toolsPath}/launchers/yuzu.sh" chmod +x "${toolsPath}/launchers/yuzu.sh"
echo "true" echo "true"
return 0 return 0
@ -406,6 +406,6 @@ Yuzu_addESConfig(){
fi fi
#Custom Systems config end #Custom Systems config end
rsync -avhp --mkpath "$EMUDECKGIT/chimeraOS/configs/emulationstation/custom_systems/es_find_rules.xml" "$(dirname "$es_rulesFile")" --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/chimeraOS/configs/emulationstation/custom_systems/es_find_rules.xml" "$(dirname "$es_rulesFile")" --backup --suffix=.bak
} }

View File

@ -330,7 +330,7 @@ ares_resetConfig(){
ares_addSteamInputProfile(){ ares_addSteamInputProfile(){
addSteamInputCustomIcons addSteamInputCustomIcons
#setMSG "Adding $ares_emuName Steam Input Profile." #setMSG "Adding $ares_emuName Steam Input Profile."
#rsync -r "$EMUDECKGIT/configs/steam-input/ares_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/ares_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }
#finalExec - Extra stuff #finalExec - Extra stuff

View File

@ -43,5 +43,5 @@ Cider_IsInstalled() {
# Import steam profile # Import steam profile
Cider_addSteamInputProfile() { Cider_addSteamInputProfile() {
echo "NYI" echo "NYI"
#rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_Cider_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/emudeck_Cider_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -3,7 +3,7 @@
# Variables # Variables
Heroic_emuName="Heroic-Games-Launcher" Heroic_emuName="Heroic-Games-Launcher"
Heroic_emuType="$emuDeckEmuTypeAppImage" Heroic_emuType="$emuDeckEmuTypeAppImage"
Heroic_emuPath="$HOME/Applications/Heroic-Games-Launcher.AppImage" Heroic_emuPath="$emusFolder/Heroic-Games-Launcher.AppImage"
# Install # Install
Heroic_install() { Heroic_install() {

View File

@ -45,5 +45,5 @@ Spotify_IsInstalled() {
# Import steam profile # Import steam profile
Spotify_addSteamInputProfile() { Spotify_addSteamInputProfile() {
echo "NYI" echo "NYI"
#rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_spotify_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/emudeck_spotify_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -51,5 +51,5 @@ Chiaki_IsInstalled() {
# Import steam profile # Import steam profile
Chiaki_addSteamInputProfile() { Chiaki_addSteamInputProfile() {
echo "NYI" echo "NYI"
#rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_chiaki_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/emudeck_chiaki_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -3,7 +3,7 @@
# Variables # Variables
Chiaking_emuName="chiaki-ng" Chiaking_emuName="chiaki-ng"
Chiaking_emuType="$emuDeckEmuTypeAppImage" Chiaking_emuType="$emuDeckEmuTypeAppImage"
Chiaking_emuPath="$HOME/Applications/chiaki-ng.AppImage" Chiaking_emuPath="$emusFolder/chiaki-ng.AppImage"
# Install # Install
Chiaking_install() { Chiaking_install() {
@ -11,7 +11,7 @@ Chiaking_install() {
local showProgress=$1 local showProgress=$1
installEmuAI "$Chiaking_emuName" "$Chiaking_emuName" "$(getReleaseURLGH "streetpea/chiaki-ng" ".AppImage.zip")" "" "zip" "remoteplay" "$showProgress" installEmuAI "$Chiaking_emuName" "$Chiaking_emuName" "$(getReleaseURLGH "streetpea/chiaki-ng" ".AppImage.zip")" "" "zip" "remoteplay" "$showProgress"
unzip -o "$HOME/Applications/chiaki-ng.zip" -d "$HOME/Applications" && rm -rf "$HOME/Applications/chiaki-ng.zip" unzip -o "$emusFolder/chiaki-ng.zip" -d "$emusFolder" && rm -rf "$emusFolder/chiaki-ng.zip"
chmod +x $Chiaking_emuPath chmod +x $Chiaking_emuPath
Chiaking_copySettings Chiaking_copySettings
} }

View File

@ -3,7 +3,7 @@
# Variables # Variables
Greenlight_emuName="Greenlight" Greenlight_emuName="Greenlight"
Greenlight_emuType="$emuDeckEmuTypeAppImage" Greenlight_emuType="$emuDeckEmuTypeAppImage"
Greenlight_emuPath="$HOME/Applications/Greenlight.AppImage" Greenlight_emuPath="$emusFolder/Greenlight.AppImage"
# Install # Install
@ -28,7 +28,7 @@ Greenlight_update() {
setMSG "Updating $Greenlight_emuName." setMSG "Updating $Greenlight_emuName."
rm -f "$Greenlight_emuPath" rm -f "$Greenlight_emuPath"
Greenlight_install Greenlight_install
# configEmuAI "$Greenlight_emuName" "config" "$HOME/.config/greenlilght" "$EMUDECKGIT/configs/Greenlight/.config/greenlight" # configEmuAI "$Greenlight_emuName" "config" "$HOME/.config/greenlilght" "$emudeckBackend/configs/Greenlight/.config/greenlight"
# Greenlight_addSteamInputProfile # Greenlight_addSteamInputProfile
} }
@ -52,5 +52,5 @@ Greenlight_IsInstalled() {
# Import steam profile # Import steam profile
Greenlight_addSteamInputProfile() { Greenlight_addSteamInputProfile() {
echo "NYI" echo "NYI"
# rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_Greenlight_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" # rsync -r "$emudeckBackend/configs/steam-input/emudeck_Greenlight_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -51,5 +51,5 @@ Moonlight_IsInstalled() {
# Import steam profile # Import steam profile
Moonlight_addSteamInputProfile() { Moonlight_addSteamInputProfile() {
echo "NYI" echo "NYI"
#rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_moonlight_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/emudeck_moonlight_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -51,5 +51,5 @@ Parsec_IsInstalled() {
# Import steam profile # Import steam profile
Parsec_addSteamInputProfile() { Parsec_addSteamInputProfile() {
echo "NYI" echo "NYI"
#rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_parsec_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/emudeck_parsec_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -3,7 +3,7 @@
# Variables # Variables
ShadowPC_emuName="ShadowPC" ShadowPC_emuName="ShadowPC"
ShadowPC_emuType="$emuDeckEmuTypeAppImage" ShadowPC_emuType="$emuDeckEmuTypeAppImage"
ShadowPC_emuPath="$HOME/Applications/ShadowPC.AppImage" ShadowPC_emuPath="$emusFolder/ShadowPC.AppImage"
ShadowPC_releaseURL="https://update.Shadow.tech/launcher/prod/linux/ubuntu_18.04/ShadowPC.AppImage" ShadowPC_releaseURL="https://update.Shadow.tech/launcher/prod/linux/ubuntu_18.04/ShadowPC.AppImage"
# Install # Install
@ -49,5 +49,5 @@ ShadowPC_IsInstalled() {
# Import steam profile # Import steam profile
ShadowPC_addSteamInputProfile() { ShadowPC_addSteamInputProfile() {
echo "NYI" echo "NYI"
#rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_ShadowPC_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/emudeck_ShadowPC_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -45,5 +45,5 @@ SteamLink_IsInstalled() {
# Import steam profile # Import steam profile
SteamLink_addSteamInputProfile() { SteamLink_addSteamInputProfile() {
echo "NYI" echo "NYI"
#rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_steamlink_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" #rsync -r "$emudeckBackend/configs/steam-input/emudeck_steamlink_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
} }

View File

@ -9,7 +9,7 @@ BINUP_Shortcutlocation="$HOME/Desktop/EmuDeckBinUpdate.desktop"
BINUP_install(){ BINUP_install(){
rsync -avhp --mkpath "$EMUDECKGIT/tools/binupdate" "$toolsPath/" rsync -avhp --mkpath "$emudeckBackend/tools/binupdate" "$toolsPath/"
chmod +x "$BINUP_toolPath" chmod +x "$BINUP_toolPath"
#update the paths in the script #update the paths in the script

View File

@ -7,7 +7,7 @@ CHD_Shortcutlocation="$HOME/Desktop/EmuDeckCHD.desktop"
CHD_install(){ CHD_install(){
rsync -avhp --mkpath "$EMUDECKGIT/tools/chdconv" "$toolsPath/" rsync -avhp --mkpath "$emudeckBackend/tools/chdconv" "$toolsPath/"
chmod +x "$CHD_toolPath" chmod +x "$CHD_toolPath"
chmod +x "$toolsPath"/chdconv/chdman5 chmod +x "$toolsPath"/chdconv/chdman5

View File

@ -18,7 +18,7 @@ cloud_backup_install(){
rm -rf "$rclone_path/tmp" rm -rf "$rclone_path/tmp"
chmod +x "$rclone_bin" chmod +x "$rclone_bin"
fi fi
cp "$EMUDECKGIT/configs/rclone/rclone.conf" "$rclone_config" cp "$emudeckBackend/configs/rclone/rclone.conf" "$rclone_config"
cloud_backup_createJob cloud_backup_createJob
} }
@ -38,7 +38,7 @@ cloud_backup_install_and_config(){
rm -rf "$rclone_path/tmp" rm -rf "$rclone_path/tmp"
chmod +x "$rclone_bin" chmod +x "$rclone_bin"
fi fi
cp "$EMUDECKGIT/configs/rclone/rclone.conf" "$rclone_config" cp "$emudeckBackend/configs/rclone/rclone.conf" "$rclone_config"
cloud_backup_providersSetup cloud_backup_providersSetup
cloud_backup_stopService cloud_backup_stopService
@ -210,7 +210,7 @@ cloud_backup_etup(){
cloud_backup_createJob(){ cloud_backup_createJob(){
echo '#!/bin/bash'>"$rclone_jobScript" echo '#!/bin/bash'>"$rclone_jobScript"
echo "source \$HOME/emudeck/settings.sh echo "source \$emudeckFolder/settings.sh
PIDFILE=\"\$toolsPath/rclone/rclone.pid\" PIDFILE=\"\$toolsPath/rclone/rclone.pid\"
function finish { function finish {
@ -250,7 +250,7 @@ fi
chmod +x "$rclone_jobScript" chmod +x "$rclone_jobScript"
echo '#!/bin/bash'>"$rclone_restoreScript" echo '#!/bin/bash'>"$rclone_restoreScript"
echo "source \$HOME/emudeck/settings.sh echo "source \$emudeckFolder/settings.sh
PIDFILE=\"\$toolsPath/rclone/rclone.pid\" PIDFILE=\"\$toolsPath/rclone/rclone.pid\"
function finish { function finish {

View File

@ -69,7 +69,7 @@ cloud_sync_config(){
kill -15 $(pidof rclone) kill -15 $(pidof rclone)
local cloud_sync_provider=$1 local cloud_sync_provider=$1
local token=$2 local token=$2
cp "$EMUDECKGIT/configs/rclone/rclone.conf" "$cloud_sync_config" cp "$emudeckBackend/configs/rclone/rclone.conf" "$cloud_sync_config"
cloud_sync_stopService cloud_sync_stopService
cloud_sync_setup_providers $token cloud_sync_setup_providers $token
setSetting cloud_sync_status "true" && echo "true" setSetting cloud_sync_status "true" && echo "true"
@ -238,7 +238,7 @@ cloud_sync_setup_providers(){
token=$(echo "$token" | sed "s/'/\"/g") token=$(echo "$token" | sed "s/'/\"/g")
section=$(echo "$section" | sed 's/[][]//g; s/"//g') section=$(echo "$section" | sed 's/[][]//g; s/"//g')
cp "$EMUDECKGIT/configs/rclone/rclone.conf" "$cloud_sync_config" cp "$emudeckBackend/configs/rclone/rclone.conf" "$cloud_sync_config"
iniFieldUpdate "$cloud_sync_config" "$section" "token" "$token" iniFieldUpdate "$cloud_sync_config" "$section" "token" "$token"
@ -311,7 +311,7 @@ cloud_sync_upload(){
if [ "$emuName" = "all" ]; then if [ "$emuName" = "all" ]; then
cloud_sync_save_hash $savesPath cloud_sync_save_hash $savesPath
("$cloud_sync_bin" copy --fast-list --update --tpslimit 12 --log-file "$HOME/emudeck/logs/rclone.log" --checkers=50 -P -L --exclude=/.fail_upload --exclude=/.fail_download --exclude=/system/prod.keys --exclude=/system/title.keys --exclude=/.pending_upload --exclude=/.last_upload --exclude=/es-de/** "$savesPath" "$cloud_sync_provider":"$cs_user"Emudeck/saves/ && ( ("$cloud_sync_bin" copy --fast-list --update --tpslimit 12 --log-file "$emudeckLogs/rclone.log" --checkers=50 -P -L --exclude=/.fail_upload --exclude=/.fail_download --exclude=/system/prod.keys --exclude=/system/title.keys --exclude=/.pending_upload --exclude=/.last_upload --exclude=/es-de/** "$savesPath" "$cloud_sync_provider":"$cs_user"Emudeck/saves/ && (
local baseFolder="$savesPath/" local baseFolder="$savesPath/"
for folder in $baseFolder*/ for folder in $baseFolder*/
do do
@ -323,7 +323,7 @@ cloud_sync_upload(){
)) ))
else else
cloud_sync_save_hash "$savesPath/$emuName" cloud_sync_save_hash "$savesPath/$emuName"
("$cloud_sync_bin" copy --fast-list --update --tpslimit 12 --log-file "$HOME/emudeck/logs/rclone.log" --checkers=50 -P -L --exclude=/.fail_upload --exclude=/.fail_download --exclude=/system/prod.keys --exclude=/system/title.keys --exclude=/.pending_upload --exclude=/.last_upload --exclude=/es-de/** "$savesPath/$emuName" "$cloud_sync_provider":"$cs_user"Emudeck/saves/$emuName/ && echo $timestamp > "$savesPath"/$emuName/.last_upload && rm -rf $savesPath/$emuName/.fail_upload) ("$cloud_sync_bin" copy --fast-list --update --tpslimit 12 --log-file "$emudeckLogs/rclone.log" --checkers=50 -P -L --exclude=/.fail_upload --exclude=/.fail_download --exclude=/system/prod.keys --exclude=/system/title.keys --exclude=/.pending_upload --exclude=/.last_upload --exclude=/es-de/** "$savesPath/$emuName" "$cloud_sync_provider":"$cs_user"Emudeck/saves/$emuName/ && echo $timestamp > "$savesPath"/$emuName/.last_upload && rm -rf $savesPath/$emuName/.fail_upload)
fi fi
cloud_sync_unlock cloud_sync_unlock
fi fi
@ -332,7 +332,7 @@ cloud_sync_upload(){
} }
cloud_sync_download(){ cloud_sync_download(){
local branch=$(cd "$HOME"/.config/EmuDeck/backend && git rev-parse --abbrev-ref HEAD) local branch=$(cd "$emudeckBackend" && git rev-parse --abbrev-ref HEAD)
if [[ "$branch" == *"early"* ]] || [ "$branch" == "dev" ] ; then if [[ "$branch" == *"early"* ]] || [ "$branch" == "dev" ] ; then
echo "CloudSync Downloading" echo "CloudSync Downloading"
else else
@ -357,7 +357,7 @@ cloud_sync_download(){
if [ -f "$savesPath/.hash" ] && [ "$hash" != "$hashCloud" ]; then if [ -f "$savesPath/.hash" ] && [ "$hash" != "$hashCloud" ]; then
"$cloud_sync_bin" copy --fast-list --update --tpslimit 12 --log-file "$HOME/emudeck/logs/rclone.log" --checkers=50 -P -L --exclude=/.fail_upload --exclude=/.fail_download --exclude=/system/prod.keys --exclude=/system/title.keys --exclude=/.pending_upload --exclude=/.last_upload --exclude=/es-de/** "$cloud_sync_provider":"$cs_user"Emudeck/saves/ "$savesPath" && ( "$cloud_sync_bin" copy --fast-list --update --tpslimit 12 --log-file "$emudeckLogs/rclone.log" --checkers=50 -P -L --exclude=/.fail_upload --exclude=/.fail_download --exclude=/system/prod.keys --exclude=/system/title.keys --exclude=/.pending_upload --exclude=/.last_upload --exclude=/es-de/** "$cloud_sync_provider":"$cs_user"Emudeck/saves/ "$savesPath" && (
local baseFolder="$savesPath/" local baseFolder="$savesPath/"
for folder in $baseFolder*/ for folder in $baseFolder*/
do do
@ -384,7 +384,7 @@ cloud_sync_download(){
hashCloud=$(cat "$savesPath/$emuName/.hash") hashCloud=$(cat "$savesPath/$emuName/.hash")
if [ -f "$savesPath/$emuName/.hash" ] && [ "$hash" != "$hashCloud" ];then if [ -f "$savesPath/$emuName/.hash" ] && [ "$hash" != "$hashCloud" ];then
"$cloud_sync_bin" copy --fast-list --update --tpslimit 12 --log-file "$HOME/emudeck/logs/rclone.log" --checkers=50 -P -L --exclude=/.fail_upload --exclude=/.fail_download --exclude=/system/prod.keys --exclude=/system/title.keys --exclude=/.pending_upload --exclude=/.last_upload --exclude=/es-de/** "$cloud_sync_provider":"$cs_user"Emudeck/saves/$emuName/ "$savesPath"/$emuName/ && echo $timestamp > "$savesPath"/$emuName/.last_download && rm -rf $savesPath/$emuName/.fail_download "$cloud_sync_bin" copy --fast-list --update --tpslimit 12 --log-file "$emudeckLogs/rclone.log" --checkers=50 -P -L --exclude=/.fail_upload --exclude=/.fail_download --exclude=/system/prod.keys --exclude=/system/title.keys --exclude=/.pending_upload --exclude=/.last_upload --exclude=/es-de/** "$cloud_sync_provider":"$cs_user"Emudeck/saves/$emuName/ "$savesPath"/$emuName/ && echo $timestamp > "$savesPath"/$emuName/.last_download && rm -rf $savesPath/$emuName/.fail_download
else else
echo "up to date" echo "up to date"
fi fi
@ -637,7 +637,7 @@ cloud_sync_createService(){
startLog ${FUNCNAME[0]} startLog ${FUNCNAME[0]}
echo "Creating CloudSync service" echo "Creating CloudSync service"
local service_name="EmuDeckCloudSync" local service_name="EmuDeckCloudSync"
local script_path="$HOME/.config/EmuDeck/backend/tools/cloudSync/cloud_sync_watcher.sh" local script_path="$emudeckBackend/tools/cloudSync/cloud_sync_watcher.sh"
local user_service_dir="$HOME/.config/systemd/user/" local user_service_dir="$HOME/.config/systemd/user/"
mkdir -p $user_service_dir mkdir -p $user_service_dir
touch "$user_service_dir/$service_name.service" touch "$user_service_dir/$service_name.service"
@ -671,12 +671,12 @@ cloud_sync_stopService(){
cloud_sync_lock(){ cloud_sync_lock(){
# startLog ${FUNCNAME[0]} # startLog ${FUNCNAME[0]}
touch "$HOME/emudeck/cloud.lock" touch "$emudeckFolder/cloud.lock"
} }
cloud_sync_unlock(){ cloud_sync_unlock(){
# startLog ${FUNCNAME[0]} # startLog ${FUNCNAME[0]}
rm -rf "$HOME/emudeck/cloud.lock" rm -rf "$emudeckFolder/cloud.lock"
} }
cloud_sync_check_lock(){ cloud_sync_check_lock(){
@ -706,18 +706,18 @@ cloud_decky_check_status(){
# startLog ${FUNCNAME[0]} # startLog ${FUNCNAME[0]}
#Non cloudsync #Non cloudsync
if [ -f "$HOME/emudeck/.scraping" ]; then if [ -f "$emudeckFolder/.scraping" ]; then
echo "scraping" echo "scraping"
else else
if [ $(check_internet_connection) == "true" ]; then if [ $(check_internet_connection) == "true" ]; then
if [ $cloud_sync_status = "true" ]; then if [ $cloud_sync_status = "true" ]; then
if [ -f "$savesPath/.gaming" ] && [ ! -f "$HOME/emudeck/cloud.lock" ]; then if [ -f "$savesPath/.gaming" ] && [ ! -f "$emudeckFolder/cloud.lock" ]; then
echo "started" echo "started"
elif [ -f "$savesPath/.gaming" ]; then elif [ -f "$savesPath/.gaming" ]; then
echo "nothing" echo "nothing"
elif [ -f "$HOME/emudeck/cloud.lock" ] && [ ! -f "$savesPath/.gaming" ]; then elif [ -f "$emudeckFolder/cloud.lock" ] && [ ! -f "$savesPath/.gaming" ]; then
echo "uploading" echo "uploading"
elif [ ! -f "$HOME/emudeck/cloud.lock" ] && [ ! -f "$savesPath/.gaming" ]; then elif [ ! -f "$emudeckFolder/cloud.lock" ] && [ ! -f "$savesPath/.gaming" ]; then
echo "nothing" echo "nothing"
else else
echo "nothing" echo "nothing"

View File

@ -29,13 +29,13 @@ CreateStructureUSB(){
echo "Switch / Yuzu -> bios/yuzu/firmware and bios/yuzu/keys" >> "$destination/bios/readme.txt" echo "Switch / Yuzu -> bios/yuzu/firmware and bios/yuzu/keys" >> "$destination/bios/readme.txt"
echo "Those are the only mandatory bios, the rest are optional" >> "$destination/bios/readme.txt" echo "Those are the only mandatory bios, the rest are optional" >> "$destination/bios/readme.txt"
rsync -ravL --ignore-existing --exclude='*.txt' "$EMUDECKGIT/roms/" "$destination/roms/" && echo "true" || echo "false" rsync -ravL --ignore-existing --exclude='*.txt' "$emudeckBackend/roms/" "$destination/roms/" && echo "true" || echo "false"
fi fi
} }
AutoCopy_install(){ AutoCopy_install(){
cp "$EMUDECKGIT/tools/autocopy.sh" "$toolsPath/" cp "$emudeckBackend/tools/autocopy.sh" "$toolsPath/"
chmod +x "$toolsPath/autocopy.sh" chmod +x "$toolsPath/autocopy.sh"
} }
@ -132,7 +132,7 @@ CopyGames(){
fi fi
rsync -rav --ignore-existing --progress --exclude=".*" "$entry/" "$romsPath/$dir/" | rsync -rav --ignore-existing --progress --exclude=".*" "$entry/" "$romsPath/$dir/" |
awk -f $HOME/.config/EmuDeck/backend/rsync.awk | awk -f $emudeckBackend/rsync.awk |
zenity --progress --title "Importing your $dir games to $romsPath" \ zenity --progress --title "Importing your $dir games to $romsPath" \
--text="Scanning..." --width=400 --percentage=0 --auto-close --text="Scanning..." --width=400 --percentage=0 --auto-close
fi fi
@ -140,7 +140,7 @@ CopyGames(){
done done
rsync -rav --ignore-existing --progress "$origin/bios/" "$biosPath/" | rsync -rav --ignore-existing --progress "$origin/bios/" "$biosPath/" |
awk -f $HOME/.config/EmuDeck/backend/rsync.awk | awk -f $emudeckBackend/rsync.awk |
zenity --progress --title "Importing your bios to $biosPath/" \ zenity --progress --title "Importing your bios to $biosPath/" \
--text="Scanning..." --width=400 --percentage=0 --auto-close --text="Scanning..." --width=400 --percentage=0 --auto-close
) && ) &&

View File

@ -6,14 +6,14 @@ ESDE_downloadedToolName="EmulationStation-DE-x64_SteamDeck.AppImage"
ESDE_toolType="$emuDeckEmuTypeAppImage" ESDE_toolType="$emuDeckEmuTypeAppImage"
ESDE_oldConfigDirectory="$ESDE_newConfigDirectory" ESDE_oldConfigDirectory="$ESDE_newConfigDirectory"
ESDE_newConfigDirectory="$HOME/ES-DE" ESDE_newConfigDirectory="$HOME/ES-DE"
ESDE_toolLocation="$HOME/Applications" ESDE_toolLocation="$esdeFolder"
ESDE_toolPath="${ESDE_toolLocation}/ES-DE.AppImage" ESDE_toolPath="${ESDE_toolLocation}/ES-DE.AppImage"
ESDE_releaseURL="https://gitlab.com/es-de/emulationstation-de/-/package_files/76389058/download" #default URl in case of issues parsing json ESDE_releaseURL="https://gitlab.com/es-de/emulationstation-de/-/package_files/76389058/download" #default URl in case of issues parsing json
ESDE_releaseMD5="b749b927d61317fde0250af9492a4b9f" #default hash ESDE_releaseMD5="b749b927d61317fde0250af9492a4b9f" #default hash
ESDE_prereleaseURL="" ESDE_prereleaseURL=""
ESDE_prereleaseMD5="" ESDE_prereleaseMD5=""
ESDE_releaseJSON="https://gitlab.com/es-de/emulationstation-de/-/raw/master/latest_release.json" ESDE_releaseJSON="https://gitlab.com/es-de/emulationstation-de/-/raw/master/latest_release.json"
ESDE_addSteamInputFile="$EMUDECKGIT/configs/steam-input/emulationstation-de_controller_config.vdf" ESDE_addSteamInputFile="$emudeckBackend/configs/steam-input/emulationstation-de_controller_config.vdf"
steam_input_templateFolder="$HOME/.steam/steam/controller_base/templates/" steam_input_templateFolder="$HOME/.steam/steam/controller_base/templates/"
es_systemsFile="$ESDE_newConfigDirectory/custom_systems/es_systems.xml" es_systemsFile="$ESDE_newConfigDirectory/custom_systems/es_systems.xml"
es_settingsFile="$ESDE_newConfigDirectory/settings/es_settings.xml" es_settingsFile="$ESDE_newConfigDirectory/settings/es_settings.xml"
@ -60,7 +60,7 @@ ESDE_customDesktopShortcut(){
mkdir -p "$toolsPath/launchers/es-de" mkdir -p "$toolsPath/launchers/es-de"
mkdir -p "$toolsPath/launchers/esde" mkdir -p "$toolsPath/launchers/esde"
cp "$EMUDECKGIT/tools/launchers/es-de/es-de.sh" "$toolsPath/launchers/es-de/es-de.sh" cp "$emudeckBackend/tools/launchers/es-de/es-de.sh" "$toolsPath/launchers/es-de/es-de.sh"
rm -rf $HOME/.local/share/applications/$ESDE_oldtoolName.desktop rm -rf $HOME/.local/share/applications/$ESDE_oldtoolName.desktop
createDesktopShortcut "$HOME/.local/share/applications/$ESDE_toolName.desktop" \ createDesktopShortcut "$HOME/.local/share/applications/$ESDE_toolName.desktop" \
"$ESDE_toolName AppImage" \ "$ESDE_toolName AppImage" \
@ -79,6 +79,7 @@ ESDE_uninstall(){
#Install #Install
ESDE_install(){ ESDE_install(){
setMSG "Installing $ESDE_toolName" setMSG "Installing $ESDE_toolName"
mkdir -p $ESDE_toolLocation
# Move ES-DE to ~/Applications folder # Move ES-DE to ~/Applications folder
ESDE_migration ESDE_migration
@ -112,10 +113,10 @@ ESDE_init(){
mkdir -p "$ESDE_newConfigDirectory/settings" mkdir -p "$ESDE_newConfigDirectory/settings"
mkdir -p "$ESDE_newConfigDirectory/custom_systems/" mkdir -p "$ESDE_newConfigDirectory/custom_systems/"
rsync -avhp --mkpath "$EMUDECKGIT/configs/emulationstation/es_settings.xml" "$(dirname "$es_settingsFile")" --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/configs/emulationstation/es_settings.xml" "$(dirname "$es_settingsFile")" --backup --suffix=.bak
rsync -avhp --mkpath "$EMUDECKGIT/chimeraOS/configs/emulationstation/custom_systems/es_find_rules.xml" "$(dirname "$es_rulesFile")" --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/chimeraOS/configs/emulationstation/custom_systems/es_find_rules.xml" "$(dirname "$es_rulesFile")" --backup --suffix=.bak
# This duplicates ESDE_addCustomSystemsFile but this line only applies only if you are resetting ES-DE and not the emulators themselves. # This duplicates ESDE_addCustomSystemsFile but this line only applies only if you are resetting ES-DE and not the emulators themselves.
rsync -avhp --mkpath "$EMUDECKGIT/configs/emulationstation/custom_systems/es_systems.xml" "$(dirname "$es_systemsFile")" --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/configs/emulationstation/custom_systems/es_systems.xml" "$(dirname "$es_systemsFile")" --backup --suffix=.bak
ESDE_createLauncher ESDE_createLauncher
ESDE_addCustomSystems ESDE_addCustomSystems
@ -136,7 +137,7 @@ ESDE_init(){
} }
ESDE_createLauncher(){ ESDE_createLauncher(){
cp -r "$EMUDECKGIT/tools/launchers/es-de/." "$toolsPath/launchers/es-de/" && chmod +x "$toolsPath/launchers/es-de/es-de.sh" cp -r "$emudeckBackend/tools/launchers/es-de/." "$toolsPath/launchers/es-de/" && chmod +x "$toolsPath/launchers/es-de/es-de.sh"
} }
ESDE_resetConfig(){ ESDE_resetConfig(){
@ -160,9 +161,9 @@ ESDE_update(){
mkdir -p "$ESDE_newConfigDirectory/settings" mkdir -p "$ESDE_newConfigDirectory/settings"
#update es_settings.xml #update es_settings.xml
rsync -avhp --mkpath "$EMUDECKGIT/configs/emulationstation/es_settings.xml" "$(dirname "$es_settingsFile")" --ignore-existing rsync -avhp --mkpath "$emudeckBackend/configs/emulationstation/es_settings.xml" "$(dirname "$es_settingsFile")" --ignore-existing
rsync -avhp --mkpath "$EMUDECKGIT/chimeraOS/configs/emulationstation/custom_systems/es_find_rules.xml" "$(dirname "$es_rulesFile")" --ignore-existing rsync -avhp --mkpath "$emudeckBackend/chimeraOS/configs/emulationstation/custom_systems/es_find_rules.xml" "$(dirname "$es_rulesFile")" --ignore-existing
rsync -avhp --mkpath "$EMUDECKGIT/configs/emulationstation/custom_systems/es_systems.xml" "$(dirname "$es_systemsFile")" --ignore-existing rsync -avhp --mkpath "$emudeckBackend/configs/emulationstation/custom_systems/es_systems.xml" "$(dirname "$es_systemsFile")" --ignore-existing
ESDE_addCustomSystems ESDE_addCustomSystems
fi fi
@ -204,7 +205,7 @@ ESDE_addCustomSystemsFile(){
# Separate function so it can be copied and used in the emulator scripts. # Separate function so it can be copied and used in the emulator scripts.
mkdir -p "$ESDE_newConfigDirectory/custom_systems/" mkdir -p "$ESDE_newConfigDirectory/custom_systems/"
rsync -avhp --mkpath "$EMUDECKGIT/configs/emulationstation/custom_systems/es_systems.xml" "$(dirname "$es_systemsFile")" --ignore-existing rsync -avhp --mkpath "$emudeckBackend/configs/emulationstation/custom_systems/es_systems.xml" "$(dirname "$es_systemsFile")" --ignore-existing
} }
@ -439,7 +440,7 @@ ESDE_setEmu(){
local system=$2 local system=$2
local gamelistFile="$ESDE_newConfigDirectory/gamelists/$system/gamelist.xml" local gamelistFile="$ESDE_newConfigDirectory/gamelists/$system/gamelist.xml"
if [ ! -f "$gamelistFile" ]; then if [ ! -f "$gamelistFile" ]; then
mkdir -p "$ESDE_newConfigDirectory/gamelists/$system" && cp "$EMUDECKGIT/configs/emulationstation/gamelists/$system/gamelist.xml" "$gamelistFile" mkdir -p "$ESDE_newConfigDirectory/gamelists/$system" && cp "$emudeckBackend/configs/emulationstation/gamelists/$system/gamelist.xml" "$gamelistFile"
else else
gamelistFound=$(grep -rnw "$gamelistFile" -e 'gameList') gamelistFound=$(grep -rnw "$gamelistFile" -e 'gameList')
if [[ $gamelistFound == '' ]]; then if [[ $gamelistFound == '' ]]; then
@ -483,6 +484,6 @@ ESDE_migrateEpicNoir(){
ESDE_flushToolLauncher(){ ESDE_flushToolLauncher(){
mkdir -p "$toolsPath/launchers/es-de" mkdir -p "$toolsPath/launchers/es-de"
cp "$EMUDECKGIT/tools/launchers/es-de/es-de.sh" "$toolsPath/launchers/es-de/es-de.sh" cp "$emudeckBackend/tools/launchers/es-de/es-de.sh" "$toolsPath/launchers/es-de/es-de.sh"
chmod +x "$toolsPath/launchers/es-de/es-de.sh" chmod +x "$toolsPath/launchers/es-de/es-de.sh"
} }

View File

@ -8,7 +8,7 @@ FlatpakUP_toolPath="${toolsPath}/flatpakupdate/flatpakupdate.sh"
FlatpakUp_install(){ FlatpakUp_install(){
rsync -avhp --mkpath "$EMUDECKGIT/tools/flatpakupdate" "$toolsPath/" rsync -avhp --mkpath "$emudeckBackend/tools/flatpakupdate" "$toolsPath/"
chmod +x "$FlatpakUP_toolPath" chmod +x "$FlatpakUP_toolPath"
#update the paths in the script #update the paths in the script

View File

@ -38,7 +38,7 @@ Migration_move(){
destination=$2 destination=$2
size=$3 size=$3
rsync -av --progress "$origin" "$destination" | rsync -av --progress "$origin" "$destination" |
awk -f $HOME/.config/EmuDeck/backend/rsync.awk | awk -f $emudeckBackend/rsync.awk |
zenity --progress --title "Migrating your current ${size} Emulation folder to $destination" \ zenity --progress --title "Migrating your current ${size} Emulation folder to $destination" \
--text="Scanning..." --width=400 --percentage=0 --auto-close --text="Scanning..." --width=400 --percentage=0 --auto-close
} }

View File

@ -22,8 +22,8 @@ pegasus_install(){
local url="https://github.com/dragoonDorise/pegasus-temp/releases/download/1.0/pegasus-fe" local url="https://github.com/dragoonDorise/pegasus-temp/releases/download/1.0/pegasus-fe"
local fileName="pegasus-fe" local fileName="pegasus-fe"
if safeDownload "$name" "$url" "$HOME/Applications/$fileName" "$showProgress"; then if safeDownload "$name" "$url" "$pegasusFolder/$fileName" "$showProgress"; then
chmod +x "$HOME/Applications/$fileName" chmod +x "$pegasusFolder/$fileName"
pegasus_init pegasus_init
pegasus_customDesktopShortcut pegasus_customDesktopShortcut
else else
@ -34,19 +34,19 @@ pegasus_install(){
} }
pegasus_setPaths(){ pegasus_setPaths(){
rsync -avR --exclude='roms' --exclude='pfx' "$EMUDECKGIT/roms/" "$romsPath" --keep-dirlinks rsync -avR --exclude='roms' --exclude='pfx' "$emudeckBackend/roms/" "$romsPath" --keep-dirlinks
rsync -avR --exclude='roms' --exclude='pfx' "$EMUDECKGIT/roms/" "$toolsPath/downloaded_media" rsync -avR --exclude='roms' --exclude='pfx' "$emudeckBackend/roms/" "$toolsPath/downloaded_media"
find $romsPath/ -type f -name "metadata.txt" -exec sed -i "s|CORESPATH|${RetroArch_cores}|g" {} \; find $romsPath/ -type f -name "metadata.txt" -exec sed -i "s|CORESPATH|${RetroArch_cores}|g" {} \;
find $romsPath/ -type f -name "metadata.txt" -exec sed -i "s|/run/media/mmcblk0p1/Emulation|${emulationPath}|g" {} \; find $romsPath/ -type f -name "metadata.txt" -exec sed -i "s|/run/media/mmcblk0p1/Emulation|${emulationPath}|g" {} \;
#Yuzu path fix #Yuzu path fix
if [ -f "$HOME/Applications/yuzu.AppImage" ]; then if [ -f "$emusFolder/yuzu.AppImage" ]; then
sed -i "s|ryujinx|yuzu|g" "$romsPath/switch/metadata.txt" sed -i "s|ryujinx|yuzu|g" "$romsPath/switch/metadata.txt"
sed -i "s|--fullscreen|-f -g|g" "$romsPath/switch/metadata.txt" sed -i "s|--fullscreen|-f -g|g" "$romsPath/switch/metadata.txt"
fi fi
#Citra path fix #Citra path fix
if [ -f "$HOME/Applications/citra-qt.AppImage" ]; then if [ -f "$emusFolder/citra-qt.AppImage" ]; then
sed -i "s|lime3ds|citra|g" "$romsPath/n3ds/metadata.txt" sed -i "s|lime3ds|citra|g" "$romsPath/n3ds/metadata.txt"
fi fi
@ -56,7 +56,7 @@ pegasus_setPaths(){
pegasus_init(){ pegasus_init(){
setMSG "Setting up $pegasus_toolName" setMSG "Setting up $pegasus_toolName"
rsync -avhp --mkpath "$EMUDECKGIT/configs/$pegasus_emuPath/" "$pegasus_path/" rsync -avhp --mkpath "$emudeckBackend/configs/$pegasus_emuPath/" "$pegasus_path/"
#metadata and paths #metadata and paths
pegasus_setPaths pegasus_setPaths
@ -168,7 +168,7 @@ pegasus_init(){
sed -i "s|/run/media/mmcblk0p1/Emulation|${emulationPath}|g" "$pegasus_dir_file" sed -i "s|/run/media/mmcblk0p1/Emulation|${emulationPath}|g" "$pegasus_dir_file"
#mkdir -p "$toolsPath/launchers/pegasus/" #mkdir -p "$toolsPath/launchers/pegasus/"
#cp "$EMUDECKGIT/tools/launchers/pegasus/pegasus-frontend.sh" "$toolsPath/launchers/pegasus/pegasus-frontend.sh" #cp "$emudeckBackend/tools/launchers/pegasus/pegasus-frontend.sh" "$toolsPath/launchers/pegasus/pegasus-frontend.sh"
#pegasus_addCustomSystems #pegasus_addCustomSystems
#pegasus_setEmulationFolder #pegasus_setEmulationFolder
#pegasus_setDefaultEmulators #pegasus_setDefaultEmulators
@ -224,7 +224,7 @@ pegasus_setEmu(){
} }
pegasus_IsInstalled(){ pegasus_IsInstalled(){
if [ -f "$HOME/Applications/pegasus-fe" ]; then if [ -f "$pegasusFolder/pegasus-fe" ]; then
echo "true" echo "true"
else else
echo "false" echo "false"
@ -233,11 +233,11 @@ pegasus_IsInstalled(){
pegasus_uninstall(){ pegasus_uninstall(){
flatpak uninstall "$pegasus_emuPath" --user -y &> /dev/null; flatpak uninstall "$pegasus_emuPath" --user -y &> /dev/null;
rm -rf "$HOME/Applications/pegasus-fe" &> /dev/null; rm -rf "$pegasusFolder/pegasus-fe" &> /dev/null;
} }
pegasus_flushToolLauncher(){ pegasus_flushToolLauncher(){
mkdir -p "$toolsPath/launchers/pegasus/" mkdir -p "$toolsPath/launchers/pegasus/"
cp "$EMUDECKGIT/tools/launchers/pegasus/pegasus-frontend.sh" "$toolsPath/launchers/pegasus/pegasus-frontend.sh" cp "$emudeckBackend/tools/launchers/pegasus/pegasus-frontend.sh" "$toolsPath/launchers/pegasus/pegasus-frontend.sh"
chmod +x "$toolsPath/launchers/pegasus/pegasus-frontend.sh" chmod +x "$toolsPath/launchers/pegasus/pegasus-frontend.sh"
} }

View File

@ -124,7 +124,7 @@ Plugins_installEmuDecky(){
echo $password | sudo -S chown $USER:$USER -R $HOME/homebrew/plugins/EmuDecky echo $password | sudo -S chown $USER:$USER -R $HOME/homebrew/plugins/EmuDecky
fi fi
#CloudSync tools #CloudSync tools
rsync -avzh "$EMUDECKGIT/tools/cloudSync/" "$toolsPath/cloudSync/" rsync -avzh "$emudeckBackend/tools/cloudSync/" "$toolsPath/cloudSync/"
chmod +x "$toolsPath/cloudSync/cloud_sync_force_download.sh" chmod +x "$toolsPath/cloudSync/cloud_sync_force_download.sh"
chmod +x "$toolsPath/cloudSync/cloud_sync_force_upload.sh" chmod +x "$toolsPath/cloudSync/cloud_sync_force_upload.sh"
@ -152,7 +152,7 @@ Plugins_installDeckyRomLibrary(){
echo $password | sudo -S chown $USER:$USER -R $HOME/homebrew/plugins/decky-rom-library echo $password | sudo -S chown $USER:$USER -R $HOME/homebrew/plugins/decky-rom-library
fi fi
#RAachievemets #RAachievemets
rau=$(cat "$HOME/.config/EmuDeck/.rau") rau=$(cat "$emudeckFolder/.rau")
setSetting cheevos_username $rau setSetting cheevos_username $rau
} }

View File

@ -8,9 +8,9 @@ RemotePlayWhatever_install(){
RemotePlayWhatever_init(){ RemotePlayWhatever_init(){
setMSG "Configuring RemotePlayWhatever" setMSG "Configuring RemotePlayWhatever"
cp "$EMUDECKGIT/tools/remoteplaywhatever/remoteplaywhatever.sh" "${toolsPath}/remoteplaywhatever/" cp "$emudeckBackend/tools/remoteplaywhatever/remoteplaywhatever.sh" "${toolsPath}/remoteplaywhatever/"
chmod +x "${toolsPath}/remoteplaywhatever/remoteplaywhatever.sh" chmod +x "${toolsPath}/remoteplaywhatever/remoteplaywhatever.sh"
echo -e "OK!" echo -e "OK!"
zenity --question --width 450 --title "Close Steam/Steam Input?" --text "Now we will exit steam and launch Steam ROM Manager so you can add RemotePlayWhatever. Desktop controls will temporarily revert to touch/trackpad/L2/R2 until you open Steam again." && (kill -15 $(pidof steam)) & cp $HOME/.config/EmuDeck/backend/configs/steam-rom-manager/userData/userConfigurationsRPW.json $HOME/.config/steam-rom-manager/userData/userConfigurations.json && ${toolsPath}/Steam ROM Manager.AppImage && cp $HOME/.config/EmuDeck/backend/configs/steam-rom-manager/userData/userConfigurations.json $HOME/.config/steam-rom-manager/userData/userConfigurations.json zenity --question --width 450 --title "Close Steam/Steam Input?" --text "Now we will exit steam and launch Steam ROM Manager so you can add RemotePlayWhatever. Desktop controls will temporarily revert to touch/trackpad/L2/R2 until you open Steam again." && (kill -15 $(pidof steam)) & cp $emudeckBackend/configs/steam-rom-manager/userData/userConfigurationsRPW.json $HOME/.config/steam-rom-manager/userData/userConfigurations.json && ${toolsPath}/Steam ROM Manager.AppImage && cp $emudeckBackend/configs/steam-rom-manager/userData/userConfigurations.json $HOME/.config/steam-rom-manager/userData/userConfigurations.json
} }

View File

@ -32,7 +32,7 @@ SRM_uninstall(){
SRM_customDesktopShortcut(){ SRM_customDesktopShortcut(){
mkdir -p "$toolsPath/launchers/srm" mkdir -p "$toolsPath/launchers/srm"
cp "$EMUDECKGIT/tools/launchers/srm/steamrommanager.sh" "$toolsPath/launchers/srm/steamrommanager.sh" cp "$emudeckBackend/tools/launchers/srm/steamrommanager.sh" "$toolsPath/launchers/srm/steamrommanager.sh"
rm -rf $HOME/.local/share/applications/SRM.desktop rm -rf $HOME/.local/share/applications/SRM.desktop
createDesktopShortcut "$HOME/.local/share/applications/Steam ROM Manager.desktop" \ createDesktopShortcut "$HOME/.local/share/applications/Steam ROM Manager.desktop" \
@ -59,8 +59,8 @@ SRM_init(){
setMSG "Configuring Steam Rom Manager" setMSG "Configuring Steam Rom Manager"
mkdir -p "$HOME/.config/steam-rom-manager/userData/" mkdir -p "$HOME/.config/steam-rom-manager/userData/"
rsync -avhp --mkpath "$EMUDECKGIT/configs/steam-rom-manager/userData/userConfigurations.json" "$HOME/.config/steam-rom-manager/userData/" --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/configs/steam-rom-manager/userData/userConfigurations.json" "$HOME/.config/steam-rom-manager/userData/" --backup --suffix=.bak
rsync -avhp --mkpath "$EMUDECKGIT/configs/steam-rom-manager/userData/userSettings.json" "$HOME/.config/steam-rom-manager/userData/" --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/configs/steam-rom-manager/userData/userSettings.json" "$HOME/.config/steam-rom-manager/userData/" --backup --suffix=.bak
SRM_setEmulationFolder SRM_setEmulationFolder
SRM_setEnv SRM_setEnv
SRM_addControllerTemplate SRM_addControllerTemplate
@ -112,7 +112,7 @@ SRM_setEnv(){
SRM_addControllerTemplate(){ SRM_addControllerTemplate(){
mkdir -p "$HOME/.config/steam-rom-manager/userData/" mkdir -p "$HOME/.config/steam-rom-manager/userData/"
rsync -avhp --mkpath "$EMUDECKGIT/configs/steam-rom-manager/userData/controllerTemplates.json" "$HOME/.config/steam-rom-manager/userData/" --backup --suffix=.bak rsync -avhp --mkpath "$emudeckBackend/configs/steam-rom-manager/userData/controllerTemplates.json" "$HOME/.config/steam-rom-manager/userData/" --backup --suffix=.bak
if [ -d "${HOME}/.local/share/Steam" ]; then if [ -d "${HOME}/.local/share/Steam" ]; then
STEAMPATH="${HOME}/.local/share/Steam" STEAMPATH="${HOME}/.local/share/Steam"
@ -139,7 +139,7 @@ SRM_addSteamInputProfiles(){
rm -rf "$HOME/.steam/steam/controller_base/templates/ppsspp_controller_config.vdf" rm -rf "$HOME/.steam/steam/controller_base/templates/ppsspp_controller_config.vdf"
rm -rf "$HOME/.steam/steam/controller_base/templates/rmg_controller_config.vdf" rm -rf "$HOME/.steam/steam/controller_base/templates/rmg_controller_config.vdf"
rsync -r --exclude='*/' "$EMUDECKGIT/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/" rsync -r --exclude='*/' "$emudeckBackend/configs/steam-input/" "$HOME/.steam/steam/controller_base/templates/"
#Cleanup old controller schemes #Cleanup old controller schemes
} }
@ -165,7 +165,7 @@ SRM_IsInstalled(){
SRM_flushToolLauncher(){ SRM_flushToolLauncher(){
mkdir -p "$toolsPath/launchers/srm" mkdir -p "$toolsPath/launchers/srm"
cp "$EMUDECKGIT/tools/launchers/srm/steamrommanager.sh" "$toolsPath/launchers/srm/steamrommanager.sh" cp "$emudeckBackend/tools/launchers/srm/steamrommanager.sh" "$toolsPath/launchers/srm/steamrommanager.sh"
chmod +x "$toolsPath/launchers/srm/steamrommanager.sh" chmod +x "$toolsPath/launchers/srm/steamrommanager.sh"
} }

View File

@ -9,127 +9,132 @@ if [ $(uname) != "Linux" ]; then
fi fi
fi fi
if [[ "$EMUDECKGIT" == "" ]]; then if [[ "$emudeckBackend" == "" ]]; then
EMUDECKGIT="$HOME/.config/EmuDeck/backend" emudeckBackend="$HOME/.config/EmuDeck/backend/"
fi fi
#Vars
source "$emudeckBackend"/vars.sh
#load helpers first, just in case #load helpers first, just in case
source "$EMUDECKGIT"/functions/helperFunctions.sh source "$emudeckBackend"/functions/helperFunctions.sh
SETTINGSFILE="$HOME/emudeck/settings.sh" SETTINGSFILE="$emudeckFolder/settings.sh"
if [ -f "$SETTINGSFILE" ]; then if [ -f "$SETTINGSFILE" ] && [ ! -L "$SETTINGSFILE" ]; then
# shellcheck source=./settings.sh # shellcheck source=./settings.sh
source "$SETTINGSFILE" source "$SETTINGSFILE"
else
source "$HOME/emudeck/settings.sh"
fi fi
if [ "$system" != "darwin" ]; then if [ "$system" != "darwin" ]; then
export PATH="${EMUDECKGIT}/tools/binaries/:$PATH" export PATH="$emudeckBackend/tools/binaries/:$PATH"
chmod +x "${EMUDECKGIT}/tools/binaries/xmlstarlet" chmod +x "$emudeckBackend/tools/binaries/xmlstarlet"
fi fi
source "$EMUDECKGIT"/functions/checkBIOS.sh source "$emudeckBackend"/functions/checkBIOS.sh
source "$EMUDECKGIT"/functions/checkInstalledEmus.sh source "$emudeckBackend"/functions/checkInstalledEmus.sh
#source "$EMUDECKGIT"/functions/cloudServicesManager.sh #source "$emudeckBackend"/functions/cloudServicesManager.sh
source "$EMUDECKGIT"/functions/configEmuAI.sh source "$emudeckBackend"/functions/configEmuAI.sh
source "$EMUDECKGIT"/functions/configEmuFP.sh source "$emudeckBackend"/functions/configEmuFP.sh
source "$EMUDECKGIT"/functions/createDesktopIcons.sh source "$emudeckBackend"/functions/createDesktopIcons.sh
source "$EMUDECKGIT"/functions/installEmuFP.sh source "$emudeckBackend"/functions/installEmuFP.sh
source "$EMUDECKGIT"/functions/uninstallEmuFP.sh source "$emudeckBackend"/functions/uninstallEmuFP.sh
source "$EMUDECKGIT"/functions/setMSG.sh source "$emudeckBackend"/functions/setMSG.sh
source "$EMUDECKGIT"/functions/emuDeckPrereqs.sh source "$emudeckBackend"/functions/emuDeckPrereqs.sh
source "$EMUDECKGIT"/functions/installEmuAI.sh source "$emudeckBackend"/functions/installEmuAI.sh
source "$EMUDECKGIT"/functions/uninstallEmuAI.sh source "$emudeckBackend"/functions/uninstallEmuAI.sh
source "$EMUDECKGIT"/functions/installEmuBI.sh source "$emudeckBackend"/functions/installEmuBI.sh
source "$EMUDECKGIT"/functions/uninstallGeneric.sh source "$emudeckBackend"/functions/uninstallGeneric.sh
source "$EMUDECKGIT"/functions/installToolAI.sh source "$emudeckBackend"/functions/installToolAI.sh
source "$EMUDECKGIT"/functions/migrateAndLinkConfig.sh source "$emudeckBackend"/functions/migrateAndLinkConfig.sh
source "$EMUDECKGIT"/functions/nonDeck.sh source "$emudeckBackend"/functions/nonDeck.sh
source "$EMUDECKGIT"/functions/dialogBox.sh source "$emudeckBackend"/functions/dialogBox.sh
source "$EMUDECKGIT"/functions/updateEmuFP.sh source "$emudeckBackend"/functions/updateEmuFP.sh
source "$EMUDECKGIT"/functions/createFolders.sh source "$emudeckBackend"/functions/createFolders.sh
source "$EMUDECKGIT"/functions/runSRM.sh source "$emudeckBackend"/functions/runSRM.sh
source "$EMUDECKGIT"/functions/appImageInit.sh source "$emudeckBackend"/functions/appImageInit.sh
source "$EMUDECKGIT"/functions/autofix.sh source "$emudeckBackend"/functions/autofix.sh
source "$EMUDECKGIT"/functions/generateGameLists.sh source "$emudeckBackend"/functions/generateGameLists.sh
source "$EMUDECKGIT"/functions/jsonToBashVars.sh source "$emudeckBackend"/functions/jsonToBashVars.sh
#toolScripts #toolScripts
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckESDE.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckESDE.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckPegasus.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckPegasus.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckPlugins.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckPlugins.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckSRM.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckSRM.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckCHD.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckCHD.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckBINUP.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckBINUP.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckFlatpakUP.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckFlatpakUP.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckCloudBackup.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckCloudBackup.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckCloudSync.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckCloudSync.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckRemotePlayWhatever.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckRemotePlayWhatever.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckInstallHomebrewGames.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckInstallHomebrewGames.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckMigration.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckMigration.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckCopyGames.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckCopyGames.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDecky.sh source "$emudeckBackend"/functions/ToolScripts/emuDecky.sh
source "$EMUDECKGIT"/functions/ToolScripts/emuDeckNetPlay.sh source "$emudeckBackend"/functions/ToolScripts/emuDeckNetPlay.sh
#emuscripts #emuscripts
#source "$EMUDECKGIT"/functions/EmuScripts/emuDeckSuyu.sh #source "$emudeckBackend"/functions/EmuScripts/emuDeckSuyu.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckYuzu.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckYuzu.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckCemu.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckCemu.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckCemuProton.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckCemuProton.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckRPCS3.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckRPCS3.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckCitra.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckCitra.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckLime3DS.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckLime3DS.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckDolphin.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckDolphin.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckPrimehack.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckPrimehack.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckRetroArch.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckRetroArch.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckRyujinx.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckRyujinx.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckShadPS4.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckShadPS4.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckPPSSPP.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckPPSSPP.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckDuckStation.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckDuckStation.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckXemu.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckXemu.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckXenia.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckXenia.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckPCSX2QT.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckPCSX2QT.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckMAME.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckMAME.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckScummVM.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckScummVM.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckVita3K.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckVita3K.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckMGBA.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckMGBA.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckRMG.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckRMG.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckMelonDS.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckMelonDS.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckBigPEmu.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckBigPEmu.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckares.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckares.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckFlycast.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckFlycast.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckSupermodel.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckSupermodel.sh
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckModel2.sh source "$emudeckBackend"/functions/EmuScripts/emuDeckModel2.sh
# Generic Application scripts # Generic Application scripts
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationBottles.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationBottles.sh
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationCider.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationCider.sh
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationFlatseal.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationFlatseal.sh
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationHeroic.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationHeroic.sh
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationLutris.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationLutris.sh
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationPlexamp.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationPlexamp.sh
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationSpotify.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationSpotify.sh
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationTidal.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationTidal.sh
source "$EMUDECKGIT"/functions/GenericApplicationsScripts/genericApplicationWarehouse.sh source "$emudeckBackend"/functions/GenericApplicationsScripts/genericApplicationWarehouse.sh
#remoteplayclientscripts #remoteplayclientscripts
source "$EMUDECKGIT"/functions/RemotePlayClientScripts/remotePlayChiaki.sh source "$emudeckBackend"/functions/RemotePlayClientScripts/remotePlayChiaki.sh
source "$EMUDECKGIT"/functions/RemotePlayClientScripts/remotePlayChiaking.sh source "$emudeckBackend"/functions/RemotePlayClientScripts/remotePlayChiaking.sh
source "$EMUDECKGIT"/functions/RemotePlayClientScripts/remotePlayGreenlight.sh source "$emudeckBackend"/functions/RemotePlayClientScripts/remotePlayGreenlight.sh
source "$EMUDECKGIT"/functions/RemotePlayClientScripts/remotePlayMoonlight.sh source "$emudeckBackend"/functions/RemotePlayClientScripts/remotePlayMoonlight.sh
source "$EMUDECKGIT"/functions/RemotePlayClientScripts/remotePlayParsec.sh source "$emudeckBackend"/functions/RemotePlayClientScripts/remotePlayParsec.sh
source "$EMUDECKGIT"/functions/RemotePlayClientScripts/remotePlayShadow.sh source "$emudeckBackend"/functions/RemotePlayClientScripts/remotePlayShadow.sh
source "$EMUDECKGIT"/functions/RemotePlayClientScripts/remotePlaySteamLink.sh source "$emudeckBackend"/functions/RemotePlayClientScripts/remotePlaySteamLink.sh
source "$EMUDECKGIT"/functions/cloudSyncHealth.sh source "$emudeckBackend"/functions/cloudSyncHealth.sh
source "$EMUDECKGIT"/android/functions/all.sh source "$emudeckBackend"/android/functions/all.sh
# Darwin overrides # Darwin overrides
if [ "$system" = "darwin" ]; then if [ "$system" = "darwin" ]; then
source "$EMUDECKGIT/darwin/functions/varsOverrides.sh" source "$emudeckBackend/darwin/functions/varsOverrides.sh"
source "$EMUDECKGIT/darwin/functions/all.sh" source "$emudeckBackend/darwin/functions/all.sh"
fi fi

View File

@ -1,40 +1,21 @@
#!/bin/bash #!/bin/bash
appImageInit() { appImageInit() {
#Fix cloudsync upload #Migrate emudeck folder
if [ -f "$toolsPath/rclone/rclone" ]; then
if [ ! -f "$HOME/.config/systemd/user/EmuDeckCloudSync.service" ]; then if [ -f "$HOME/emudeck/settings.sh" ] && [ ! -L "$HOME/emudeck/settings.sh" ]; then
zenity --info --text="If you are seeing this pop-up, that means you were affected by the CloudSync not uploading bug. It should be fixed now" # We move good old emudeck folder to .config
--title="CloudSync" \ rsync -avh "$HOME/emudeck/" "$emudeckFolder" && rm -rf "$HOME/emudeck" && mkdir "$HOME/emudeck" && ln -s "$emudeckFolder/settings.sh" "$HOME/emudeck/settings.sh"
--width=400 \
--height=300 #Add Emus launchers to ESDE
cloud_sync_createService rsync -avhp --mkpath "$emudeckBackend/chimeraOS/configs/emulationstation/custom_systems/es_find_rules.xml" "$(dirname "$es_rulesFile")" --backup --suffix=.bak
fi sed -i "s|/run/media/mmcblk0p1/Emulation|${emulationPath}|g" "$es_rulesFile"
fi fi
#Fix branch bugs
cd "$HOME/.config/EmuDeck/backend"
branchName=$(git rev-parse --abbrev-ref HEAD)
if [ ! -f "$HOME/emudeck/.$branchName" ]; then
if [[ $branchName =~ early ]]; then
rm -rf "$HOME/.config/EmuDeck/backend"
mkdir -p "$HOME/.config/EmuDeck/backend"
cd "$HOME/.config/EmuDeck/backend"
git clone --no-single-branch --depth=1 https://github.com/dragoonDorise/EmuDeck.git .
git checkout $branchName
touch "$HOME/emudeck/.$branchName"
zenity --info --text="Branch fixed, please manually restart EmuDeck"
--title="Restart needed" \
--width=400 \
--height=300
fi
fi
# Init functions # Init functions
mkdir -p "$HOME/emudeck/logs" mkdir -p "$emudeckLogs"
mkdir -p "$HOME/emudeck/feeds" mkdir -p "$emudeckFolder/feeds"
} }

View File

@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
# Dev variables (normally commented out) # Dev variables (normally commented out)
#EMUDECKGIT="$HOME/github/EmuDeck" #dev #emudeckBackend="$HOME/github/EmuDeck" #dev
CloudScripts_update() { CloudScripts_update() {
fixCloudScripts fixCloudScripts
@ -90,7 +90,7 @@ manageServicesMenu() {
done done
# Import steam profile # Import steam profile
rsync -r "$EMUDECKGIT/configs/steam-input/emudeck_cloud_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/" rsync -r "$emudeckBackend/configs/steam-input/emudeck_cloud_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
# Notify to update & run SRM # Notify to update & run SRM
csmSRMNotification csmSRMNotification
@ -393,7 +393,7 @@ runGASettings()
manageRPSMenu() { manageRPSMenu() {
# Create array of all Remote Play clients # Create array of all Remote Play clients
cd "$EMUDECKGIT/functions/RemotePlayClientScripts" || return cd "$emudeckBackend/functions/RemotePlayClientScripts" || return
declare -a arrAllRP=() declare -a arrAllRP=()
arrAllRP+=( $(Chiaki_IsInstalled) "Chiaki") arrAllRP+=( $(Chiaki_IsInstalled) "Chiaki")
@ -443,7 +443,7 @@ manageRPSMenu() {
manageGAMenu() { manageGAMenu() {
# Create array of all Generic Applications # Create array of all Generic Applications
cd "$EMUDECKGIT/functions/GenericApplicationsScripts" || return cd "$emudeckBackend/functions/GenericApplicationsScripts" || return
declare -a arrAllGA=() declare -a arrAllGA=()
arrAllGA+=( $(Bottles_IsInstalled) "Bottles") arrAllGA+=( $(Bottles_IsInstalled) "Bottles")
@ -603,7 +603,7 @@ csmMainMenu() {
elif [ "$CHOICE" == "Manage Remote Play Clients" ]; then elif [ "$CHOICE" == "Manage Remote Play Clients" ]; then
manageRPSMenu manageRPSMenu
elif [ "$CHOICE" == "Manage Generic Applications" ]; then elif [ "$CHOICE" == "Manage Generic Applications" ]; then
manageGAMenu manageGAMenu
elif [ "$CHOICE" == "Change Settings" ]; then elif [ "$CHOICE" == "Change Settings" ]; then
changeSettingsMenu changeSettingsMenu
elif [ "$CHOICE" == "Add to ES-DE and Pegasus" ]; then elif [ "$CHOICE" == "Add to ES-DE and Pegasus" ]; then
@ -688,9 +688,9 @@ addESDEPegasus(){
# Pegasus # Pegasus
local pegasusDirectoriesFile="$HOME/.config/pegasus-frontend/game_dirs.txt" local pegasusDirectoriesFile="$HOME/.config/pegasus-frontend/game_dirs.txt"
cp "$HOME/.config/EmuDeck/backend/roms/desktop/cloud/metadata.txt" "$romsPath/desktop/cloud" cp "$emudeckBackend/roms/desktop/cloud/metadata.txt" "$romsPath/desktop/cloud"
cp "$HOME/.config/EmuDeck/backend/roms/desktop/remoteplay/metadata.txt" "$romsPath/desktop/remoteplay" cp "$emudeckBackend/roms/desktop/remoteplay/metadata.txt" "$romsPath/desktop/remoteplay"
cp "$HOME/.config/EmuDeck/backend/roms/desktop/generic-applications/metadata.txt" "$romsPath/desktop/generic-applications" cp "$emudeckBackend/roms/desktop/generic-applications/metadata.txt" "$romsPath/desktop/generic-applications"
if ! grep -Fxq "$romsPath/desktop/cloud" "$pegasusDirectoriesFile"; then if ! grep -Fxq "$romsPath/desktop/cloud" "$pegasusDirectoriesFile"; then
echo "$romsPath/desktop/cloud" >> "$pegasusDirectoriesFile" echo "$romsPath/desktop/cloud" >> "$pegasusDirectoriesFile"
@ -732,13 +732,13 @@ addESDEPegasus(){
# Initialization # # Initialization #
################## ##################
if [[ "$EMUDECKGIT" == "" ]]; then if [[ "$emudeckBackend" == "" ]]; then
EMUDECKGIT="$HOME/.config/EmuDeck/backend" emudeckBackend="$HOME/.config/EmuDeck/backend"
fi fi
LOCALCLOUDFILES="$EMUDECKGIT/tools/cloud" LOCALCLOUDFILES="$emudeckBackend/tools/cloud"
LOCALRPFILES="$EMUDECKGIT/tools/remoteplayclients" LOCALRPFILES="$emudeckBackend/tools/remoteplayclients"
source "$EMUDECKGIT/functions/all.sh" source "$emudeckBackend/functions/all.sh"
# Check for existing cloud.conf or install & setup # Check for existing cloud.conf or install & setup
mkdir -p "$romsPath/cloud" mkdir -p "$romsPath/cloud"

View File

@ -30,7 +30,7 @@ cloudSyncHealth(){
local upload=1 local upload=1
local download=1 local download=1
touch "$HOME/emudeck/logs/cloudHealth.log" touch "$emudeckLogs/cloudHealth.log"
{ {
cloud_sync_stopService cloud_sync_stopService
@ -150,7 +150,7 @@ cloudSyncHealth(){
} > "$HOME/emudeck/logs/cloudHealth.log" } > "$emudeckLogs/cloudHealth.log"
echo "<table class='table'>" echo "<table class='table'>"
echo "<tr>" echo "<tr>"

View File

@ -12,7 +12,7 @@ configEmuFP(){
fi fi
setMSG "Updating $name Config using $overwrite" setMSG "Updating $name Config using $overwrite"
rsync -avhp --mkpath "$EMUDECKGIT/configs/${ID}" "$HOME/.var/app/" $overwrite rsync -avhp --mkpath "$emudeckBackend/configs/${ID}" "$HOME/.var/app/" $overwrite
} }

View File

@ -19,13 +19,13 @@ createDesktopIcons(){
#New EmuDeck icon, same place so people won't get confused #New EmuDeck icon, same place so people won't get confused
createDesktopShortcut "$desktop/EmuDeck.desktop" \ createDesktopShortcut "$desktop/EmuDeck.desktop" \
"EmuDeck" \ "EmuDeck" \
"$HOME/Applications/EmuDeck.AppImage$sandbox" \ "$emusFolder/EmuDeck.AppImage$sandbox" \
"false" "false"
#App list #App list
#desktop-file-install --dir --delete-original "$HOME/Desktop/EmuDeck.desktop" #desktop-file-install --dir --delete-original "$HOME/Desktop/EmuDeck.desktop"
createDesktopShortcut "$HOME/.local/share/applications/EmuDeck.desktop" \ createDesktopShortcut "$HOME/.local/share/applications/EmuDeck.desktop" \
"EmuDeck" \ "EmuDeck" \
"$HOME/Applications/EmuDeck.AppImage$sandbox" \ "$emusFolder/EmuDeck.AppImage$sandbox" \
"false" "false"
} }

View File

@ -18,6 +18,6 @@ createFolders(){
find "$romsPath" -name readme.txt -type f -delete -maxdepth 2 find "$romsPath" -name readme.txt -type f -delete -maxdepth 2
sleep 3 sleep 3
rsync -r --ignore-existing "$EMUDECKGIT/roms/" "$romsPath" rsync -r --ignore-existing "$emudeckBackend/roms/" "$romsPath"
#End repeated code #End repeated code
} }

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
MSG="$HOME/.config/EmuDeck/msg.log" MSG="$emudeckFolder/msg.log"
generateGameLists() { generateGameLists() {
@ -20,17 +20,17 @@ generateGameLists() {
generateGameLists_downloadData generateGameLists_downloadData
pegasus_setPaths pegasus_setPaths
rsync -r --exclude='roms' --exclude='txt' "$EMUDECKGIT/roms/" "$storagePath/retrolibrary/artwork" --keep-dirlinks rsync -r --exclude='roms' --exclude='txt' "$emudeckBackend/roms/" "$storagePath/retrolibrary/artwork" --keep-dirlinks
mkdir -p "$storagePath/retrolibrary/cache/" mkdir -p "$storagePath/retrolibrary/cache/"
echo "Database built" > "$MSG" echo "Database built" > "$MSG"
python $HOME/.config/EmuDeck/backend/tools/retro-library/generate_game_lists.py "$romsPath" python $emudeckBackend/tools/retro-library/generate_game_lists.py "$romsPath"
generateGameLists_artwork &> /dev/null & generateGameLists_artwork &> /dev/null &
} }
generateGameListsJson() { generateGameListsJson() {
generate_pythonEnv &> /dev/null generate_pythonEnv &> /dev/null
echo "Adding Games" > "$MSG" echo "Adding Games" > "$MSG"
#python $HOME/.config/EmuDeck/backend/tools/retro-library/generate_game_lists.py "$romsPath" #python $emudeckBackend/tools/retro-library/generate_game_lists.py "$romsPath"
echo "Games Added" > "$MSG" echo "Games Added" > "$MSG"
cat $storagePath/retrolibrary/cache/roms_games.json cat $storagePath/retrolibrary/cache/roms_games.json
#generateGameLists_artwork $userid &> /dev/null & #generateGameLists_artwork $userid &> /dev/null &
@ -39,15 +39,15 @@ generateGameListsJson() {
generateGameLists_importESDE() { generateGameLists_importESDE() {
generate_pythonEnv &> /dev/null generate_pythonEnv &> /dev/null
python $HOME/.config/EmuDeck/backend/tools/retro-library/import_media.py "$romsPath" "$dest_folder" python $emudeckBackend/tools/retro-library/import_media.py "$romsPath" "$dest_folder"
} }
generateGameLists_artwork() { generateGameLists_artwork() {
generate_pythonEnv &> /dev/null generate_pythonEnv &> /dev/null
echo "Searching for missing artwork" > "$MSG" echo "Searching for missing artwork" > "$MSG"
python $HOME/.config/EmuDeck/backend/tools/retro-library/missing_artwork_platforms.py "$romsPath" "$storagePath/retrolibrary/artwork" && python $HOME/.config/EmuDeck/backend/tools/retro-library/download_art_platforms.py "$storagePath/retrolibrary/artwork" python $emudeckBackend/tools/retro-library/missing_artwork_platforms.py "$romsPath" "$storagePath/retrolibrary/artwork" && python $emudeckBackend/tools/retro-library/download_art_platforms.py "$storagePath/retrolibrary/artwork"
$(python $HOME/.config/EmuDeck/backend/tools/retro-library/missing_artwork.py "$romsPath" "$storagePath/retrolibrary/artwork" && python $HOME/.config/EmuDeck/backend/tools/retro-library/download_art.py "$storagePath/retrolibrary/artwork") & $(python $emudeckBackend/tools/retro-library/missing_artwork.py "$romsPath" "$storagePath/retrolibrary/artwork" && python $emudeckBackend/tools/retro-library/download_art.py "$storagePath/retrolibrary/artwork") &
echo "Artwork finished. Restart if you see this message" > "$MSG" echo "Artwork finished. Restart if you see this message" > "$MSG"
} }
@ -91,7 +91,7 @@ generateGameLists_getPercentage() {
local accountfolder=$(ls -td $HOME/.steam/steam/userdata/* | head -n 1) local accountfolder=$(ls -td $HOME/.steam/steam/userdata/* | head -n 1)
local dest_folder="$storagePath/retrolibrary/artwork/" local dest_folder="$storagePath/retrolibrary/artwork/"
python $HOME/.config/EmuDeck/backend/tools/retro-library/missing_artwork_nohash.py "$romsPath" "$dest_folder" python $emudeckBackend/tools/retro-library/missing_artwork_nohash.py "$romsPath" "$dest_folder"
local json_file="$storagePath/retrolibrary/cache/roms_games.json" local json_file="$storagePath/retrolibrary/cache/roms_games.json"
local json_file_artwork="$storagePath/retrolibrary/cache/missing_artwork_no_hash.json" local json_file_artwork="$storagePath/retrolibrary/cache/missing_artwork_no_hash.json"
@ -137,7 +137,7 @@ generateGameLists_retroAchievements(){
local hash=$1 local hash=$1
local system=$2 local system=$2
local localDataPath="$storagePath/retrolibrary/achievements/$system.json" local localDataPath="$storagePath/retrolibrary/achievements/$system.json"
python $HOME/.config/EmuDeck/backend/tools/retro-library/retro_achievements.py "$cheevos_username" "$hash" "$localDataPath" python $emudeckBackend/tools/retro-library/retro_achievements.py "$cheevos_username" "$hash" "$localDataPath"
} }
generateGameLists_downloadAchievements(){ generateGameLists_downloadAchievements(){

View File

@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
#Global variables #Global variables
emuDecksettingsFile="$HOME/emudeck/settings.sh" emuDecksettingsFile="$emudeckFolder/settings.sh"
emuDeckEmuTypeFlatpak="Flatpak" emuDeckEmuTypeFlatpak="Flatpak"
emuDeckEmuTypeAppImage="AppImage" emuDeckEmuTypeAppImage="AppImage"
@ -11,8 +11,8 @@ emuDeckEmuTypeOther="Other"
function startLog() { function startLog() {
funcName="$1" funcName="$1"
mkdir -p "$HOME/emudeck/logs" mkdir -p "$emudeckLogs"
logFile="$HOME/emudeck/logs/$funcName.log" logFile="$emudeckLogs/$funcName.log"
touch "$logFile" touch "$logFile"
@ -170,7 +170,7 @@ function makeFunction(){
function deleteConfigs(){ function deleteConfigs(){
find "$HOME/.config/EmuDeck/backend/configs/org.libretro.RetroArch/config/retroarch/config" -type f -iname "*.opt" -o -type f -iname "*.cfg"| while read file find "$emudeckBackend/configs/org.libretro.RetroArch/config/retroarch/config" -type f -iname "*.opt" -o -type f -iname "*.cfg"| while read file
do do
rm "$file" rm "$file"
done done
@ -182,7 +182,7 @@ function customLocation(){
} }
function refreshSource(){ function refreshSource(){
source "$EMUDECKGIT/functions/all.sh" source "$emudeckBackend/functions/all.sh"
} }
function setAllEmuPaths(){ function setAllEmuPaths(){
@ -246,7 +246,7 @@ function updateOrAppendConfigLine(){
function getEnvironmentDetails(){ function getEnvironmentDetails(){
local sdpath=$(getSDPath) local sdpath=$(getSDPath)
local sdValid=$(testLocationValid "sd" "$sdpath") local sdValid=$(testLocationValid "sd" "$sdpath")
if [ -f "$HOME/.config/EmuDeck/.finished" ]; then if [ -f "$emudeckFolder/.finished" ]; then
firstRun="false" firstRun="false"
else else
firstRun="true" firstRun="true"
@ -563,7 +563,7 @@ function createDesktopShortcut(){
mkdir -p "$HOME/.local/share/applications/" mkdir -p "$HOME/.local/share/applications/"
mkdir -p "$HOME/.local/share/icons/emudeck/" mkdir -p "$HOME/.local/share/icons/emudeck/"
cp -v "$EMUDECKGIT/icons/$(cut -d " " -f1 <<< "$name")."{svg,jpg,png} "$HOME/.local/share/icons/emudeck/" 2>/dev/null cp -v "$emudeckBackend/icons/$(cut -d " " -f1 <<< "$name")."{svg,jpg,png} "$HOME/.local/share/icons/emudeck/" 2>/dev/null
icon=$(find "$HOME/.local/share/icons/emudeck/" -type f -iname "$(cut -d " " -f1 <<< "$name").*") icon=$(find "$HOME/.local/share/icons/emudeck/" -type f -iname "$(cut -d " " -f1 <<< "$name").*")
if [ -z "$icon" ]; then if [ -z "$icon" ]; then
@ -602,7 +602,7 @@ function desktopShortcutFieldUpdate(){
# update icon if name is updated # update icon if name is updated
if [ "$shortcutKey" == "Name" ]; then if [ "$shortcutKey" == "Name" ]; then
name=$shortcutValue name=$shortcutValue
cp -v "$EMUDECKGIT/icons/$(cut -d " " -f1 <<< "$name").{svg,jpg,png}" "$HOME/.local/share/icons/emudeck/" 2>/dev/null cp -v "$emudeckBackend/icons/$(cut -d " " -f1 <<< "$name").{svg,jpg,png}" "$HOME/.local/share/icons/emudeck/" 2>/dev/null
icon=$(find "$HOME/.local/share/icons/emudeck/" -type f \( -iname "$(cut -d " " -f1 <<< "$name").svg" -o -iname "$(cut -d " " -f1 <<< "$name").jpg" -o -iname "$(cut -d " " -f1 <<< "$name").png" \) -print -quit) icon=$(find "$HOME/.local/share/icons/emudeck/" -type f \( -iname "$(cut -d " " -f1 <<< "$name").svg" -o -iname "$(cut -d " " -f1 <<< "$name").jpg" -o -iname "$(cut -d " " -f1 <<< "$name").png" \) -print -quit)
echo "Icon Found: $icon" echo "Icon Found: $icon"
if [ -n "$icon" ]; then if [ -n "$icon" ]; then
@ -786,7 +786,7 @@ flushEmulatorLaunchers(){
rm -f "$f" rm -f "$f"
done done
find "${EMUDECKGIT}/tools/launchers/" -type f -iname "$shName.sh" -o -type f -iname "$shName-emu.sh" | \ find "$emudeckBackend/tools/launchers/" -type f -iname "$shName.sh" -o -type f -iname "$shName-emu.sh" | \
while read -r l while read -r l
do do
echo "deploying $l" echo "deploying $l"
@ -802,7 +802,7 @@ flushEmulatorLaunchers(){
} }
addSteamInputCustomIcons() { addSteamInputCustomIcons() {
rsync -av "$EMUDECKGIT/configs/steam-input/Icons/" "$HOME/.steam/steam/tenfoot/resource/images/library/controller/binding_icons" rsync -av "$emudeckBackend/configs/steam-input/Icons/" "$HOME/.steam/steam/tenfoot/resource/images/library/controller/binding_icons"
} }
getEmuInstallStatus() { getEmuInstallStatus() {
@ -832,8 +832,8 @@ check_internet_connection(){
zipLogs() { zipLogs() {
local desktop=$(xdg-user-dir DESKTOP) local desktop=$(xdg-user-dir DESKTOP)
logsFolder="$HOME/emudeck/logs" logsFolder="$emudeckLogs"
settingsFile="$HOME/emudeck/settings.sh" settingsFile="$emudeckFolder/settings.sh"
zipOutput="$desktop/emudeck_logs.zip" zipOutput="$desktop/emudeck_logs.zip"
# Comprime los archivos en un archivo zip # Comprime los archivos en un archivo zip
@ -927,7 +927,7 @@ saveLatestVersionGH() {
emuVersion=$(getLatestVersionGH "$repo") emuVersion=$(getLatestVersionGH "$repo")
# JSON file path # JSON file path
jsonFilePath="$HOME/emudeck/emu_versions.json" jsonFilePath="$emudeckFolder/emu_versions.json"
if [ -e "$jsonFilePath" ]; then if [ -e "$jsonFilePath" ]; then
echo "file found" echo "file found"
@ -954,11 +954,11 @@ saveLatestVersionGH() {
isLatestVersionGH() { isLatestVersionGH() {
emuName=$1 emuName=$1
dontUpdate="$HOME/emudeck/emulatorInit.noupdate" dontUpdate="$emudeckFolder/emulatorInit.noupdate"
emuDontUpdate="${emuName}.noupdate" emuDontUpdate="${emuName}.noupdate"
# check global noupdate file flag, emulator noupdate flag file using case insensitive find and internet connectivity # check global noupdate file flag, emulator noupdate flag file using case insensitive find and internet connectivity
if [ ! -f "${dontUpdate}" ] && [[ -z $(find "$HOME/emudeck/" -maxdepth 1 -type f -iname "${emuDontUpdate}") ]] && [ "$(check_internet_connection)" == "true" ]; then if [ ! -f "${dontUpdate}" ] && [[ -z $(find "$emudeckFolder" -maxdepth 1 -type f -iname "${emuDontUpdate}") ]] && [ "$(check_internet_connection)" == "true" ]; then
repo=$(getEmuRepo "$emuName") repo=$(getEmuRepo "$emuName")
if [ "$repo" == "none" ]; then if [ "$repo" == "none" ]; then
@ -967,7 +967,7 @@ isLatestVersionGH() {
emuVersion=$(getLatestVersionGH "$repo") emuVersion=$(getLatestVersionGH "$repo")
# JSON file path # JSON file path
jsonFilePath="$HOME/emudeck/emu_versions.json" jsonFilePath="$emudeckFolder/emu_versions.json"
if [ -f "$jsonFilePath" ]; then if [ -f "$jsonFilePath" ]; then
echo "file found" echo "file found"
@ -1016,8 +1016,8 @@ isLatestVersionGH() {
} }
addProtonLaunch(){ addProtonLaunch(){
rsync -avhp "$EMUDECKGIT/tools/proton-launch.sh" "${toolsPath}" rsync -avhp "$emudeckBackend/tools/proton-launch.sh" "${toolsPath}"
rsync -avhp "$EMUDECKGIT/tools/appID.py" "${toolsPath}" rsync -avhp "$emudeckBackend/tools/appID.py" "${toolsPath}"
chmod +x "${toolsPath}/proton-launch.sh" chmod +x "${toolsPath}/proton-launch.sh"
} }
@ -1036,7 +1036,7 @@ function emulatorInit(){
setSetting netplayCMD "' '" setSetting netplayCMD "' '"
cloud_sync_downloadEmu "$emuName" && cloud_sync_startService cloud_sync_downloadEmu "$emuName" && cloud_sync_startService
fi fi
source $HOME/.config/EmuDeck/backend/functions/all.sh source $emudeckBackend/functions/all.sh
fi fi
if [ "$emuName" != 'retroarch' ]; then if [ "$emuName" != 'retroarch' ]; then
@ -1112,22 +1112,22 @@ function controllerLayout_BAYX(){
} }
function server_install(){ function server_install(){
cp "$EMUDECKGIT/tools/server.sh" "$toolsPath/" cp "$emudeckBackend/tools/server.sh" "$toolsPath/"
#cp "$EMUDECKGIT/tools/index.html" "$toolsPath/" #cp "$emudeckBackend/tools/index.html" "$toolsPath/"
chmod +x "$toolsPath/server.sh" chmod +x "$toolsPath/server.sh"
} }
function startCompressor(){ function startCompressor(){
konsole -e "/bin/bash $HOME/.config/EmuDeck/backend/tools/chdconv/chddeck.sh" konsole -e "/bin/bash $emudeckBackend/tools/chdconv/chddeck.sh"
} }
function generate_pythonEnv() { function generate_pythonEnv() {
if [ ! -d "$HOME/.config/EmuDeck/python_virtual_env" ]; then if [ ! -d "$emudeckFolder/python_virtual_env" ]; then
python3 -m venv "$HOME/.config/EmuDeck/python_virtual_env" python3 -m venv "$emudeckFolder/python_virtual_env"
source "$HOME/.config/EmuDeck/python_virtual_env/bin/activate" source "$emudeckFolder/python_virtual_env/bin/activate"
pip install requests pip install requests
else else
source "$HOME/.config/EmuDeck/python_virtual_env/bin/activate" source "$emudeckFolder/python_virtual_env/bin/activate"
fi fi
} }

View File

@ -24,13 +24,13 @@ installEmuAI(){
fi fi
if [[ "$type" == "emulator" ]]; then if [[ "$type" == "emulator" ]]; then
gitPath="${EMUDECKGIT}/tools/launchers/" gitPath="$emudeckBackend/tools/launchers/"
launcherPath="${toolsPath}/launchers" launcherPath="${toolsPath}/launchers"
elif [[ "$type" == "remoteplay" ]]; then elif [[ "$type" == "remoteplay" ]]; then
gitPath="${EMUDECKGIT}/tools/remoteplayclients/" gitPath="$emudeckBackend/tools/remoteplayclients/"
launcherPath="${romsPath}/remoteplay" launcherPath="${romsPath}/remoteplay"
elif [[ "$type" == "genericapplication" ]]; then elif [[ "$type" == "genericapplication" ]]; then
gitPath="${EMUDECKGIT}/tools/generic-applications/" gitPath="$emudeckBackend/tools/generic-applications/"
launcherPath="${romsPath}/generic-applications" launcherPath="${romsPath}/generic-applications"
fi fi
@ -45,24 +45,24 @@ installEmuAI(){
echo "09, Last Version: $latestVer" echo "09, Last Version: $latestVer"
echo "10, Download checksum (SHA256): $downloadChecksumSha256" echo "10, Download checksum (SHA256): $downloadChecksumSha256"
#rm -f "$HOME/Applications/$fileName.$format" # mv in safeDownload will overwrite... #rm -f "$emusFolder/$fileName.$format" # mv in safeDownload will overwrite...
mkdir -p "$HOME/Applications" mkdir -p "$emusFolder"
if [[ -z "$url" ]]; then if [[ -z "$url" ]]; then
if [ -f "$HOME/Applications/${fileName}.${format}" ]; then if [ -f "$emusFolder/${fileName}.${format}" ]; then
echo "No download link provided but local file already exists. Will refresh links and launcher." echo "No download link provided but local file already exists. Will refresh links and launcher."
else else
echo "No download link provided and no local file exists, exitting." echo "No download link provided and no local file exists, exitting."
return 1 return 1
fi fi
elif safeDownload "$name" "$url" "$HOME/Applications/${fileName}.${format}" "$showProgress" "" "$downloadChecksumSha256"; then elif safeDownload "$name" "$url" "$emusFolder/${fileName}.${format}" "$showProgress" "" "$downloadChecksumSha256"; then
echo "$name downloaded successfuly." echo "$name downloaded successfuly."
else else
echo "Failed to download or verify $name." echo "Failed to download or verify $name."
return 1 return 1
fi fi
chmod +x "$HOME/Applications/$fileName.AppImage" chmod +x "$emusFolder/$fileName.AppImage"
if [[ -n $lastVerFile ]] && [[ -n $latestVer ]]; then if [[ -n $lastVerFile ]] && [[ -n $latestVer ]]; then
echo "latest version $latestVer > $lastVerFile" echo "latest version $latestVer > $lastVerFile"
echo "$latestVer" > "$lastVerFile" echo "$latestVer" > "$lastVerFile"

View File

@ -20,11 +20,11 @@ installEmuBI(){
echo "6, Last Version File: $lastVerFile" echo "6, Last Version File: $lastVerFile"
echo "7, Last Version: $latestVer" echo "7, Last Version: $latestVer"
#rm -f "$HOME/Applications/$fileName.$format" # mv below will overwrite... #rm -f "$emusFolder/$fileName.$format" # mv below will overwrite...
mkdir -p "$HOME/Applications" mkdir -p "$emusFolder"
#curl -L "$url" -o "$HOME/Applications/$fileName.$format.temp" && mv "$HOME/Applications/$fileName.$format.temp" "$HOME/Applications/$fileName.$format" #curl -L "$url" -o "$emusFolder/$fileName.$format.temp" && mv "$emusFolder/$fileName.$format.temp" "$emusFolder/$fileName.$format"
if safeDownload "$name" "$url" "$HOME/Applications/${fileName}.${format}" "$showProgress"; then if safeDownload "$name" "$url" "$emusFolder/${fileName}.${format}" "$showProgress"; then
if [[ -n $lastVerFile ]] && [[ -n $latestVer ]]; then if [[ -n $lastVerFile ]] && [[ -n $latestVer ]]; then
echo "latest version $latestVer > $lastVerFile" echo "latest version $latestVer > $lastVerFile"
echo "$latestVer" > "$lastVerFile" echo "$latestVer" > "$lastVerFile"
@ -42,7 +42,7 @@ installEmuBI(){
rm -f "$f" rm -f "$f"
done done
find "${EMUDECKGIT}/tools/launchers/" -type f -iname "$shName.sh" -o -type f -iname "$shName-emu.sh" | \ find "$emudeckBackend/tools/launchers/" -type f -iname "$shName.sh" -o -type f -iname "$shName-emu.sh" | \
while read -r l while read -r l
do do
echo "deploying $l" echo "deploying $l"

View File

@ -1,19 +1,19 @@
#!/bin/bash #!/bin/bash
installEmuFP(){ installEmuFP(){
local name="$1" local name="$1"
local ID="$2" local ID="$2"
local type="$3" local type="$3"
local scriptname="$4" local scriptname="$4"
if [[ "$type" == "emulator" ]]; then if [[ "$type" == "emulator" ]]; then
gitPath="${EMUDECKGIT}/tools/launchers/" gitPath="$emudeckBackend/tools/launchers/"
launcherPath="${toolsPath}/launchers" launcherPath="${toolsPath}/launchers"
elif [[ "$type" == "remoteplay" ]]; then elif [[ "$type" == "remoteplay" ]]; then
gitPath="${EMUDECKGIT}/tools/remoteplayclients/" gitPath="$emudeckBackend/tools/remoteplayclients/"
launcherPath="${romsPath}/remoteplay" launcherPath="${romsPath}/remoteplay"
elif [[ "$type" == "genericapplication" ]]; then elif [[ "$type" == "genericapplication" ]]; then
gitPath="${EMUDECKGIT}/tools/generic-applications/" gitPath="$emudeckBackend/tools/generic-applications/"
launcherPath="${romsPath}/generic-applications" launcherPath="${romsPath}/generic-applications"
fi fi
@ -27,7 +27,7 @@ installEmuFP(){
echo "4, Flatpak Script Name: $scriptname" echo "4, Flatpak Script Name: $scriptname"
setMSG "Installing $name" setMSG "Installing $name"
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo --user flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo --user
flatpak install flathub "$ID" -y --user flatpak install flathub "$ID" -y --user
flatpak override "$ID" --filesystem=host --user flatpak override "$ID" --filesystem=host --user
@ -36,7 +36,7 @@ installEmuFP(){
if [ "$(flatpak --columns=app list --user | grep "$ID")" == "$ID" ]; then if [ "$(flatpak --columns=app list --user | grep "$ID")" == "$ID" ]; then
flatpak uninstall "$ID" --system -y flatpak uninstall "$ID" --system -y
fi fi
shName=$(echo "$scriptname" | awk '{print tolower($0)}') shName=$(echo "$scriptname" | awk '{print tolower($0)}')
mkdir -p "${romsPath}/emulators" mkdir -p "${romsPath}/emulators"
mkdir -p "$launcherPath" mkdir -p "$launcherPath"
@ -54,6 +54,6 @@ installEmuFP(){
if [[ "$type" == "emulator" ]]; then if [[ "$type" == "emulator" ]]; then
cp -v "$l" "${romsPath}/emulators" cp -v "$l" "${romsPath}/emulators"
chmod +x "${romsPath}/emulators/"* chmod +x "${romsPath}/emulators/"*
fi fi
done done
} }

View File

@ -47,7 +47,7 @@ installToolAI(){
# rm -f "$f" # rm -f "$f"
# done # done
# #
# find "${EMUDECKGIT}/tools/launchers/" -maxdepth 2 -type f -iname "$shName.sh" -o -type f -iname "$shName-emu.sh" | \ # find "$emudeckBackend/tools/launchers/" -maxdepth 2 -type f -iname "$shName.sh" -o -type f -iname "$shName-emu.sh" | \
# while read -r l # while read -r l
# do # do
# echo "deploying $l" # echo "deploying $l"

View File

@ -11,7 +11,7 @@ migrationTable=$2
# unlink $path # unlink $path
# fi # fi
#done #done
migrationFlag="$HOME/.config/EmuDeck/.${emu}MigrationCompleted" migrationFlag="$emudeckFolder/.${emu}MigrationCompleted"
#check if we have a nomigrateflag for $emu #check if we have a nomigrateflag for $emu
if [ ! -f "$migrationFlag" ]; then if [ ! -f "$migrationFlag" ]; then

View File

@ -10,8 +10,8 @@ setMSG() {
progressBar=90 progressBar=90
fi fi
echo "$progressBar" > "$HOME/emudeck/logs/msg.log" echo "$progressBar" > "$emudeckLogs/msg.log"
echo "# $1" >> "$HOME/emudeck/logs/msg.log" echo "# $1" >> "$emudeckLogs/msg.log"
echo "$1" echo "$1"
sleep 0.5 sleep 0.5
} }

View File

@ -27,9 +27,9 @@ function uninstallEmuAI() {
echo "3, Application File Format: $format" echo "3, Application File Format: $format"
echo "4, Application Type: $type" echo "4, Application Type: $type"
echo "Uninstalling $name. Deleting "$HOME/Applications/$filename.$format". Deleting "$HOME/.local/share/applications/$name.desktop"" echo "Uninstalling $name. Deleting "$emusFolder/$filename.$format". Deleting "$HOME/.local/share/applications/$name.desktop""
rm -rf "$HOME/Applications/$filename.$format" rm -rf "$emusFolder/$filename.$format"
rm -rf "$HOME/.local/share/applications/$name.desktop" rm -rf "$HOME/.local/share/applications/$name.desktop"
shName=$(echo "$name" | awk '{print tolower($0)}') shName=$(echo "$name" | awk '{print tolower($0)}')

View File

@ -7,13 +7,13 @@ updateEmuFP(){
scriptname="$4" scriptname="$4"
if [[ "$type" == "emulator" ]]; then if [[ "$type" == "emulator" ]]; then
gitPath="${EMUDECKGIT}/tools/launchers/" gitPath="$emudeckBackend/tools/launchers/"
launcherPath="${toolsPath}/launchers" launcherPath="${toolsPath}/launchers"
elif [[ "$type" == "remoteplay" ]]; then elif [[ "$type" == "remoteplay" ]]; then
gitPath="${EMUDECKGIT}/tools/remoteplayclients/" gitPath="$emudeckBackend/tools/remoteplayclients/"
launcherPath="${romsPath}/remoteplay" launcherPath="${romsPath}/remoteplay"
elif [[ "$type" == "genericapplication" ]]; then elif [[ "$type" == "genericapplication" ]]; then
gitPath="${EMUDECKGIT}/tools/generic-applications/" gitPath="$emudeckBackend/tools/generic-applications/"
launcherPath="${romsPath}/generic-applications" launcherPath="${romsPath}/generic-applications"
fi fi

View File

@ -95,7 +95,7 @@ checkSpace "$origin/EmuDeck/saves/" "$emulationPath"
for entry in "$origin/EmuDeck/saves/"* for entry in "$origin/EmuDeck/saves/"*
do do
rsync -rav --ignore-existing --progress "$entry" "$emulationPath/saves/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/saves/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close rsync -rav --ignore-existing --progress "$entry" "$emulationPath/saves/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/saves/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close
done done
@ -117,7 +117,7 @@ if [ "$size" -gt 4096 ]; then
for entry in "$origin/EmuDeck/storage/"* for entry in "$origin/EmuDeck/storage/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$emulationPath/storage/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/storage/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$emulationPath/storage/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/storage/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close
done done
else else
@ -141,7 +141,7 @@ if [ "$size" -gt 4096 ]; then
for entry in "$origin/EmuDeck/bios/"* for entry in "$origin/EmuDeck/bios/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$emulationPath/bios/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/bios/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$emulationPath/bios/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/bios/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close
done done
else else
@ -166,7 +166,7 @@ if [ "$size" -gt 4096 ]; then
for entry in "$origin/EmuDeck/tools/downloaded_media/"* for entry in "$origin/EmuDeck/tools/downloaded_media/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$emulationPath/bios/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/tools/downloaded_media/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$emulationPath/bios/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/tools/downloaded_media/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close
done done
else else
@ -192,7 +192,7 @@ if [ "$size" -gt 4096 ]; then
for entry in "$origin/EmuDeck/roms/"* for entry in "$origin/EmuDeck/roms/"*
do do
rsync -ravL --ignore-existing --progress "$entry" "$emulationPath/roms/" | awk -f $HOME/.config/EmuDeck/backend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/roms/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close rsync -ravL --ignore-existing --progress "$entry" "$emulationPath/roms/" | awk -f $emudeckBackend/rsync.awk | zenity --progress --text="Importing $entry to $emulationPath/roms/" --title="Importing $entry..." --width=400 --percentage=0 --auto-close
done done
else else

219
setup.sh
View File

@ -1,5 +1,12 @@
#!/bin/bash #!/bin/bash
MSG=$HOME/emudeck/logs/msg.log #
##
## set backend location
##
# I think this should just be in the source, so there's one spot for initialization. hrm, no i'm wrong. Here is best.
emudeckBackend="$HOME/.config/EmuDeck/backend/"
. "$emudeckBackend/vars.sh"
MSG=$emudeckLogs/msg.log
echo "0" > "$MSG" echo "0" > "$MSG"
#Darwin #Darwin
@ -19,8 +26,8 @@ fi
# #
mkdir -p "$HOME/.config/EmuDeck" mkdir -p "$HOME/.config/EmuDeck"
mkdir -p "$HOME/emudeck/logs" mkdir -p "$emudeckLogs"
PIDFILE="$HOME/.config/EmuDeck/install.pid" PIDFILE="$emudeckFolder/install.pid"
if [ -f "$PIDFILE" ]; then if [ -f "$PIDFILE" ]; then
@ -64,20 +71,19 @@ trap finish EXIT
#Clean up previous installations #Clean up previous installations
rm ~/emudek.log 2>/dev/null # This is emudeck's old log file, it's not a typo! rm ~/emudek.log 2>/dev/null # This is emudeck's old log file, it's not a typo!
rm -rf ~/dragoonDoriseTools rm -rf ~/dragoonDoriseTools
rm -rf ~/emudeck/backend
#Creating log file #Creating log file
LOGFILE="$HOME/emudeck/logs/emudeckSetup.log" LOGFILE="$emudeckLogs/emudeckSetup.log"
mkdir -p "$HOME/emudeck" mkdir -p "$HOME/.config/EmuDeck"
#Custom Scripts #Custom Scripts
mkdir -p "$HOME/emudeck/custom_scripts" mkdir -p "$emudeckFolder/custom_scripts"
echo $'#!/bin/bash\nEMUDECKGIT="$HOME/.config/EmuDeck/backend"\nsource "$EMUDECKGIT/functions/all.sh"' > "$HOME/emudeck/custom_scripts/example.sh" echo $'#!/bin/bash\nemudeckBackend="$HOME/.config/EmuDeck/backend/"\nsource "$emudeckBackend/functions/all.sh"' > "$emudeckFolder/custom_scripts/example.sh"
echo "Press the button to start..." > "$LOGFILE" echo "Press the button to start..." > "$LOGFILE"
mv "${LOGFILE}" "$HOME/emudeck/logs/emudeckSetup.last.log" #backup last log mv "${LOGFILE}" "$emudeckLogs/emudeckSetup.last.log" #backup last log
if echo "${@}" > "${LOGFILE}" ; then if echo "${@}" > "${LOGFILE}" ; then
echo "Log created" echo "Log created"
@ -90,23 +96,16 @@ fi
{ {
date "+%Y.%m.%d-%H:%M:%S %Z" date "+%Y.%m.%d-%H:%M:%S %Z"
#Mark if this not a fresh install #Mark if this not a fresh install
FOLDER="$HOME/.config/EmuDeck/" FOLDER="$emudeckFolder"
if [ -d "$FOLDER" ]; then if [ -d "$FOLDER" ]; then
echo "" > "$HOME/.config/EmuDeck/.finished" echo "" > "$emudeckFolder/.finished"
fi fi
sleep 1 sleep 1
SECONDTIME="$HOME/.config/EmuDeck/.finished" SECONDTIME="$emudeckFolder/.finished"
#Lets log github API limits just in case #Lets log github API limits just in case
echo 'Github API limits:' echo 'Github API limits:'
time curl -H "Accept: application/vnd.github+json" -H "X-GitHub-Api-Version: 2022-11-28" "https://api.github.com/rate_limit" curl -H "Accept: application/vnd.github+json" -H "X-GitHub-Api-Version: 2022-11-28" "https://api.github.com/rate_limit"
#
##
## set backend location
##
# I think this should just be in the source, so there's one spot for initialization. hrm, no i'm wrong. Here is best.
EMUDECKGIT="$HOME/.config/EmuDeck/backend"
# #
@ -117,10 +116,10 @@ EMUDECKGIT="$HOME/.config/EmuDeck/backend"
source "$EMUDECKGIT"/functions/helperFunctions.sh source "$emudeckBackend"/functions/helperFunctions.sh
source "$EMUDECKGIT"/functions/jsonToBashVars.sh source "$emudeckBackend"/functions/jsonToBashVars.sh
time jsonToBashVars "$HOME/.config/EmuDeck/settings.json" jsonToBashVars "$emudeckFolder/settings.json"
source "$EMUDECKGIT/functions/all.sh" source "$emudeckBackend/functions/all.sh"
#after sourcing functins, check if path is empty. #after sourcing functins, check if path is empty.
@ -137,8 +136,8 @@ grep -vi pass "$emuDecksettingsFile"
# #
echo "" echo ""
echo "Env Details: " echo "Env Details: "
time getEnvironmentDetails getEnvironmentDetails
time testRealDeck testRealDeck
#this sets up the settings file with defaults, in case they don't have a new setting we've added. #this sets up the settings file with defaults, in case they don't have a new setting we've added.
#also echos them all out so they are in the log. #also echos them all out so they are in the log.
@ -146,167 +145,167 @@ time testRealDeck
#createUpdateSettingsFile #createUpdateSettingsFile
#create folders after tests! #create folders after tests!
time createFolders createFolders
#setup Proton-Launch.sh #setup Proton-Launch.sh
#because this path gets updated by sed, we really should be installing it every time and allowing it to be updated every time. In case the user changes their path. #because this path gets updated by sed, we really should be installing it every and allowing it to be updated every time. In case the user changes their path.
cp "$EMUDECKGIT/tools/proton-launch.sh" "${toolsPath}/proton-launch.sh" cp "$emudeckBackend/tools/proton-launch.sh" "${toolsPath}/proton-launch.sh"
chmod +x "${toolsPath}/proton-launch.sh" chmod +x "${toolsPath}/proton-launch.sh"
cp "$EMUDECKGIT/tools/appID.py" "${toolsPath}/appID.py" cp "$emudeckBackend/tools/appID.py" "${toolsPath}/appID.py"
# Setup emu-launch.sh # Setup emu-launch.sh
cp "${EMUDECKGIT}/tools/emu-launch.sh" "${toolsPath}/emu-launch.sh" cp "$emudeckBackend/tools/emu-launch.sh" "${toolsPath}/emu-launch.sh"
chmod +x "${toolsPath}/emu-launch.sh" chmod +x "${toolsPath}/emu-launch.sh"
#ESDE Installation #ESDE Installation
if [ $doInstallESDE == "true" ]; then if [ $doInstallESDE == "true" ]; then
echo "install esde" echo "install esde"
time ESDE_install ESDE_install
fi fi
#Pegasus Installation #Pegasus Installation
if [ $doInstallPegasus == "true" ]; then if [ $doInstallPegasus == "true" ]; then
echo "install Pegasus" echo "install Pegasus"
time pegasus_install pegasus_install
fi fi
#SRM Installation #SRM Installation
if [ $doInstallSRM == "true" ]; then if [ $doInstallSRM == "true" ]; then
echo "install srm" echo "install srm"
time SRM_install SRM_install
fi fi
if [ "$doInstallPCSX2QT" == "true" ]; then if [ "$doInstallPCSX2QT" == "true" ]; then
echo "install pcsx2Qt" echo "install pcsx2Qt"
time PCSX2QT_install PCSX2QT_install
fi fi
if [ $doInstallPrimeHack == "true" ]; then if [ $doInstallPrimeHack == "true" ]; then
echo "install primehack" echo "install primehack"
time Primehack_install Primehack_install
fi fi
if [ $doInstallRPCS3 == "true" ]; then if [ $doInstallRPCS3 == "true" ]; then
echo "install rpcs3" echo "install rpcs3"
time RPCS3_install RPCS3_install
fi fi
if [ $doInstallCitra == "true" ]; then if [ $doInstallCitra == "true" ]; then
echo "install Citra" echo "install Citra"
time Citra_install Citra_install
fi fi
if [ $doInstallLime3DS == "true" ]; then if [ $doInstallLime3DS == "true" ]; then
echo "install Lime3DS" echo "install Lime3DS"
time Lime3DS_install Lime3DS_install
fi fi
if [ $doInstallDolphin == "true" ]; then if [ $doInstallDolphin == "true" ]; then
echo "install Dolphin" echo "install Dolphin"
time Dolphin_install Dolphin_install
fi fi
if [ $doInstallDuck == "true" ]; then if [ $doInstallDuck == "true" ]; then
echo "DuckStation_install" echo "DuckStation_install"
time DuckStation_install DuckStation_install
fi fi
if [ $doInstallRA == "true" ]; then if [ $doInstallRA == "true" ]; then
echo "RetroArch_install" echo "RetroArch_install"
time RetroArch_install RetroArch_install
fi fi
if [ $doInstallRMG == "true" ]; then if [ $doInstallRMG == "true" ]; then
echo "RMG_install" echo "RMG_install"
time RMG_install RMG_install
fi fi
if [ $doInstallares == "true" ]; then if [ $doInstallares == "true" ]; then
echo "ares_install" echo "ares_install"
time ares_install ares_install
fi fi
if [ $doInstallPPSSPP == "true" ]; then if [ $doInstallPPSSPP == "true" ]; then
echo "PPSSPP_install" echo "PPSSPP_install"
time PPSSPP_install PPSSPP_install
fi fi
if [ $doInstallYuzu == "true" ]; then if [ $doInstallYuzu == "true" ]; then
echo "Yuzu_install" echo "Yuzu_install"
time Yuzu_install Yuzu_install
fi fi
if [ $doInstallSuyu == "true" ]; then if [ $doInstallSuyu == "true" ]; then
echo "suyu_install" echo "suyu_install"
time suyu_install suyu_install
fi fi
if [ $doInstallRyujinx == "true" ]; then if [ $doInstallRyujinx == "true" ]; then
echo "Ryujinx_install" echo "Ryujinx_install"
time Ryujinx_install Ryujinx_install
fi fi
if [ $doInstallMAME == "true" ]; then if [ $doInstallMAME == "true" ]; then
echo "MAME_install" echo "MAME_install"
time MAME_install MAME_install
fi fi
if [ $doInstallXemu == "true" ]; then if [ $doInstallXemu == "true" ]; then
echo "Xemu_install" echo "Xemu_install"
time Xemu_install Xemu_install
fi fi
if [ $doInstallCemu == "true" ]; then if [ $doInstallCemu == "true" ]; then
echo "Cemu_install" echo "Cemu_install"
time Cemu_install Cemu_install
fi fi
if [ "${doInstallCemuNative}" == "true" ]; then if [ "${doInstallCemuNative}" == "true" ]; then
echo "CemuNative_install" echo "CemuNative_install"
time CemuNative_install CemuNative_install
fi fi
if [ $doInstallScummVM == "true" ]; then if [ $doInstallScummVM == "true" ]; then
echo "ScummVM_install" echo "ScummVM_install"
time ScummVM_install ScummVM_install
fi fi
if [ $doInstallVita3K == "true" ]; then if [ $doInstallVita3K == "true" ]; then
echo "Vita3K_install" echo "Vita3K_install"
time Vita3K_install Vita3K_install
fi fi
if [ $doInstallMGBA == "true" ]; then if [ $doInstallMGBA == "true" ]; then
echo "mGBA_install" echo "mGBA_install"
time mGBA_install mGBA_install
fi fi
if [ $doInstallFlycast == "true" ]; then if [ $doInstallFlycast == "true" ]; then
echo "Flycast_install" echo "Flycast_install"
time Flycast_install Flycast_install
fi fi
if [ $doInstallRMG == "true" ]; then if [ $doInstallRMG == "true" ]; then
echo "RMG_install" echo "RMG_install"
time RMG_install RMG_install
fi fi
if [ $doInstallares == "true" ]; then if [ $doInstallares == "true" ]; then
echo "ares_install" echo "ares_install"
time ares_install ares_install
fi fi
if [ $doInstallmelonDS == "true" ]; then if [ $doInstallmelonDS == "true" ]; then
echo "melonDS_install" echo "melonDS_install"
time melonDS_install melonDS_install
fi fi
if [ $doInstallBigPEmu == "true" ]; then if [ $doInstallBigPEmu == "true" ]; then
echo "BigPEmu_install" echo "BigPEmu_install"
time BigPEmu_install BigPEmu_install
fi fi
if [ $doInstallSupermodel == "true" ]; then if [ $doInstallSupermodel == "true" ]; then
echo "Supermodel_install" echo "Supermodel_install"
time Supermodel_install Supermodel_install
fi fi
#Xenia - We need to install Xenia after creating the Roms folders! #Xenia - We need to install Xenia after creating the Roms folders!
if [ "$doInstallXenia" == "true" ]; then if [ "$doInstallXenia" == "true" ]; then
echo "Xenia_install" echo "Xenia_install"
time Xenia_install Xenia_install
fi fi
if [ "$doInstallModel2" == "true" ]; then if [ "$doInstallModel2" == "true" ]; then
echo "Model2_install" echo "Model2_install"
time Model2_install Model2_install
fi fi
if [ "$doInstallShadPS4" == "true" ]; then if [ "$doInstallShadPS4" == "true" ]; then
echo "ShadPS4_install" echo "ShadPS4_install"
time ShadPS4_install ShadPS4_install
fi fi
#Steam RomManager Config #Steam RomManager Config
if [ "$doSetupSRM" == "true" ]; then if [ "$doSetupSRM" == "true" ]; then
echo "SRM_init" echo "SRM_init"
time SRM_init SRM_init
fi fi
#ESDE Config #ESDE Config
if [ "$doSetupESDE" == "true" ]; then if [ "$doSetupESDE" == "true" ]; then
echo "ESDE_init" echo "ESDE_init"
time ESDE_update ESDE_update
fi fi
#Pegasus Config #Pegasus Config
@ -323,112 +322,112 @@ setMSG "Configuring emulators.."
if [ "$doSetupRA" == "true" ]; then if [ "$doSetupRA" == "true" ]; then
echo "RetroArch_init" echo "RetroArch_init"
time RetroArch_init RetroArch_init
fi fi
if [ "$doSetupPrimehack" == "true" ]; then if [ "$doSetupPrimehack" == "true" ]; then
echo "Primehack_init" echo "Primehack_init"
time Primehack_init Primehack_init
fi fi
if [ "$doSetupDolphin" == "true" ]; then if [ "$doSetupDolphin" == "true" ]; then
echo "Dolphin_init" echo "Dolphin_init"
time Dolphin_init Dolphin_init
fi fi
if [ "$doSetupPCSX2QT" == "true" ]; then if [ "$doSetupPCSX2QT" == "true" ]; then
echo "PCSX2QT_init" echo "PCSX2QT_init"
time PCSX2QT_init PCSX2QT_init
fi fi
if [ "$doSetupRPCS3" == "true" ]; then if [ "$doSetupRPCS3" == "true" ]; then
echo "RPCS3_init" echo "RPCS3_init"
time RPCS3_init RPCS3_init
fi fi
if [ "$doSetupCitra" == "true" ]; then if [ "$doSetupCitra" == "true" ]; then
echo "Citra_init" echo "Citra_init"
time Citra_init Citra_init
fi fi
if [ $doSetupLime3DS == "true" ]; then if [ $doSetupLime3DS == "true" ]; then
echo "Lime3DS_init" echo "Lime3DS_init"
time Lime3DS_init Lime3DS_init
fi fi
if [ "$doSetupDuck" == "true" ]; then if [ "$doSetupDuck" == "true" ]; then
echo "DuckStation_init" echo "DuckStation_init"
time DuckStation_init DuckStation_init
fi fi
if [ "$doSetupYuzu" == "true" ]; then if [ "$doSetupYuzu" == "true" ]; then
echo "Yuzu_init" echo "Yuzu_init"
time Yuzu_init Yuzu_init
fi fi
if [ "$doSetupRyujinx" == "true" ]; then if [ "$doSetupRyujinx" == "true" ]; then
echo "Ryujinx_init" echo "Ryujinx_init"
time Ryujinx_init Ryujinx_init
fi fi
if [ "$doSetupShadPS4" == "true" ]; then if [ "$doSetupShadPS4" == "true" ]; then
echo "ShadPS4_init" echo "ShadPS4_init"
time ShadPS4_init ShadPS4_init
fi fi
if [ "$doSetupPPSSPP" == "true" ]; then if [ "$doSetupPPSSPP" == "true" ]; then
echo "PPSSPP_init" echo "PPSSPP_init"
time PPSSPP_init PPSSPP_init
fi fi
if [ "$doSetupXemu" == "true" ]; then if [ "$doSetupXemu" == "true" ]; then
echo "Xemu_init" echo "Xemu_init"
time Xemu_init Xemu_init
fi fi
if [ "$doSetupMAME" == "true" ]; then if [ "$doSetupMAME" == "true" ]; then
echo "MAME_init" echo "MAME_init"
time MAME_init MAME_init
fi fi
if [ "$doSetupScummVM" == "true" ]; then if [ "$doSetupScummVM" == "true" ]; then
echo "ScummVM_init" echo "ScummVM_init"
time ScummVM_init ScummVM_init
fi fi
if [ "$doSetupVita3K" == "true" ]; then if [ "$doSetupVita3K" == "true" ]; then
echo "Vita3K_init" echo "Vita3K_init"
time Vita3K_init Vita3K_init
fi fi
if [ "$doSetupRMG" == "true" ]; then if [ "$doSetupRMG" == "true" ]; then
echo "RMG_init" echo "RMG_init"
time RMG_init RMG_init
fi fi
if [ "$doSetupares" == "true" ]; then if [ "$doSetupares" == "true" ]; then
echo "ares_init" echo "ares_init"
time ares_init ares_init
fi fi
if [ "$doSetupmelonDS" == "true" ]; then if [ "$doSetupmelonDS" == "true" ]; then
echo "melonDS_init" echo "melonDS_init"
time melonDS_init melonDS_init
fi fi
if [ "$doSetupMGBA" == "true" ]; then if [ "$doSetupMGBA" == "true" ]; then
echo "mGBA_init" echo "mGBA_init"
time mGBA_init mGBA_init
fi fi
if [ "${doSetupCemuNative}" == "true" ]; then if [ "${doSetupCemuNative}" == "true" ]; then
echo "CemuNative_init" echo "CemuNative_init"
time CemuNative_init CemuNative_init
fi fi
if [ "$doSetupFlycast" == "true" ]; then if [ "$doSetupFlycast" == "true" ]; then
echo "Flycast_init" echo "Flycast_init"
time Flycast_init Flycast_init
fi fi
if [ "$doSetupSupermodel" == "true" ]; then if [ "$doSetupSupermodel" == "true" ]; then
echo "Supermodel_init" echo "Supermodel_init"
time Supermodel_init Supermodel_init
fi fi
if [ "$doSetupModel2" == "true" ]; then if [ "$doSetupModel2" == "true" ]; then
echo "model2_init" echo "model2_init"
time Model2_init Model2_init
fi fi
#Proton Emus #Proton Emus
if [ "$doSetupCemu" == "true" ]; then if [ "$doSetupCemu" == "true" ]; then
echo "Cemu_init" echo "Cemu_init"
time Cemu_init Cemu_init
fi fi
if [ "$doSetupBigPEmu" == "true" ]; then if [ "$doSetupBigPEmu" == "true" ]; then
echo "BigPEmu_init" echo "BigPEmu_init"
time BigPEmu_init BigPEmu_init
fi fi
if [ "$doSetupXenia" == "true" ]; then if [ "$doSetupXenia" == "true" ]; then
echo "Xenia_init" echo "Xenia_init"
time Xenia_init Xenia_init
fi fi
@ -440,11 +439,11 @@ fi
#Always install #Always install
time BINUP_install BINUP_install
time AutoCopy_install AutoCopy_install
time server_install server_install
time FlatpakUP_install FlatpakUP_install
time CHD_install CHD_install
# #
## ##
@ -458,12 +457,12 @@ time CHD_install
# #
if [ "$doSetupRA" == "true" ]; then if [ "$doSetupRA" == "true" ]; then
if [ "$(getScreenAR)" == 169 ];then if [ "$(getScreenAR)" == 169 ];then
time nonDeck_169Screen nonDeck_169Screen
fi fi
#Anbernic Win600 Special configuration #Anbernic Win600 Special configuration
if [ "$(getProductName)" == "Win600" ];then if [ "$(getProductName)" == "Win600" ];then
time nonDeck_win600 nonDeck_win600
fi fi
fi fi
@ -483,13 +482,13 @@ if [ "$system" == "chimeraos" ]; then
fi fi
time createDesktopIcons createDesktopIcons
if [ "$controllerLayout" == "bayx" ] || [ "$controllerLayout" == "baxy" ] ; then if [ "$controllerLayout" == "bayx" ] || [ "$controllerLayout" == "baxy" ] ; then
time controllerLayout_BAYX controllerLayout_BAYX
else else
time controllerLayout_ABXY controllerLayout_ABXY
fi fi
# #
@ -503,7 +502,7 @@ fi
#EmuDeck updater on gaming Mode #EmuDeck updater on gaming Mode
#mkdir -p "${toolsPath}/updater" #mkdir -p "${toolsPath}/updater"
#cp -v "$EMUDECKGIT/tools/updater/emudeck-updater.sh" "${toolsPath}/updater/" #cp -v "$emudeckBackend/tools/updater/emudeck-updater.sh" "${toolsPath}/updater/"
#chmod +x "${toolsPath}/updater/emudeck-updater.sh" #chmod +x "${toolsPath}/updater/emudeck-updater.sh"
#RemotePlayWhatever #RemotePlayWhatever
@ -514,10 +513,10 @@ fi
# #
# We mark the script as finished # We mark the script as finished
# #
echo "" > "$HOME/.config/EmuDeck/.finished" echo "" > "$emudeckFolder/.finished"
echo "" > "$HOME/.config/EmuDeck/.ui-finished" echo "" > "$emudeckFolder/.ui-finished"
echo "100" > "$HOME/emudeck/logs/msg.log" echo "100" > "$emudeckLogs/msg.log"
echo "# Installation Complete" >> "$HOME/emudeck/logs/msg.log" echo "# Installation Complete" >> "$emudeckLogs/msg.log"
finished=true finished=true
rm "$PIDFILE" rm "$PIDFILE"
@ -525,14 +524,14 @@ rm "$PIDFILE"
## We check all the selected emulators are installed ## We check all the selected emulators are installed
# #
time checkInstalledEmus checkInstalledEmus
# #
# Run custom scripts... shhh for now ;) # Run custom scripts... shhh for now ;)
# #
for entry in "$HOME"/emudeck/custom_scripts/*.sh for entry in "$emudeckFolder"/custom_scripts/*.sh
do do
bash $entry bash $entry
done done

View File

@ -1,10 +1,10 @@
#!/bin/bash #!/bin/bash
# shellcheck source=/home/deck/emudeck/settings.sh # shellcheck source=/home/deck/emudeck/settings.sh
. ~/emudeck/settings.sh if [[ "$emudeckBackend" == "" ]]; then
emudeckBackend="$HOME/.config/EmuDeck/backend/"
if [[ "$EMUDECKGIT" == "" ]]; then
EMUDECKGIT="$HOME/.config/EmuDeck/backend"
fi fi
. $emudeckBackend/vars.sh
. $emudeckFolder/settings.sh
#whitelist #whitelist
chdfolderWhiteList=("3do" "amiga" "amiga1200" "amiga600" chdfolderWhiteList=("3do" "amiga" "amiga1200" "amiga600"
@ -51,16 +51,16 @@ sevenzipFileExtensions=("ngp" "ngc" "a26"
combinedFileExtensions=( combinedFileExtensions=(
"${n3dsFileExtensions[@]}" "${n3dsFileExtensions[@]}"
"${chdFileExtensions[@]}" "${chdFileExtensions[@]}"
"${rvzFileExtensions[@]}" "${rvzFileExtensions[@]}"
"${rvzFileExtensions[@]}" "${rvzFileExtensions[@]}"
"${csoFileExtensions[@]}" "${csoFileExtensions[@]}"
"${xboxFileExtensions[@]}" "${xboxFileExtensions[@]}"
"${sevenzipFileExtensions[@]}") "${sevenzipFileExtensions[@]}")
#executables #executables
chdPath="$EMUDECKGIT/tools/chdconv" chdPath="$emudeckBackend/tools/chdconv"
chmod +x "$chdPath/chdman5" chmod +x "$chdPath/chdman5"
chmod +x "$chdPath/ciso" chmod +x "$chdPath/ciso"
chmod +x "$chdPath/3dstool" chmod +x "$chdPath/3dstool"
@ -73,8 +73,8 @@ dolphintool="flatpak run --command=dolphin-tool $flatpaktool"
#initialize log #initialize log
TIMESTAMP=$(date "+%Y%m%d_%H%M%S") TIMESTAMP=$(date "+%Y%m%d_%H%M%S")
mkdir -p "$HOME/emudeck/logs/compression" mkdir -p "$emudeckLogs/compression"
LOGFILE="$HOME/emudeck/logs/compression/chdman-$TIMESTAMP.log" LOGFILE="$emudeckLogs/compression/chdman-$TIMESTAMP.log"
exec > >(tee "${LOGFILE}") 2>&1 exec > >(tee "${LOGFILE}") 2>&1
#compression functions #compression functions
@ -108,7 +108,7 @@ compressCHD() {
compressCHDDVD() { compressCHDDVD() {
local file=$1 local file=$1
local successful='' local successful=''
chdman5 createdvd -i "$file" -o "${file%.*}.chd" -c zstd && successful="true" chdman5 createdvd -i "$file" -o "${file%.*}.chd" -c zstd && successful="true"
if [[ $successful == "true" ]]; then if [[ $successful == "true" ]]; then
echo "Converting $file to CHD using the createdvd flag and hunksize 16348." echo "Converting $file to CHD using the createdvd flag and hunksize 16348."
@ -123,7 +123,7 @@ compressCHDDVD() {
compressCHDDVDLowerHunk() { compressCHDDVDLowerHunk() {
local file=$1 local file=$1
local successful='' local successful=''
chdman5 createdvd --hunksize 2048 -i "$file" -o "${file%.*}.chd" && successful="true" chdman5 createdvd --hunksize 2048 -i "$file" -o "${file%.*}.chd" && successful="true"
if [[ $successful == "true" ]]; then if [[ $successful == "true" ]]; then
echo "Converting $file to CHD using the createdvd flag and hunksize 2048." echo "Converting $file to CHD using the createdvd flag and hunksize 2048."
@ -212,7 +212,7 @@ compress7z() {
decompressCHDISO() { decompressCHDISO() {
local file=$1 local file=$1
local successful='' local successful=''
chdman5 extractdvd -i "$file" -o "${file%.*}.iso" && successful="true" chdman5 extractdvd -i "$file" -o "${file%.*}.iso" && successful="true"
if [[ $successful == "true" ]]; then if [[ $successful == "true" ]]; then
echo "Decompressing $file to ISO using the extractdvd flag." echo "Decompressing $file to ISO using the extractdvd flag."
@ -365,7 +365,7 @@ if [ "$selection" == "Bulk Compression" ]; then
echo "found in $romfolder" echo "found in $romfolder"
searchFolderList+=("$romfolder") searchFolderList+=("$romfolder")
fi fi
done done
fi fi
if ((${#searchFolderList[@]} == 0)); then if ((${#searchFolderList[@]} == 0)); then
@ -450,8 +450,8 @@ if [ "$selection" == "Bulk Compression" ]; then
--ok-label="CHD" \ --ok-label="CHD" \
--extra-button="CSO" \ --extra-button="CSO" \
--cancel-label="Cancel" \ --cancel-label="Cancel" \
--text="${text}" 2>/dev/null && echo "CHD") --text="${text}" 2>/dev/null && echo "CHD")
find "$romsPath/$romfolder" -type f -iname "*.iso" | while read -r f; do find "$romsPath/$romfolder" -type f -iname "*.iso" | while read -r f; do
if [ "$pspBulkSelection" == "CHD" ]; then if [ "$pspBulkSelection" == "CHD" ]; then
find "$romsPath/$romfolder" -type f -iname "*.iso" | while read -r f; do find "$romsPath/$romfolder" -type f -iname "*.iso" | while read -r f; do
echo "Converting: $f using the createdvd flag and 2048 hunksize" echo "Converting: $f using the createdvd flag and 2048 hunksize"
@ -461,10 +461,10 @@ if [ "$selection" == "Bulk Compression" ]; then
find "$romsPath/$romfolder" -type f -iname "*.iso" | while read -r f; do find "$romsPath/$romfolder" -type f -iname "*.iso" | while read -r f; do
echo "Converting: $f" echo "Converting: $f"
compressCSO "$f" compressCSO "$f"
done done
else else
echo "No valid ROM found" echo "No valid ROM found"
exit exit
fi fi
done done
fi fi
@ -485,7 +485,7 @@ if [ "$selection" == "Bulk Compression" ]; then
if [[ " ${xboxfolderWhiteList[*]} " =~ " ${romfolder} " ]]; then if [[ " ${xboxfolderWhiteList[*]} " =~ " ${romfolder} " ]]; then
find "$romsPath/$romfolder" -type f -iname "*.iso" ! -name '*.xiso.iso' | while read -r f; do find "$romsPath/$romfolder" -type f -iname "*.iso" ! -name '*.xiso.iso' | while read -r f; do
echo "Converting: $f" echo "Converting: $f"
compressXISO "$f" compressXISO "$f"
done done
fi fi
done done
@ -517,7 +517,7 @@ elif [ "$selection" == "Select a ROM" ]; then
fi fi
if [ -n "$selectedCompressionMethod" ]; then if [ -n "$selectedCompressionMethod" ]; then
break break
else else
zenity --error \ zenity --error \
--text="Please select a compression method." \ --text="Please select a compression method." \
@ -525,7 +525,7 @@ elif [ "$selection" == "Select a ROM" ]; then
--height=100 --height=100
fi fi
done done
echo "Selected: $selectedCompressionMethod" echo "Selected: $selectedCompressionMethod"
#/bin/bash #/bin/bash
@ -534,7 +534,7 @@ elif [ "$selection" == "Select a ROM" ]; then
ext=$(echo "${f##*.}" | awk '{print tolower($0)}') ext=$(echo "${f##*.}" | awk '{print tolower($0)}')
romFilePath=$(dirname "$f") romFilePath=$(dirname "$f")
case $ext in case $ext in
gcm) gcm)
@ -567,14 +567,14 @@ elif [ "$selection" == "Select a ROM" ]; then
;; ;;
esac esac
if [ "$selectedCompressionMethod" == "Compress a ROM to RVZ" ]; then if [ "$selectedCompressionMethod" == "Compress a ROM to RVZ" ]; then
if [[ "$ext" =~ "iso" || "$ext" =~ "ISO" || "$ext" =~ "gcm" || "$ext" =~ "GCM" ]]; then if [[ "$ext" =~ "iso" || "$ext" =~ "ISO" || "$ext" =~ "gcm" || "$ext" =~ "GCM" ]]; then
echo "Valid ROM found, compressing $f to RVZ" echo "Valid ROM found, compressing $f to RVZ"
compressRVZ "$f" compressRVZ "$f"
else else
echo "No valid ROM found" echo "No valid ROM found"
fi fi
elif [ "$selectedCompressionMethod" == "Decompress a GC/Wii RVZ to ISO" ]; then elif [ "$selectedCompressionMethod" == "Decompress a GC/Wii RVZ to ISO" ]; then
if [[ "$ext" =~ "rvz" || "$ext" =~ "RVZ" ]]; then if [[ "$ext" =~ "rvz" || "$ext" =~ "RVZ" ]]; then
echo "Valid ROM found, decompressing $f to ISO" echo "Valid ROM found, decompressing $f to ISO"
decompressRVZ "$f" decompressRVZ "$f"
@ -587,20 +587,20 @@ elif [ "$selection" == "Select a ROM" ]; then
compressCHDDVD "$f" compressCHDDVD "$f"
elif [[ "$ext" =~ "gdi" || "$ext" =~ "GDI" || "$ext" =~ "cue" || "$f" =~ "CUE" ]]; then elif [[ "$ext" =~ "gdi" || "$ext" =~ "GDI" || "$ext" =~ "cue" || "$f" =~ "CUE" ]]; then
echo "Valid $ext ROM found, compressing $f to CHD" echo "Valid $ext ROM found, compressing $f to CHD"
compressCHD "$f" compressCHD "$f"
else else
echo "No valid ROM found" echo "No valid ROM found"
fi fi
elif [ "$selectedCompressionMethod" == "Compress a ROM to XISO" ]; then elif [ "$selectedCompressionMethod" == "Compress a ROM to XISO" ]; then
if [[ "$ext" =~ "xiso" || "$ext" =~ "XISO" ]]; then if [[ "$ext" =~ "xiso" || "$ext" =~ "XISO" ]]; then
echo "$f already compressed." echo "$f already compressed."
elif [[ "$ext" =~ "iso" || "$ext" =~ "ISO" ]]; then elif [[ "$ext" =~ "iso" || "$ext" =~ "ISO" ]]; then
echo "Valid $ext ROM found, compressing $f to xiso" echo "Valid $ext ROM found, compressing $f to xiso"
compressXISO "$f" compressXISO "$f"
else else
echo "No valid ROM found" echo "No valid ROM found"
fi fi
elif [ "$selectedCompressionMethod" == "Compress a PSP ROM to CHD or CSO" ]; then elif [ "$selectedCompressionMethod" == "Compress a PSP ROM to CHD or CSO" ]; then
if [[ "$ext" =~ "iso" || "$ext" =~ "ISO" ]]; then if [[ "$ext" =~ "iso" || "$ext" =~ "ISO" ]]; then
echo "Valid ROM found, prompting user" echo "Valid ROM found, prompting user"
@ -611,7 +611,7 @@ elif [ "$selection" == "Select a ROM" ]; then
--ok-label="CSO" \ --ok-label="CSO" \
--extra-button="CHD" \ --extra-button="CHD" \
--cancel-label="Cancel" \ --cancel-label="Cancel" \
--text="${text}" 2>/dev/null && echo "CSO") --text="${text}" 2>/dev/null && echo "CSO")
if [ "$pspSelection" == "CSO" ]; then if [ "$pspSelection" == "CSO" ]; then
echo "Valid $ext ROM found, compressing $f to CSO" echo "Valid $ext ROM found, compressing $f to CSO"
@ -620,38 +620,38 @@ elif [ "$selection" == "Select a ROM" ]; then
echo "Valid $ext ROM found, compressing $f to CHD using the createdvd flag and 2048 hunksize." echo "Valid $ext ROM found, compressing $f to CHD using the createdvd flag and 2048 hunksize."
compressCHDDVDLowerHunk "$f" compressCHDDVDLowerHunk "$f"
fi fi
else else
echo "No valid ROM found" echo "No valid ROM found"
fi fi
elif [ "$selectedCompressionMethod" == "Decompress a PSP CHD to ISO" ]; then elif [ "$selectedCompressionMethod" == "Decompress a PSP CHD to ISO" ]; then
if [[ "$ext" =~ "chd" || "$ext" =~ "CHD" ]]; then if [[ "$ext" =~ "chd" || "$ext" =~ "CHD" ]]; then
echo "Valid $ext ROM found, decompressing $f to ISO using the extractdvd flag." echo "Valid $ext ROM found, decompressing $f to ISO using the extractdvd flag."
decompressCHDISO "$f" decompressCHDISO "$f"
else else
echo "No valid ROM found" echo "No valid ROM found"
fi fi
elif [ "$selectedCompressionMethod" == "Decompress a PSP CSO to ISO" ]; then elif [ "$selectedCompressionMethod" == "Decompress a PSP CSO to ISO" ]; then
if [[ "$ext" =~ "cso" || "$ext" =~ "CSO" ]]; then if [[ "$ext" =~ "cso" || "$ext" =~ "CSO" ]]; then
echo "Valid $ext ROM found, decompressing $f to ISO." echo "Valid $ext ROM found, decompressing $f to ISO."
decompressCSOISO "$f" decompressCSOISO "$f"
else else
echo "No valid ROM found" echo "No valid ROM found"
fi fi
elif [ "$selectedCompressionMethod" == "Trim a 3DS ROM" ]; then elif [ "$selectedCompressionMethod" == "Trim a 3DS ROM" ]; then
if [[ "$ext" =~ "(Trimmed)" ]]; then if [[ "$ext" =~ "(Trimmed)" ]]; then
echo "$f already trimmed." echo "$f already trimmed."
elif [[ "$ext" =~ "3ds" || "$ext" =~ "3DS" ]]; then elif [[ "$ext" =~ "3ds" || "$ext" =~ "3DS" ]]; then
echo "Valid $ext ROM found, trimming $f" echo "Valid $ext ROM found, trimming $f"
trim3ds "$f" trim3ds "$f"
else else
echo "No valid ROM found" echo "No valid ROM found"
fi fi
elif [ "$selectedCompressionMethod" == "Compress a ROM to 7zip" ]; then elif [ "$selectedCompressionMethod" == "Compress a ROM to 7zip" ]; then
echo "true" echo "true"
if [[ " ${sevenzipFileExtensions[*]} " =~ " ${ext} " ]]; then if [[ " ${sevenzipFileExtensions[*]} " =~ " ${ext} " ]]; then
echo "Valid ROM found, compressing $f to 7zip" echo "Valid ROM found, compressing $f to 7zip"
compress7z "$f" compress7z "$f"
else else
echo "No valid ROM found" echo "No valid ROM found"
fi fi
else else
@ -719,7 +719,7 @@ elif [ "$compressionSelection" == "Bulk Decompression" ]; then
for romfolder in "${romfolders[@]}"; do for romfolder in "${romfolders[@]}"; do
if [[ " ${csofolderWhiteList[*]} " =~ " ${romfolder} " ]]; then if [[ " ${csofolderWhiteList[*]} " =~ " ${romfolder} " ]]; then
find "$romsPath/$romfolder" -type f -iname "*.chd" | while read -r f; do find "$romsPath/$romfolder" -type f -iname "*.chd" | while read -r f; do
echo "Decompressing $f using the extractdvd flag" echo "Decompressing $f using the extractdvd flag"
decompressCHDISO "$f" decompressCHDISO "$f"
done done
@ -728,7 +728,7 @@ elif [ "$compressionSelection" == "Bulk Decompression" ]; then
for romfolder in "${romfolders[@]}"; do for romfolder in "${romfolders[@]}"; do
if [[ " ${csofolderWhiteList[*]} " =~ " ${romfolder} " ]]; then if [[ " ${csofolderWhiteList[*]} " =~ " ${romfolder} " ]]; then
find "$romsPath/$romfolder" -type f -iname "*.cso" | while read -r f; do find "$romsPath/$romfolder" -type f -iname "*.cso" | while read -r f; do
echo "Decompressing $f" echo "Decompressing $f"
decompressCSOISO "$f" decompressCSOISO "$f"
done done

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://luna.amazon.com/" LINK="https://luna.amazon.com/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://www.amazon.com/video" LINK="https://www.amazon.com/video"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://live.antstream.com/" LINK="https://live.antstream.com/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://tv.apple.com/" LINK="https://tv.apple.com/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://www.crave.ca/" LINK="https://www.crave.ca/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://www.crunchyroll.com/" LINK="https://www.crunchyroll.com/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://discord.com/app" LINK="https://discord.com/app"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://www.disneyplus.com/" LINK="https://www.disneyplus.com/"

View File

@ -1,5 +1,5 @@
#!/usr/bin/bash #!/usr/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK=https://www.dropout.tv/browse LINK=https://www.dropout.tv/browse

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://emby.media/" LINK="https://emby.media/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://www.max.com/" LINK="https://www.max.com/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://demo.home-assistant.io/" LINK="https://demo.home-assistant.io/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="https://www.hulu.com/" LINK="https://www.hulu.com/"

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
source "$HOME/.config/EmuDeck/backend/functions/all.sh" . "$HOME/.config/EmuDeck/backend/functions/all.sh"
source "$romsPath/cloud/cloud.conf" source "$romsPath/cloud/cloud.conf"
LINK="http://localhost:8096" LINK="http://localhost:8096"

Some files were not shown because too many files have changed in this diff Show More