EmuDeck fixes for bring your own Citra (3DS emulation)

Nintendo killed the switch emulator Yuzu. Sadly, the official Citra distribution disappeared a well because they shared some developers.

The good news is that Citra being open source, is still available as archive builds and new forks. EmuDeck on the Steam Deck adapted to this new reality and adopted a bring-your-own Yuzu and Citra model. The changes to this emulators came at the same time of a big EmuDeck release, complication things a little. Without the changes below, you won’t have access to your previous saves, hotbuttons won’t work and you will no longer start games directly (but start the Citra application itself).

Here are my notes for completing the 3DS emulation setup on the Steam Deck:

  1. Go to Desktop mode.
  2. Get the latest citra-linux-appimage-*.tar.gz from https://github.com/PabloMK7/citra/releases.
  3. Unpack it and put cita-qt.Appimage in $HOME/Applications.
  4. Open EmuDeck and reset the settings for the Citra emulator. Rescan the games with the ROM Manager.
  5. In case you already had Citra installed:
    • Copy your savefiles from /home/deck/.var/app/org.citra_emu.citra/data/citra-emu/sdmc/Nintendo 3DS/ to /home/deck/.local/share/citra-emu/sdmc/Nintendo 3DS/.
    • Uninstall Citra from Discovery. DON´T remove the settings. (Better: backup /home/deck/.var/app/org.citra_emu.citra).
  6. Open Citra from the KDE menu:
    • You can bump the resolution to 3x (720p).
    • You can use Vulkan instead of OpenGL.
    • Set your prefer windowing mode (1 use 1 big screen and flip when needed)
  7. Go to Game mode.
  8. Pick a 3DS game and go to the controller icon. Pick “EmuDeck - Controller Hotkeys”. The backbuttons will allow to switch screen and viewing modes.
  9. Go to the menu and set the game to Full Screen. When you start the game again it will start in Full Screen mode.

That’s it. Have fun.