Hello, I recently reinstalled CachyOS (Arch Linux) with GNOME 50. Since GNOME 50 completely dropped the X server and is now strictly Wayland, Orion crashes instantly whenever I try to search for a query or open a link. It is currently completely unusable in this environment.
Steps to Reproduce:
- Launch Orion on a strict Wayland session (GNOME 50).
- Type a query in the search bar or click on any link.
- The browser crashes immediately.
Environment:
- OS: CachyOS (Arch Linux)
- Desktop Environment: GNOME 50 (Wayland-only)
- GPU: AMD Radeon RX 9060 XT (RDNA4 / GFX1200)
- Mesa: 26.1.4
- Orion Version: 0.3.0
Crash Logs / Console Output:
WARNING: radv is not a conformant Vulkan implementation, testing use only.
WARNING: radv is not a conformant Vulkan implementation, testing use only.
** (WebKitWebProcess:2) WARNING **: 12:11:04.835: The GStreamer FDK AAC plugin is missing, AAC playback is unlikely to work.
12:11:04.882520[E] while loading website "https://www.youtube.com/" - load_event: 2, Error message: "Load request cancelled", code: 302
[... multiple Fetch API access control errors and Content Blocker blocks on youtube.com ...]
** (WebKitWebProcess:2) WARNING **: 12:11:11.626: The GStreamer FDK AAC plugin is missing, AAC playback is unlikely to work.
CONSOLE JS ERROR ResizeObserver loop completed with undelivered notifications.
CONSOLE JS ERROR ResizeObserver loop completed with undelivered notifications.
** (process:10593) WARNING **: 12:25:28.451: Error writing credentials to socket: Error sending message: Broken pipe
** (process:10593) WARNING **: 12:25:28.452: Error writing credentials to socket: Error sending message: Broken pipe
Additional technical details discovered during debugging:
After extensive debugging with strace, pstree, and verbose WebKit logging, the root cause was identified as a known WebKit bug (fixed upstream in commit 0831c81 - https://github.com/WebKit/WebKit/commit/0831c81f23e301efb4c38d4fc330746ab77b4160).
The upstream PR with the fix: https://github.com/WebKit/WebKit/pull/61528
The NetworkProcess creates real-time threads promoted by RealtimeKit which exceed the kernel's 200ms hard limit (RLIMIT_RTTIME), causing them to be killed by the kernel. The soft limit was set equal to the hard limit, giving no time for the SIGXCPU handler to demote the threads.
The final error in the logs is:
ERROR: WebKit encountered an internal error. This is a WebKit bug.
WebLoaderStrategy.cpp(608): internallyFailedLoadTimerFired
This indicates the web process cannot communicate with the network process anymore because the network process was killed by the kernel due to the RLIMIT_RTTIME limit.
The OrionGTK 0.3.0 flatpak bundles its own fork of WebKit (from third_party/WebKit) which does NOT include this fix. It needs to be rebased or the fix needs to be backported.
Orion Version: 0.3.0
Linux: CachyOS with kernel 6.x
Desktop: GNOME 50 (Wayland)
GPU: AMD Radeon RX 9060 XT