I tried the retropie extras script and could never get it to work either so I used the flatpak version of citra. It’s been a while but I basically made a new system in retropie and changed my theme for the 3DS. My notes may be a little vague but here you go.
Adding new Emu
/etc/emulationstation/es_systems.cfg move to /opt/retropie/configs/all/emulationstation
Change that file to add systems
In /opt/retropie/configs/ create new system folders and add runcommand script. Basically the start command followed by %ROM%
Here’s an example of my Xbox emu (don’t have access to my computer now to get the 3DS but should be close)
Config Files to create
Opt/retropie/configs/xbox emulator.cfg
xbox = "flatpak run app.xemu.xemu -dvd_path %ROM%"
default = "xemu"
Opt/retropie/configs/all/emulationstation es_systems.cfg
<system>
<name>xbox</name>
<fullname>XBOX</fullname>
<path>/home/pi/RetroPie/roms/xbox</path>
<extension>.iso .sh</extension>
<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_xbox %ROM%</command>
<platform>xbox</platform>
<theme>xbox</theme>
</system>
Also if you wanted to use an iPad as the bottom screen this is what I found to get it sort of working. Touch screen is ok but not perfect
iPad as second monitor Citra
Dual monitors using wayland and rdp on iPad logged in through ip address. Separate monitors in citra then move and resize windows.
This is copied from a website:
First, open a Terminal window and run: gsettings set org.gnome.desktop.remote-desktop.rdp screen-share-mode extend. This step is needed to enable extendable virtual monitors over RDP. This feature is, at present, a hidden one because this stuff isn’t polished enough for the masses to make use of yet — so be aware!
Next, open the Settings app, navigate to the Sharing panel, and turn on Sharing, and turn on (once it appears) the ‘Remote Desktop’ option. You will want to set up a username and password too, to allow you to connect from a different device.
If nothing else maybe it’ll get you started in the right direction. But it is possible to have citra running through emulationstation on Ubuntu 22.04. And it’s really not that hard to do.