Differentiated the system config template files for Unix.

This commit is contained in:
Leon Styhre 2020-11-26 19:19:35 +01:00
parent 19edfd1690
commit aefc80b222
5 changed files with 21 additions and 8 deletions

View file

@ -6,13 +6,15 @@ Contributing to EmulationStation Desktop Edition (ES-DE)
Contributions to ES are very much appreciated as there are many things that need to be implemented and improved. Code commits is only one part of it, as work is also needed on the rbsimple-DE theme as well as thorough application testing. Contributions to ES are very much appreciated as there are many things that need to be implemented and improved. Code commits is only one part of it, as work is also needed on the rbsimple-DE theme as well as thorough application testing.
A review of the CMake configuration files would be helpful. Although the building and package generation works more or less correctly, there are some hacks and similar in the CMakeLists.txt files that need improving by someone who really knows how this software package works. A review of the CMake configuration files would also be helpful. Although the building and package generation works more or less correctly, there are some hacks and similar in the CMakeLists.txt files that need improving by someone who really knows how this software package works.
Work is also needed to get ES-DE into the repositories of the various supported operating systems. For example Debian, Fedora, FreeBSD, NetBSD and OpenBSD. This is an area where I have no experience so help with this would be fantastic. Work is also needed to get ES-DE into the repositories of the various supported operating systems. For example Debian, Fedora, FreeBSD, NetBSD and OpenBSD. This is an area where I have no experience so help with this would be fantastic.
Regarding testing, it's impossible for me to test every game system as rbsimple-DE has support for more than a 100 different systems. There could be issues with the configuration template files, or within ES itself. So more testing is needed! Regarding testing, it's impossible for me to test every game system as rbsimple-DE has support for more than a 100 different systems. There could be issues with the configuration template files, or within ES itself. So more testing is needed!
In general, a thorough review of [es_systems.cfg_unix](resources/templates/es_systems.cfg_unix), [es_systems.cfg_macos](resources/templates/es_systems.cfg_macos) and [es_systems.cfg_windows](resources/templates/es_systems.cfg_windows) would be great! In general, a thorough review of [es_systems.cfg_linux](resources/templates/es_systems.cfg_linux), [es_systems.cfg_macos](resources/templates/es_systems.cfg_macos) and [es_systems.cfg_windows](resources/templates/es_systems.cfg_windows) would be great!
To a lesser extent, a review would also be needed of [es_systems.cfg_freebsd](resources/templates/es_systems.cfg_freebsd), [es_systems.cfg_netbsd](resources/templates/es_systems.cfg_netbsd) and [es_systems.cfg_openbsd](resources/templates/es_systems.cfg_openbsd) but these are really minority systems and mostly a copy of the Linux templates with modified paths to the RetroArch cores.
As for rbsimple-DE there are quite some missing graphic files and other customizations for a number of game systems. Check out [MISSING.md](themes/rbsimple-DE/MISSING.md) for more details of what needs to be added or updated. As for rbsimple-DE there are quite some missing graphic files and other customizations for a number of game systems. Check out [MISSING.md](themes/rbsimple-DE/MISSING.md) for more details of what needs to be added or updated.

View file

@ -17,6 +17,7 @@ Many bugs have been fixed, and numerous features that were only partially implem
### Detailed list of changes ### Detailed list of changes
* Initial version, fork from RetroPie EmulationStation 2.10.0rp-dev (master) * Initial version, fork from RetroPie EmulationStation 2.10.0rp-dev (master)
* Added support for Windows, macOS, FreeBSD, NetBSD and OpenBSD
* Reorganization and general overhaul of the menu system, hopefully making it more intuitive and easy to understand * Reorganization and general overhaul of the menu system, hopefully making it more intuitive and easy to understand
* Many quality of life improvements and removal of GUI inconsistencies * Many quality of life improvements and removal of GUI inconsistencies
* Game systems are now sorted by full names which makes much more sense from a user perspective * Game systems are now sorted by full names which makes much more sense from a user perspective

