RetroPie / RetroPie/RetroPie-Setup

Optimize native platform detection

Open
#3,691 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Shell
Stars
10.4k
Forks
1.4k
Avg merge
2d 12h
Merged PRs (30d)
11

Description

If Retropie-Setup cannot determine the current system platform if falls back to platform „native“. This happens if you run x86 or unknown arm platforms. Platform native adds platform flags „gl“ and „vulkan“. It adds „x11“ unless you have added „force_kms=1“ in configs/retropie.cfg. This isn‘t intuitive and it is error prone. Arm platforms may have better gles support. You should not build for platform kms if you run a desktop, because kms only modules will not work. You should also not build for platform x11 if your system is running a bare metal console login with multi-user.target like RetroPie rpi images, because there is no X environment running.

Intention of this enhancement:

  • determine and set the best platform flags for unknown targets at startup
  • take care Retropie will really run with the current environment
  • make it easier to get the bare metal experience of Retropie running on a raspberry pi for other platforms without tinkering around in ini files
  • use the same kms modules as a raspberry pi with other platforms. Makes it easier to test and maintain kms modules without a pi.

Draft:
https://github.com/RetroPie/RetroPie-Setup/pull/3686

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the draft pull request #3686 and the startup logic that falls back to the native platform. Review configs/retropie.cfg and the handling of desktop versus bare-metal environments; done means unknown targets select platform flags matching the current system and avoid incompatible KMS, X11, or graphics modules.

Written by the indexing model from the issue text.

Assessment

Tech stack
shell
Domain
cli, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.