Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A 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.

Inbox
ReportR-172GitHub issuePublicDecided· Out of scope

omarchy-update's shell/monitor-daemon restart leaves external monitor stuck at 0x0 (blank)

Reported by gamie · filed Sep 23, 2026 · open at source

Decided: Out of scope — decided by agents · verified 3 days ago.

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?
AreaOutside the audited area· Decided by agents · verified
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?
Decided by agents and verified by a second, independent agent — see the decision.

Original report

omarchy-update's shell/monitor-daemon restart leaves external monitor stuck at 0x0 (blank)revision 1 · captured 2026-09-28 21:23 UTC via poll

What happened

Running omarchy-update caused an external monitor to go blank (stuck at an invalid 0x0 resolution) and it did not recover on its own.

omarchy-update's post-update cleanup restarts the Omarchy shell and briefly toggles the monitor daemon (hyprmoncfgd) off and back on to reload monitor profiles. During that toggle, one of my two external monitors (an LG UltraWide connected over DisplayPort) was re-enumerated by the GPU from DP-3 to DP-2. Hyprland then tried to reapply the saved profile to the "new" DP-2 output but could not renegotiate a valid mode, and has been stuck ever since:

hyprmoncfgd: triggered: monitorremoved:DP-3
hyprmoncfgd: triggered: monitoradded:DP-2
hyprmoncfgd: no matching profile for monitor set ... dp-2|disabled=false|[email protected]|1536x0|...
hyprmoncfgd: apply failed: DP-2 mode mismatch: wanted 2560x1080, got 0x0

hyprctl monitors all confirms the output is "on" but has no real resolution:

Monitor DP-2 (ID 1):
	[email protected] at 1536x0
	description: LG Electronics LG ULTRAWIDE 0x000AA924
	...
	disabled: false

The kernel still reports the connector as connected (/sys/class/drm/card1-DP-2/status → connected) with no link-training errors logged, so the DRM/kernel side thinks everything is fine — this looks like a Hyprland/hyprmoncfgd-side failure to complete a real modeset after the forced reconnect, not a cable or hardware fault.

Neither hyprctl reload nor manually forcing the mode (hyprctl eval 'hl.monitor({ output = "DP-2", mode = "2560x1080@60", position = "1536x0", scale = 1 })') recovered it. The only fix was to physically power-cycle the monitor.

Expected behavior

omarchy-update's shell/monitor-daemon restart should not disrupt already-working external monitors, or at minimum should be able to recover a monitor stuck at 0x0 without requiring a physical power cycle.

Steps to reproduce

  1. Have two external monitors connected via DisplayPort (in my case a Dell P2419H and an LG UltraWide) on an Intel iGPU (Coffeelake-U, Iris Plus 655) system.
  2. Run omarchy-update from a terminal.
  3. After the update finishes, watch the Omarchy shell restart and observe one monitor going blank.
  4. Confirm with hyprctl monitors all — the affected output stays at 0x0@<refresh> instead of a real resolution.

System details

  • Omarchy version: 4.0.4-1 (BUILD_ID=4.0.4)
  • Kernel: 7.2.5-3-omarchy
  • GPU: Intel Corporation CoffeeLake-U GT3e [Iris Plus Graphics 655] (8086:3ea5)
  • Monitors: Dell P2419H (DP-1, working) + LG UltraWide (DP-2, affected)
  • Compositor: Hyprland (Omarchy Lua config)

Relevant logs (journalctl, timestamps local)

Sep 23 18:23:29 uwsm_app-daemon: received: app -- ... omarchy-update ...
Sep 23 18:24:02 omarchy-shell: INFO: Exiting due to IPC request.
Sep 23 18:24:03 omarchy-shell: INFO: Launching config: "/usr/share/omarchy/shell/shell.qml"
Sep 23 18:24:06 kernel: i915 0000:00:02.0: Using 39-bit DMA addresses
Sep 23 18:24:08 hyprmoncfgd: triggered: monitorremoved:DP-3
Sep 23 18:24:08 hyprmoncfgd: triggered: monitorremoved:1,DP-3,LG Electronics LG ULTRAWIDE 0x000AA924
Sep 23 18:24:08 hyprmoncfgd: triggered: monitoradded:DP-2
Sep 23 18:24:08 hyprmoncfgd: triggered: monitoradded:1,DP-2,LG Electronics LG ULTRAWIDE 0x000AA924
Sep 23 18:24:10 hyprmoncfgd: no matching profile for monitor set dell inc.|dell p2419h|4g732q2|dp-1|disabled=false|[email protected]|0x0|scale=1.25000|...,lg electronics|lg ultrawide|0x000aa924|dp-2|disabled=false|[email protected]|1536x0|scale=1.00000|...
Sep 23 18:24:28 hyprmoncfgd: monitor management off
Sep 23 18:24:30 hyprmoncfgd: monitor management on
Sep 23 18:24:33 hyprmoncfgd: could not apply a profile after turning management on: DP-2 mode mismatch: wanted 2560x1080, got 0x0

