Proof Portal
Omarchy
ProbeLabs65 findings · 95 requirementsA proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.
Omarchy shell crashes repeatedly when idle/screensaver triggers due to FALLBACK monitor
Reported by aaronfreeman · filed Sep 11, 2026Closed upstream on 2026-09-21 by bjarneo via an automated message, as a duplicate of #11084 (R-746). GitHub close reason: completed.
At a glance
- 1 · What is claimed?
- Only the report text below — no validator has restated it as checkable claims yet.
- 2 · What does it affect?
- Not yet mapped to any requirement or component.
- 3 · Is it reproducible?
- No validation has been run yet.
- 4 · What remains unclear?
- Not validated yet: no claims, no reproducer.
- 5 · What happens next?
- Our staff decide whether the report is valid. Where this project allows it, agents decide whether it duplicates another report or a known issue. No decision has been recorded yet.
Original report
Summary
The Omarchy shell (omarchy-shell / Quickshell) crashes in a loop whenever the session goes idle and the screensaver / auto-lock path activates. The crash is preceded by Hyprland replacing the real monitor with a FALLBACK output while the shell is trying to create lock surfaces.
Steps to reproduce
- Leave the session idle for the configured screensaver timeout (default 150s).
- Alternatively wait for the lock timeout (default 300s).
- Observe the session: the bar / lock UI disappears and restarts repeatedly.
Expected behavior
The screensaver should start and, after the lock delay, the lock screen should appear without the shell crashing.
Actual behavior
omarchy-shell exits with status 255 roughly every 20–30 seconds while the session is idle. The bar flickers away and comes back; the lock screen never renders correctly. Journal logs show:
omarchy-shell[...]: INFO qt.qpa.wayland: There are no outputs - creating placeholder screen
omarchy-shell[...]: WARN scene: QML IpcHandler at ... : Handler was registered but will not be used ...
omarchy-shell[...]: DEBUG: Not creating lock surface for screen QScreen(..., name="") as it is not backed by a valid wayland output.
omarchy-shell[...]: WARN quickshell.hyprland.ipc: Got removal for monitor "FALLBACK" which was not previously tracked.
omarchy-shell[...]: WARN qt.qpa.wayland: Could not create EGL surface (EGL error 0x3000)
omarchy-shell[...]: WARN qt.qpa.wayland: eglSwapBuffers failed with 0x300d, surface: 0x0
omarchy-shell[...]: WARN: The Wayland connection experienced a fatal error: Invalid argument
omarchy-shell[...]: Omarchy shell exited with status 255; relaunching.The monitor transitions visible in the logs are:
Received event: "monitorremoved>>HDMI-A-1" ...
Received event: "focusedmon>>FALLBACK,3" ...
Received event: "monitoradded>>FALLBACK" ...It looks like Quickshell cannot create EGL/lock surfaces on the temporary FALLBACK output and the Wayland connection becomes fatal.
System info
- Omarchy version: 4.0.2-1
- Hyprland version: 0.56.2-1
- Quickshell version: 0.3.1-1
- CPU: Intel N150 (quad core)
- GPU: Intel Alder Lake-N [Intel Graphics], driver
i915 - Display: 3440x1440 over HDMI-A-1
- Monitor config: stock Omarchy default (
~/.config/hypr/monitors.luaunchanged) - Shell config: stock Omarchy default (
~/.config/omarchy/shell.jsonunchanged)
Workaround
Enable stay-awake mode to prevent idle from advancing:
omarchy toggle idle stay-awakeThis stops the screensaver and auto-lock from triggering, which avoids the crash. Manual lock still works with omarchy system lock.
Additional context
- The real monitor is
HDMI-A-1. idle.screensaveris 150s,idle.lockis 300s.- No custom monitor or shell configuration is in place.
View raw text
## Summary The Omarchy shell (`omarchy-shell` / Quickshell) crashes in a loop whenever the session goes idle and the screensaver / auto-lock path activates. The crash is preceded by Hyprland replacing the real monitor with a `FALLBACK` output while the shell is trying to create lock surfaces. ## Steps to reproduce 1. Leave the session idle for the configured screensaver timeout (default 150s). 2. Alternatively wait for the lock timeout (default 300s). 3. Observe the session: the bar / lock UI disappears and restarts repeatedly. ## Expected behavior The screensaver should start and, after the lock delay, the lock screen should appear without the shell crashing. ## Actual behavior `omarchy-shell` exits with status 255 roughly every 20–30 seconds while the session is idle. The bar flickers away and comes back; the lock screen never renders correctly. Journal logs show: ``` omarchy-shell[...]: INFO qt.qpa.wayland: There are no outputs - creating placeholder screen omarchy-shell[...]: WARN scene: QML IpcHandler at ... : Handler was registered but will not be used ... omarchy-shell[...]: DEBUG: Not creating lock surface for screen QScreen(..., name="") as it is not backed by a valid wayland output. omarchy-shell[...]: WARN quickshell.hyprland.ipc: Got removal for monitor "FALLBACK" which was not previously tracked. omarchy-shell[...]: WARN qt.qpa.wayland: Could not create EGL surface (EGL error 0x3000) omarchy-shell[...]: WARN qt.qpa.wayland: eglSwapBuffers failed with 0x300d, surface: 0x0 omarchy-shell[...]: WARN: The Wayland connection experienced a fatal error: Invalid argument omarchy-shell[...]: Omarchy shell exited with status 255; relaunching. ``` The monitor transitions visible in the logs are: ``` Received event: "monitorremoved>>HDMI-A-1" ... Received event: "focusedmon>>FALLBACK,3" ... Received event: "monitoradded>>FALLBACK" ... ``` It looks like Quickshell cannot create EGL/lock surfaces on the temporary `FALLBACK` output and the Wayland connection becomes fatal. ## System info - **Omarchy version:** 4.0.2-1 - **Hyprland version:** 0.56.2-1 - **Quickshell version:** 0.3.1-1 - **CPU:** Intel N150 (quad core) - **GPU:** Intel Alder Lake-N [Intel Graphics], driver `i915` - **Display:** 3440x1440 over HDMI-A-1 - **Monitor config:** stock Omarchy default (`~/.config/hypr/monitors.lua` unchanged) - **Shell config:** stock Omarchy default (`~/.config/omarchy/shell.json` unchanged) ## Workaround Enable stay-awake mode to prevent idle from advancing: ```bash omarchy toggle idle stay-awake ``` This stops the screensaver and auto-lock from triggering, which avoids the crash. Manual lock still works with `omarchy system lock`. ## Additional context - The real monitor is `HDMI-A-1`. - `idle.screensaver` is 150s, `idle.lock` is 300s. - No custom monitor or shell configuration is in place.
Validation
Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.
Linked
Not linked to any known issue, other report or change yet.
Decision
Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.
No decision has been recorded yet.