ChimeraOS / ChimeraOS/chimeraos

Emulation/RetroArch: Solution needed for custom configuration

Open
#825 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
2k
Forks
131
PR merge metrics
No merged PRs in 30d

Description

## Intro

Lemme just start out by saying, I am a massive fan of ChimeraOS. I love the principles of ease of use and stability.

Also, I want to preemptively say that, this is a problem that, if someone else isn't already working on it, I would love to work on.

I am opening this issue to get some initial feedback on where the actual problem lies and if I have a good understanding of how it could be fixed. This is not just me yelling that I don't like something.

## The Problem

Custom RetroArch configuration suck on Chimera OS.

Take gamepad input for example:

The user story for someone using an unsupported controller is one of three options:

1) Use a different controller
2) Make and then wait for a pull request to be merged that adds support for their controller
3) Abandon the preconfigured Gamepad settings that ChimeraOS provides

If a user would like to change the inputs of a gamepad for whatever reason, the official response is more or less: Just Don't

As far as I can tell, this is the stance for most custom configuration to RetroArch.

## Why This Problem Exists (I think)

There is currently no easy way to maintain centralized RetroArch configuration settings for all users without locking it down and preventing users from modifying it.

Honestly, if I was in y'all's position, I would have made the same choice: This allows Chimera to support the most people for the longest amount of time.

## A potential solution: RetroArch support for "importing" arbitrary config files

I've looked through RetroArch's docs and as far as I can tell, they don't support this.

If they did, then `Chimera`'s official config could be updated to something like:

```
... config goes here
autoconfig_include = /home/gamer/.config/retroarch/custom-config/controller/*.cfg
config_include = /home/gamer/.config/retroarch/custom-config/*.cfg
```

Or for a specific core:

```
... config
autoconfig_include = /home/gamer/.config/retroarch/custom-config/[core]/controller/*.cfg
config_include = /home/gamer/.config/retroarch/custom-config/[core]/*.cfg
```

If we were able to add this to the official configuration files for `Chimera`, then users would be able to add their own overrides without losing general support.

EDIT (clarity): This would require PR(s) to RetroArch and approval from that community to implement.

### Downsides

New UI:

If this were to become fully supported, there may need to be a new UI created for helping users map new controllers or to change custom configuration. That is a lot of work.

Conflicting config:

Giving users the power to add their own config can open up more potential for issues/support questions.

## Conclusion

Is the problem as stated seen as an issue that needs to be fixed? If it is, would the proposed solution be the correct way of fixing it? I would love feedback.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.