kingToolbox / kingToolbox/WindTerm

[Case report]: OpenGL/Mesa problem and solution (X11 forwarding)

Open
#3,068 0 comments 0 reactions 0 assignees View on GitHub
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.