kingToolbox / kingToolbox/WindTerm
[Case report]: OpenGL/Mesa problem and solution (X11 forwarding)
- Dominant language
- C
- Stars
- 32.3k
- Forks
- 2.5k
- PR merge metrics
- No merged PRs in 30d
Description
### Target:
- **Local**: Gentoo, Linux 6.12, OpenRC
- **Remote**: Arch, Linux 6.15, systemd
### Problem:
When enable X11 forwarding:
- Most GUI programs run well (Firefox, Thunar, xfce4-terminal, xed, mousepad)
- `glxgears` does **not** work
- `glxinfo` will stop at this step
```name of display: localhost:10.0```
### Solution:
- Set `LIBGL_ALWAYS_SOFTWARE=1` (i.e.,`export LIBGL_ALWAYS_SOFTWARE=1`) to force Mesa renderer
- This could be automated in "Session Settings > Authentication > Execute command after authentication:". Write in `export LIBGL_ALWAYS_SOFTWARE=1\r`. (The `\r` is to automate pressing Enter)
### Known issues:
- This disable hardware-acceleration, so programs rely on that will work now, but significantly slower than bare-metal
- Programs fully depend on hardware rendering (e.g., WezTerm) completely broken despite any solution. Probably you can try something like [virtualgl](https://github.com/VirtualGL/virtualgl) if really really need it, I have never tested
If time permits, an investigation of this issue or user-facing documentation would be appreciated. For example, if this persists for other systems, make a check routine for hardware support, if not, fallback to use software renderer by default.
Contributor guide
No contributing guide indexed for this repository
Research direction
No source file or test is named. Start by reproducing the issue with glxgears and glxinfo over X11 forwarding, then review the Session Settings authentication-command flow and existing user documentation. Done means documenting the LIBGL_ALWAYS_SOFTWARE workaround and its limitations, or defining a supported fallback only if investigation confirms it is appropriate.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux, shell
- Domain
- documentation, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100