Skip to content

Screen sharing crashes WebCord on Arch Linux (Hyprland): GL initialization & Pipewire errors #582

@levdev0

Description

@levdev0

Acknowledgements

  • I have checked that there is no other issue describing the same or
    similar problem that I currently have, regardless if it has been
    closed or open.

  • This bug affects Discord website.

  • This issue is confirmed to be reproducible when WebCord is packaged
    on at least all three latest supported Electron major releases.

  • There are no fixes done to master which resolves this issue.

  • This issue is reproducible in Chrome, Chromium or any
    Chromium-based browser, e.g Brave or Edge (please write in
    Additional Context which browser you have used if it is neither
    Chrome nor unmodified Chromium).

  • My issue describes one of the unstable and/or not fully implemented
    features.

  • I have found a workaround to mitigate or temporarily fix this issue
    in affected releases (please write it in Additional context section
    below).

Operating System / Platform

🐧️ Linux

Operating system architecture

x64 (64-bit Intel/AMD)

Electron version

v33.4.1

Application version

WebCord v4.10.3, stable build

Bug description

Description:

When attempting to share my screen on Arch Linux running Hyprland, WebCord immediately crashes. In addition, file uploads are failing. Below are the details of the screen share crash.

System Information:

OS: Arch Linux
Window Manager/Compositor: Hyprland
WebCord Version: v4.10.3
GPU: Nvidia RTX4060
Installation Method: AUR
Additional Logs/Notes:
    The error indicates that the GL implementation requested (egl-gles2,angle=none) is not among the allowed implementations.
    The Pipewire error (loop->recurse > 0 failed) suggests there might be an issue with Pipewire's thread loop management during screen sharing.

it ran under the xwayland protocol

Log:

[436321:0217/225106.297806:ERROR:gl_factory.cc(102)] Requested GL implementation (gl=egl-gles2,angle=none) not found in allowed implementations: [(gl=egl-angle,angle=opengl),(gl=egl-angle,angle=opengles),(gl=egl-angle,angle=vulkan),(gl=egl-angle,angle=swiftshader)].
[436321:0217/225106.298527:ERROR:viz_main_impl.cc(181)] Exiting GPU process due to errors during initialization
[436348:0217/225106.421191:ERROR:gl_factory.cc(102)] Requested GL implementation (gl=egl-gles2,angle=none) not found in allowed implementations: [(gl=egl-angle,angle=opengl),(gl=egl-angle,angle=opengles),(gl=egl-angle,angle=vulkan),(gl=egl-angle,angle=swiftshader)].
[436348:0217/225106.421976:ERROR:viz_main_impl.cc(181)] Exiting GPU process due to errors during initialization
[436359:0217/225106.441841:ERROR:gl_factory.cc(102)] Requested GL implementation (gl=egl-gles2,angle=none) not found in allowed implementations: [(gl=egl-angle,angle=opengl),(gl=egl-angle,angle=opengles),(gl=egl-angle,angle=vulkan),(gl=egl-angle,angle=swiftshader)].
[436359:0217/225106.442531:ERROR:viz_main_impl.cc(181)] Exiting GPU process due to errors during initialization
[WebSocket] Listening at port 6463.
[UPDATE] Application is up-to-date!
'loop->recurse > 0' failed at ../pipewire/src/pipewire/thread-loop.c:425 pw_thread_loop_wait()
[1] 436282 segmentation fault (core dumped) webcord

Additional context

It appears that WebCord is attempting to initialize a GL implementation that your system does not support, which causes the GPU process to exit and ultimately leads to a segmentation fault. This might be a configuration issue with WebCord’s GPU/GL settings or a compatibility problem with Pipewire on Hyprland. Testing with a different GL flag (e.g., forcing egl-angle if possible) or checking for updates to Pipewire and your GPU drivers might provide a temporary workaround.

What might be the issue?

Based on the logs, it looks like WebCord is requesting a GL implementation (egl-gles2,angle=none) that isn’t available in your system’s allowed list. This mismatch causes the GPU process to fail, leading to a crash during screen sharing. The Pipewire thread loop error further suggests that this failure might be affecting other subsystems (like Pipewire) responsible for handling screen capture or sharing. It’s possible that a configuration or compatibility issue between WebCord, your GPU drivers, and Pipewire on Hyprland is causing these crashes.

Any guidance or suggestions for workarounds (such as using a different GL flag or updating relevant packages) would be greatly appreciated.

Metadata

Metadata

Assignees

Labels

info:WaylandIssues specific to Wayland, likely caused by lack of support by Electron / Chromium.type:bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions