RetroArch Web Questions

Hi all.

Apologies for the topic, but I read a lot of content around the web and struggled to find proper answers or references for several of these questions, so hoping to find some answers, or confirmation.

My experience with RetroArch: I have installed RetroArch in multiple Linux environments in the past, and currently run it on a few Raspberry Pi OS 64bit-based Raspberry Pi devices and an EmuELEC SBC device.

I have also placed Pull Requests in the past to the RetroArch codebase, mostly around lightgun compatibility and to some of the libretro emulator cores (PCSX, FBNeo, Fuse, and others).

Finally, to clarify, I have successfully installed RetroArch Web on my end, on top of nginx, and it is running games well.

That being said, there are some differences between the standalone and web versions that I wanted to ask about and/or confirm.

  1. From what I understand, everything runs on the client-side hardware, so the server-side hardware specs are not really a limiting factor. Is that correct?
  2. Can I backup/edit global settings for RetroArch Web? From what I understand, there is no global configuration file (retroarch.cfg) for the system. Rather, the configuration is stored in the client-side, on the browser. Is that correct? Meaning, I’d have to configure everything using the UI, and if I change device I need to do things again.
  3. Is there a way to route these folders to the server-side file system? I tried to change the system Configuration directory to the server-side file system, but when saving the retroarch.cfg file it still didn’t seem to save it in the hard drive.
  4. Is there a way to just launch RetroArch Web without a core, and load the core from within RetroArch Web, when I select the right content to load? I’m assuming, for some reason, that it’s not possible, as when I load a core I can’t see the other installed cores anywhere. Would creating an all.js core, that would include an array with all the cores’ wasm files solve that somehow? I might try it out, but unclear on the impact on memory and whatnot, depending on when things get loaded.
  5. I scanned content for a few systems, and they show up as playlists. The challenge now is that when I try to load them they say that the “File could not be loaded from playlist”. So is it worth scanning content on RetroArch Web? And, once again, all of this stays saved client-side - meaning that if I change devices to play on another computer or tablet, none of that content is saved anywhere. Is that correct?

Thanks for your time - I know that this is not as popular as mainline RetroArch, but it’s still an interesting avenue to play the games on my NAS when not at home, and that’s why I was trying to set it up.

Cheers.

Updating my own post with learnings and adjusting questions:

1 - Correct. I’d still like to be able to adjust the default options but I’m assuming I’d have to adjust them straight in the RetroArch code and recompile it. Thoughts? 2 - I’d still like to learn about this, even if it’s a workaround of sorts. Especially for save states. 3 - We’re using BrowserFS, so I’d have to look into it myself. Doesn’t seem easy. 4 - Still pending. 5 - I assume it’s just broken. I might see if I can fix it somehow and submit a PR if so.

Last but not least, an update and a question:

Update: I compiled lr-fuse (ZX Spectrum Emulator) and it works well. Question: I cannot, for the life of me, get any of the Genesis/MegaDrive emulators to run. PicoDrive does at least seem to boot some games, but Genesis Plus GX just hangs. It shows up on the list of “working” emulators, so I’m assuming it’s something on my end. That being said, it also doesn’t seem to work on the web.libretro.com site, so… maybe it’s currently broken?

Thanks.