EmuDeck/uninstall.sh
Livedeht 00c843121c
Beta 0.17.5 promote to Main (#252)
* Dev --> beta 17.5 (#246)

Documentation: 
- Add Xbox to list of consoles
- Add bios to info table
- Added Nintendo / Sega / Sony where appropriate
- Alphabetized the list
- RetroAchievements crashes games if the user has not verified the account 
- Can we add recursive rom parsing tips somewhere? 

Infrastructure:
- All functions now on separate files

Tools:
- CHDMAN: handle rvz files.

New:
- download xbox hdd from xemu site. User only needs to provide files in bios after this.
- Update powertools
- Fix yuzu path
- add xmlstarlet binary from arch repository
- added changedisc hotkey for duckstation
- added changedisc hotkey for duckstation steam input
- migrate to Yuzu AppImage
- Added storage folder in Emulation
  rpcs3, xemu, yuzu are using this for the large blob storage
- cemu.xml won't be reset on update
- Add system names to Emulator selector in expert mode
- widescreen is not enabled by default.
- expert mode tools requiring a password will prompt again if wrong. if the user is wrong both times, the features will be 
  disabled.
- Dolphin wiimote input is now mouse based instead of joystick based, but i left in the joystick too. It will also use gyro for shake / tilt if you have SteamDeckGyroDSU.
- Dolphin load textures and precache is now on by default.
- Dolphin Auto Change disc is now on by default.
- Dolphin cursor is now hidden by default.
- PCSX2 vsync is now on by default.

Fixes:
- Cemu xml changes
  removed the gamepath and use xmlstarlet to add the entry.
  In the case the user has an existing xml file, we will just add our path to the entries.
- Update duckstation config
  quickmenu to esc, so steam + left arrow works
  Added roms path
  use native aspect ratio and fullscreen so the top and bottom bars are gone.
  Add Duckstation SteamInput
- PCSX2 Steam Input Update
  remove m and n keys on full trigger press
- fixed widescreen selection
- fixed emulator selection
- fixed config reset selection
- fixed uninstall script


Co-authored-by: Spidy123222 <64176728+Spidy123222@users.noreply.github.com>
Co-authored-by: Rodrigo <rodrigosedano@me.com>
Co-authored-by: Witherking25 <witherking@withertech.com>

* Beta 17.5 Update

Update Cemu volume from 50% to 100% in the initial settings
make fp scripts executable after writing it
change initial mkdir for dragoonDoriseTools to use ~/
don't run any yuzu migration if the migration flag exists
small data restructure for yuzu migration
make sure to actually move to the tools folder before deleting the old launchers. :)
Cleaned up some double slashes

* Add logic for destination being a symlink

* adjusted color and icons to be
more clear for duckstation touchpad

* changed from Dolphin to dolphin-emu
so the parser can do it right

* allow xenia install for beta and dev branch

* Add save link for RPCS3
from storage to saves for the actual save dir

* Create Binary Updater Script

Can update SRM, ESDE, Yuzu.AppImage, Cemu, and Xenia without Emudeck updates.

* documentation update

* Preemptively make the homebrew folder

and set permissions so we can avoid failures due to this.

* Add New Dolphin WiiMote Profiles

* Fixed Dolphin ffwd to Select +R2 like the others
updated documentation
Updated Dolphin input to have controllers 2 3 4 mapped but off

* Citra - Changed res to 2x for performance reasons
Fixed some controller mappings.
Made a profile for default SteamDeck
Added Gyro
Added Microphone

* version bump for icon

* update changelog with detailed patch notes

* AR set to Auto on dolphin

* Widescreen fix for GC

* Fix uninstall text

* delete EmuDeckBinUpdate

* Warning that saves will be deleted too

* SRM warning on migrate

* Binary Updater on expert mode only

* Tool Updater

* Cemu Keybind

* Description update

* gotta love Citra's bugs

* Citra R5 Long press

* Citra docs

* shorter changelog

* ains

* smaller

* docs

Co-authored-by: Spidy123222 <64176728+Spidy123222@users.noreply.github.com>
Co-authored-by: Rodrigo <rodrigosedano@me.com>
Co-authored-by: Witherking25 <witherking@withertech.com>
2022-06-15 23:40:59 +02:00

203 lines
No EOL
6.3 KiB
Bash

#!/bin/bash
NONE='\033[00m'
RED='\033[01;31m'
GREEN='\033[01;32m'
YELLOW='\033[01;33m'
PURPLE='\033[01;35m'
CYAN='\033[01;36m'
WHITE='\033[01;37m'
BOLD='\033[1m'
UNDERLINE='\033[4m'
BLINK='\x1b[5m'
doUninstall=false
doUninstallRA=false
doUninstallDolphin=false
doUninstallPCSX2=false
doUninstallRPCS3=false
doUninstallYuzu=false
doUninstallCitra=false
doUninstallDuck=false
doUninstallCemu=false
doUninstallXemu=false
doUninstallXenua=false
doUninstallPrimeHacks=false
doUninstallPPSSPP=false
doUninstallSRM=false
doUninstallESDE=false
#Wellcome
text="`printf "<b>Hi!</b>\nDo you really want to uninstall Emudek?\n\nIf you are having issues please go to our Discord, Reddit so we can help you. You can see the links here: https://www.emudeck.com/#download"`"
zenity --question \
--title="EmuDeck" \
--width=250 \
--ok-label="Nope, I want to uninstall EmuDeck" \
--cancel-label="Ok, I'll try one more time! Don't uninstall it yet" \
--text="${text}" &>> /dev/null
ans=$?
if [ $ans -eq 0 ]; then
doUninstall=true
else
exit
fi
if [ "$doUninstall" == true ]; then
#Emulator selector
text="`printf " <b>This will delete Emudeck , the emulators and all of its configuration files and saved games</b>\n\n You can keep the Emulators installed, tell me which ones you want to keep.\n\nIf you select none of them, everything will be deleted<b>We won't delete your roms, if you wanna keep your saved games go to the Emulation/saves folder and make a backup of its contents</b>"`"
emusToUninstall=$(zenity --list \
--title="EmuDeck" \
--height=500 \
--width=250 \
--ok-label="OK" \
--cancel-label="Exit" \
--text="${text}" \
--checklist \
--column="" \
--column="Emulator" \
1 "RetroArch"\
2 "PrimeHack" \
3 "PCSX2" \
4 "RPCS3" \
5 "Citra" \
6 "Dolphin" \
7 "Duckstation" \
8 "PPSSPP" \
9 "Yuzu" \
10 "Xemu" \
11 "Cemu" \
12 "SteamRomManager" \
13 "EmulationStationDE")
ans=$?
if [ $ans -eq 0 ]; then
if [[ "$emusToUninstall" == *"RetroArch"* ]]; then
doUninstallRA=true
fi
if [[ "$emusToUninstall" == *"PrimeHack"* ]]; then
doUninstallPrimeHacks=true
fi
if [[ "$emusToUninstall" == *"PCSX2"* ]]; then
doUninstallPCSX2=true
fi
if [[ "$emusToUninstall" == *"RPCS3"* ]]; then
doUninstallRPCS3=true
fi
if [[ "$emusToUninstall" == *"Citra"* ]]; then
doUninstallCitra=true
fi
if [[ "$emusToUninstall" == *"Dolphin"* ]]; then
doUninstallDolphin=true
fi
if [[ "$emusToUninstall" == *"Duckstation"* ]]; then
doUninstallDuck=true
fi
if [[ "$emusToUninstall" == *"PPSSPP"* ]]; then
doUninstallPPSSPP=true
fi
if [[ "$emusToUninstall" == *"Yuzu"* ]]; then
doUninstallYuzu=true
fi
if [[ "$emusToUninstall" == *"Cemu"* ]]; then
doUninstallCemu=true
fi
#if [[ "$emusToUninstall" == *"Xenia"* ]]; then
# doUninstallXenia=true
#fi
if [[ "$emusToUninstall" == *"Xemu"* ]]; then
doUninstallXemu=true
fi
if [[ "$emusToUninstall" == *"SteamRomManager"* ]]; then
doUninstallSRM=true
fi
if [[ "$emusToUninstall" == *"EmulationStationDE"* ]]; then
doUninstallESDE=true
fi
else
exit
fi
#Uninstalling
if [[ "$doUninstallRA" == true ]]; then
flatpak uninstall org.libretro.RetroArch --system -y
rm -rf ~/.var/app/org.libretro.RetroArch &>> /dev/null
fi
if [[ "$doUninstallPrimeHacks" == true ]]; then
flatpak uninstall io.github.shiiion.primehack --system -y
rm -rf ~/.var/app/io.github.shiiion.primehack &>> /dev/null
fi
if [[ "$doUninstallPCSX2" == true ]]; then
flatpak uninstall net.pcsx2.PCSX2 --system -y
rm -rf ~/.var/app/net.pcsx2.PCSX2 &>> /dev/null
fi
if [[ "$doUninstallRPCS3" == true ]]; then
flatpak uninstall net.rpcs3.RPCS3 --system -y
rm -rf ~/.var/app/net.rpcs3.RPCS3 &>> /dev/null
fi
if [[ "$doUninstallCitra" == true ]]; then
flatpak uninstall org.citra_emu.citra --system -y
rm -rf ~/.var/app/org.citra_emu.citra &>> /dev/null
fi
if [[ "$doUninstallDolphin" == true ]]; then
flatpak uninstall org.DolphinEmu.dolphin-emu --system -y
rm -rf ~/.var/app/org.DolphinEmu.dolphin-emu &>> /dev/null
fi
if [[ "$doUninstallDuck" == true ]]; then
flatpak uninstall org.duckstation.DuckStation --system -y
rm -rf ~/.var/app/org.duckstation.DuckStation &>> /dev/null
fi
if [[ "$doUninstallPPSSPP" == true ]]; then
flatpak uninstall org.ppsspp.PPSSPP --system -y
rm -rf ~/.var/app/org.ppsspp.PPSSPP &>> /dev/null
fi
if [[ "$doUninstallYuzu" == true ]]; then
flatpak uninstall org.yuzu_emu.yuzu --system -y
rm -rf ~/.var/app/org.yuzu_emu.yuzu &>> /dev/null
fi
if [[ "$doUninstallCemu" == true ]]; then
#flatpak uninstall info.cemu.Cemu
#rm -f ~/.var/app/info.cemu.Cemu &>> /dev/null
rm -f ~/Emulation/roms/wiiu/* &>> /dev/null
rm -f /run/media/mmcblk0p1/Emulation/roms/wiiu/* &>> /dev/null
fi
#if [[ "$doUninstallXenia" == true ]]; then
# rm -f ~/Emulation/roms/xbox360/* &>> /dev/null
# rm -f /run/media/mmcblk0p1/Emulation/roms/xbox360/* &>> /dev/null
#fi
if [[ "$doUninstallXemu" == true ]]; then
flatpak uninstall app.xemu.xemu --system -y
rm -rf ~/.var/app/app.xemu.xemu &>> /dev/null
fi
if [[ "$doUninstallSRM" == true ]]; then
rm -rf ~/Desktop/SteamRomManager.desktop &>> /dev/null
fi
if [[ "$doUninstallESDE" == true ]]; then
rm -rf ~/.emulationstation &>> /dev/null
fi
#Emudeck's files
rm -rf ~/.steam/steam/controller_base/templates/cemu_controller_config.vdf
rm -rf ~/.steam/steam/controller_base/templates/citra_controller_config.vdf
rm -rf ~/.steam/steam/controller_base/templates/pcsx2_controller_config.vdf
rm -rf ~/.steam/steam/controller_base/templates/duckstation_controller_config.vdf
rm -rf ~/emudeck &>> /dev/null
rm -rf ~/Desktop/EmuDeckCHD.desktop &>> /dev/null
rm -rf ~/Desktop/EmuDeckUninstall.desktop &>> /dev/null
rm -rf ~/Desktop/EmuDeck.desktop &>> /dev/null
rm -rf ~/Desktop/EmuDeckSD.desktop &>> /dev/null
rm -rf ~/Desktop/EmuDeckBinUpdate.desktop &>> /dev/null
#rm -rf ~/Emulation &>> /dev/null
#rm -rf /run/media/mmcblk0p1/Emulation &>> /dev/null
text="$(printf "<b>Done!</b>\n\nWe are sad to see you go and we really hope you give us a chance on the future!\n\n<b>Your roms and bios are on your Emulation folder, please delete it manually if you want</b>")"
zenity --info \
--title="EmuDeck" \
--width=450 \
--text="${text}" &>> /dev/null
fi