You are not logged in.

#1 2025-03-30 18:49:01

isom7rphism
Member
Registered: 2025-03-30
Posts: 3

[SOLVED] Troubleshooting GUI-apps with X-11 and i3

Consider the following issue: An electron-based GUI application reads keyboard input correctly, however its rendering buffer doesn't refresh until I set the application to run in fullscreen mode (using i3 with X-server). The application in question is Discord stable which I have installed from official Arch repo, and my system is fully synced and up to date. Most of my other apps work fine (e.g. Firefox, Zathura, suckless term), but I have had the same issue with qutebrowser. Since i3 doesn't decide what is rendered inside the window, I figured qutebrowser was just not supported with i3 (i.e. no support of resizing). But I now have doubts about this.

I am not interested in the specific solution, but rather about general problem solving advice and intuition I should have about troubleshooting on my own.

What is difficult in my opinion is where exactly this issue originates. I know it is between X-server, i3, or maybe a shared dependency/framework used by problematic applications. Should my intuition be screaming something at me?

If the solution involves looking at logs (which I'm not too experienced with), are there any resources you would recommend to help me understand log debugging?

Thanks for your time, and apologies if this is a duplicate question.

Last edited by isom7rphism (2025-03-30 20:02:51)

Offline

#2 2025-03-30 19:34:09

GMP
Member
Registered: 2014-02-26
Posts: 31

Re: [SOLVED] Troubleshooting GUI-apps with X-11 and i3

You're asking how to think about this kind of issue — but in Arch, it's usually more productive to start testing things directly. Intuition doesn't form from abstract reasoning; it forms from poking around and watching systems break or behave unexpectedly.

Things to try:

1. Start a compositor
i3 doesn't include one. Some apps glitch without it. Run this in a terminal:

 picom & 

If the issue disappears, it's likely related to vsync or buffer swapping. To make it permanent, add it to your i3 config.

2. Disable GPU for Electron apps
This helps confirm if the problem is GPU-related:

 discord --disable-gpu 

If that works, it's likely a GPU acceleration issue—common when there's no compositor.

3. Check if GPU acceleration is working

 glxinfo | grep -i render 

You want to see something like direct rendering: Yes and a specific renderer (e.g. Mesa, NVIDIA, etc.).

General approach:

Affected apps: Discord, qutebrowser → both use GPU acceleration

Unaffected apps: Firefox (different rendering path), Zathura, terminals → likely software rendering

So it’s likely a GPU/compositing/X issue, not i3 itself

Logs (if needed):

Run app from terminal to catch stderr

journalctl -xe
dmesg

for GPU-related messages

References:

Xorg

i3

Electron


Simplicity is the ultimate sophistication.

Offline

Board footer

Powered by FluxBB