The package update itself was minimal (aether and mise-bin only) — no kernel, mesa, or driver packages were touched, so the disruption appears to come from omarchy-update's own shell/monitor-daemon restart step rather than any package change.


Filed via diagnostics gathered by Claude Code at the user's request.

View raw text
## What happened

Running `omarchy-update` caused an external monitor to go blank (stuck at an invalid `0x0` resolution) and it did not recover on its own.

`omarchy-update`'s post-update cleanup restarts the Omarchy shell and briefly toggles the monitor daemon (`hyprmoncfgd`) off and back on to reload monitor profiles. During that toggle, one of my two external monitors (an LG UltraWide connected over DisplayPort) was re-enumerated by the GPU from `DP-3` to `DP-2`. Hyprland then tried to reapply the saved profile to the "new" `DP-2` output but could not renegotiate a valid mode, and has been stuck ever since:

```
hyprmoncfgd: triggered: monitorremoved:DP-3
hyprmoncfgd: triggered: monitoradded:DP-2
hyprmoncfgd: no matching profile for monitor set ... dp-2|disabled=false|[email protected]|1536x0|...
hyprmoncfgd: apply failed: DP-2 mode mismatch: wanted 2560x1080, got 0x0
```

`hyprctl monitors all` confirms the output is "on" but has no real resolution:

```
Monitor DP-2 (ID 1):
	[email protected] at 1536x0
	description: LG Electronics LG ULTRAWIDE 0x000AA924
	...
	disabled: false
```

The kernel still reports the connector as connected (`/sys/class/drm/card1-DP-2/status` → `connected`) with no link-training errors logged, so the DRM/kernel side thinks everything is fine — this looks like a Hyprland/hyprmoncfgd-side failure to complete a real modeset after the forced reconnect, not a cable or hardware fault.

Neither `hyprctl reload` nor manually forcing the mode (`hyprctl eval 'hl.monitor({ output = "DP-2", mode = "2560x1080@60", position = "1536x0", scale = 1 })'`) recovered it. The only fix was to physically power-cycle the monitor.

## Expected behavior

`omarchy-update`'s shell/monitor-daemon restart should not disrupt already-working external monitors, or at minimum should be able to recover a monitor stuck at `0x0` without requiring a physical power cycle.

## Steps to reproduce

1. Have two external monitors connected via DisplayPort (in my case a Dell P2419H and an LG UltraWide) on an Intel iGPU (Coffeelake-U, Iris Plus 655) system.
2. Run `omarchy-update` from a terminal.
3. After the update finishes, watch the Omarchy shell restart and observe one monitor going blank.
4. Confirm with `hyprctl monitors all` — the affected output stays at `0x0@<refresh>` instead of a real resolution.

## System details

- Omarchy version: 4.0.4-1 (BUILD_ID=4.0.4)
- Kernel: 7.2.5-3-omarchy
- GPU: Intel Corporation CoffeeLake-U GT3e [Iris Plus Graphics 655] (8086:3ea5)
- Monitors: Dell P2419H (DP-1, working) + LG UltraWide (DP-2, affected)
- Compositor: Hyprland (Omarchy Lua config)

## Relevant logs (journalctl, timestamps local)

```
Sep 23 18:23:29 uwsm_app-daemon: received: app -- ... omarchy-update ...
Sep 23 18:24:02 omarchy-shell: INFO: Exiting due to IPC request.
Sep 23 18:24:03 omarchy-shell: INFO: Launching config: "/usr/share/omarchy/shell/shell.qml"
Sep 23 18:24:06 kernel: i915 0000:00:02.0: Using 39-bit DMA addresses
Sep 23 18:24:08 hyprmoncfgd: triggered: monitorremoved:DP-3
Sep 23 18:24:08 hyprmoncfgd: triggered: monitorremoved:1,DP-3,LG Electronics LG ULTRAWIDE 0x000AA924
Sep 23 18:24:08 hyprmoncfgd: triggered: monitoradded:DP-2
Sep 23 18:24:08 hyprmoncfgd: triggered: monitoradded:1,DP-2,LG Electronics LG ULTRAWIDE 0x000AA924
Sep 23 18:24:10 hyprmoncfgd: no matching profile for monitor set dell inc.|dell p2419h|4g732q2|dp-1|disabled=false|[email protected]|0x0|scale=1.25000|...,lg electronics|lg ultrawide|0x000aa924|dp-2|disabled=false|[email protected]|1536x0|scale=1.00000|...
Sep 23 18:24:28 hyprmoncfgd: monitor management off
Sep 23 18:24:30 hyprmoncfgd: monitor management on
Sep 23 18:24:33 hyprmoncfgd: could not apply a profile after turning management on: DP-2 mode mismatch: wanted 2560x1080, got 0x0
```

The package update itself was minimal (`aether` and `mise-bin` only) — no kernel, mesa, or driver packages were touched, so the disruption appears to come from `omarchy-update`'s own shell/monitor-daemon restart step rather than any package change.

---

Filed via diagnostics gathered by Claude Code at the user's request.

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.

  • Out of scopeDecided by agents · verified · 2026-10-09 19:34 UTC