Libretro Cores
Packaging Libretro cores
Games supports only Libretro cores shipping a Libretro Core Descriptor file. The cores and their descriptors are looked for in $(libdir)/libretro directory and in paths defined in the LIBRETRO_PLUGIN_PATH environment variable.
Cores flatpaked with Games
For a list of cores flatpaked with our current stable or development versions, check the application's documentation.
Cores available for Games as flatpak extensions
These cores include correct *.info files so they can be used in Games, but need to be provided separately (e.g. licensing issues)
PicoDrive (non-commercial)
flatpak remote-add --from bochecha https://www.daitauha.fr/static/flatpak/bochecha.flatpakrepo
flatpak install bochecha org.gnome.Games.LibretroPlugin.PicoDrive
Cores we need to evaluate
Additional info
We are working on a tentative design for a Libretro core descriptor specification.
More information about what cores are available for which system can be found in the RetroPie-Setup wiki.
General information about the systems and available emulators can be found on the Emulation General Wiki.
Specific info about MAME support vs. other emulators is listed on NonMAME.
Rules for selection of cores
No BIOS needed, either at all or not for the commonly used games in the core, or the BIOS needs to be available by legal means that don't require a soldering iron. For example, the NeoGeo BIOS is shipped with Linux versions of the games.
- No single game ports, those should be installed as an "app", not as a data file that the front-end would handle. gnome-games should be seen as a concatenation of games available in the system, and a way to handle "data files" from older systems, such as ROMs for consoles, floppy disks from vintage computers or installers/archives for games for which we have an engine (SCUMMVM being a prime example).
- The core needs to be of decent quality and require hardware features comparable to those necessary to run GNOME Shell comfortably.
Discussion
- How to choose the Libretro core if multiple ones are available for the games?
- We need to ensure that running a game with a core and then another doesn't break the saves.
- Should we use per game+core saves rather than simply per game saves?
- Should we push for and interchangeable save format per system? (NES saves should work with any NES emulator, etc.)