Attached is a patch to change how GemRB loads config files. This patch should apply cleanly to svn revision 7491.
This patch is similar to:
This patch makes two major changes to the current behavior:
* Unless ``-c`` is specified, three config files are searched for settings in this order:
* Only new keys that haven't been found in previous config files are loaded. If a user sets all their config file keys in the current directory's file, the fact that it reads other config files is irrelevant and the same as the current behavior.
This allows us to use the current behavior (load every key from only one config file) if we use ``-c`` to specify the name. This behavior is unchanged.
This also allows more intelligent behavior, making it much easier to set up per-installation configs. This fixes a limitation that the launcher has had to work around, which it does somewhat clunkily at best. With the current functionality, it's impossible to have two different installations of a single game with different configuration options (the launcher can currently only rename config files per game-name in the ``~/.gemrb`` directory). With the proposed patch, setting up multiple configurations of the same game is trivial. The launcher can use this functionality if we keep a registry of installations (something easy to implement in the installer).
If you'd be interested, I'd be happy to extend the current patch by:
* Changing the ``-c`` option to also check HOME and SYSCONF directories unless a new ``--only-c`` option was specified.