View file

@ -155,9 +155,9 @@ For some systems though, a more elaborate setup is required, and we will attempt
Let's start with the simple scenario of a single ROM game file per platform, which is the case for the majority of systems. In this example we're setting up ES-DE to play Nintendo Entertainment System games. Let's start with the simple scenario of a single ROM game file per platform, which is the case for the majority of systems. In this example we're setting up ES-DE to play Nintendo Entertainment System games.
The supported file extensions are listed in [es_systems.cfg_unix](resources/templates/es_systems.cfg_unix) and [es_systems.cfg_windows](resources/templates/es_systems.cfg_windows). The supported file extensions are listed in [es_systems.cfg_linux](resources/templates/es_systems.cfg_linux), [es_systems.cfg_macos](resources/templates/es_systems.cfg_macos) and [es_systems.cfg_windows](resources/templates/es_systems.cfg_windows).
Here is the snippet from the es_systems.cfg_unix file: Here is the snippet from the es_systems.cfg_linux file:
``` ```
<system> <system>
@ -1218,7 +1218,7 @@ Sometimes the name of the console is (more or less) the same for multiple region
The **Default emulator** column shows the emulator configured in es_systems.cfg, and for emulators that support multiple cores, the configured core is shown inside the brackets. The **Default emulator** column shows the emulator configured in es_systems.cfg, and for emulators that support multiple cores, the configured core is shown inside the brackets.
For additional details regarding which game file extensions are supported per system, refer to the **es_systems.cfg** templates [es_systems.cfg_unix](resources/templates/es_systems.cfg_unix), [es_systems.cfg_macos](resources/templates/es_systems.cfg_macos) and [es_systems.cfg_windows](resources/templates/es_systems.cfg_windows). Normally the extensions setup in these files should cover everything that the emulators support though. For additional details regarding which game file extensions are supported per system, refer to the **es_systems.cfg** templates [es_systems.cfg_linux](resources/templates/es_systems.cfg_linux), [es_systems.cfg_macos](resources/templates/es_systems.cfg_macos) and [es_systems.cfg_windows](resources/templates/es_systems.cfg_windows). Normally the extensions setup in these files should cover everything that the emulators support though.
| Game system name | Full name | Default emulator | Recommended game setup | | Game system name | Full name | Default emulator | Recommended game setup |

View file

@ -390,9 +390,19 @@ bool SystemData::copyConfigTemplate(const std::string& path)
#elif defined(__APPLE__) #elif defined(__APPLE__)
systemsTemplateFile = ResourceManager::getInstance()-> systemsTemplateFile = ResourceManager::getInstance()->
getResourcePath(":/templates/es_systems.cfg_macos", false); getResourcePath(":/templates/es_systems.cfg_macos", false);
#elif defined(__unix__) #elif defined(__FreeBSD__)
systemsTemplateFile = ResourceManager::getInstance()-> systemsTemplateFile = ResourceManager::getInstance()->
getResourcePath(":/templates/es_systems.cfg_unix", false); getResourcePath(":/templates/es_systems.cfg_freebsd", false);
#elif defined(__NetBSD__)
systemsTemplateFile = ResourceManager::getInstance()->
getResourcePath(":/templates/es_systems.cfg_netbsd", false);
#elif defined(__OpenBSD__)
systemsTemplateFile = ResourceManager::getInstance()->
getResourcePath(":/templates/es_systems.cfg_openbsd", false);
#else
// Assume that anything else is some type of Linux system.
systemsTemplateFile = ResourceManager::getInstance()->
getResourcePath(":/templates/es_systems.cfg_linux", false);
#endif #endif
if (systemsTemplateFile == "") { if (systemsTemplateFile == "") {

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<!-- This is the EmulationStation-DE game systems configuration file for Unix. --> <!-- This is the EmulationStation-DE game systems configuration file for Linux. -->
<systemList> <systemList>
<system> <system>
<name>3do</name> <name>3do</name>