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.
Apple Studio Display over USB4 flashes: stock preferred is 5K@120, then DP tunnel drops while Thunderbolt stays authorized
Reported by saariuslystoned · filed Aug 18, 2026 · open at source
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
System details
- Machine: HP ZBook X G1i 16 inch Mobile Workstation PC
- CPU/iGPU: Intel Arrow Lake-P (Arc Pro 130T/140T,
8086:7d51) - dGPU: NVIDIA RTX PRO 1000 Blackwell (
10de:2db8),nvidia-open-dkms 610.57.04-1 - Display: Apple Studio Display XDR over USB4/Thunderbolt (authorized at 40 Gb/s). USB camera/audio/HID work even when video is gone.
- Omarchy: 4.0.0-1 (Quattro)
- Kernel: 7.1.8-arch1-3
- Compositor: Hyprland 0.56.2
- Stock config:
~/.config/hypr/monitors.luashipshl.monitor({ output = "", mode = "preferred", position = "auto", scale = 1.25 })
What's wrong?
Connecting an Apple Studio Display over Thunderbolt/USB4 makes the external picture flash in and out. USB (camera, speakers, HID) and boltctl stay authorized. Only the DisplayPort tunnel (card0-DP-1) dies.
Two stacked problems:
- Stock `mode = "preferred"` picks [email protected]. That is the first EDID mode. Hyprland brings the display up at 5K@120, scale 1.25, then loses it.
- The USB4 DP tunnel still drops even after pinning a sane mode.
5120x2880@60and3840x2160@60both wentdisconnectedafter ~20s. Kernel logs includethunderbolt ... failed to reach state TB_PORT_UPandlost during suspend, disconnecting. The Studio Display node sits atpower/autosuspend_delay_ms=15000withcontrol=auto. Forcingcontrol=onon the Thunderbolt devices and the Arrow Lake USB-C root ports (8086:7ec4/8086:7ec6) stopped full TB disconnects, butDP-1still went disconnected while0-1stayedruntime=active.
This is an Intel USB4 / Thunderbolt 5 (Barlow Ridge JHL9480) path on Arrow Lake, not a dumb HDMI monitor. thunderbolt.clx=Y (CL0s) is on and not writable at runtime.
Omarchy's docs say an Intel Thunderbolt 4 machine should just work with a direct USB-C cable (https://learn.omacom.io/3/omacom/75/apple-displays-on-linux). On this Arrow Lake + Studio Display setup it does not.
Steps to reproduce
- Fresh Omarchy 4.0.0-1 on an Intel USB4 laptop (here: HP ZBook X G1i).
- Leave the default
monitors.luacatch-all (mode = "preferred"). - Plug in an Apple Studio Display XDR over Thunderbolt/USB4.
boltctlshows the display authorized;hyprctl monitorsshowsDP-1at[email protected]with scale1.25.- After ~60 seconds the picture dies.
hyprctlno longer listsDP-1. USB functions on the display keep working. - The display reappears at 120Hz and the cycle repeats.
Expected
The Studio Display stays up. Prefer a stable 5K mode (5120x2880@60) rather than EDID-preferred 120Hz.
Workaround attempted (not sufficient)
Pinned the Studio Display so stock preferred cannot select 120Hz (do not also leave a catch-all — see #7242):
hl.monitor({ output = "eDP-1", mode = "preferred", position = "0x0", scale = 1.25 })
hl.monitor({
output = "desc:Apple Computer Inc Studio XDR",
mode = "3840x2160@60",
position = "auto",
scale = 1.5,
bitdepth = 8,
})Plus a udev rule forcing Thunderbolt / USB-C root-port power/control=on. Video still drops after ~20s.
Evidence
08:33:31 monitoraddedv2 DP-1 Apple Studio XDR [email protected] scale 1.25
08:34:32 monitorremovedv2 DP-1 (no TB device-disconnect)
08:34:41 monitoradded again at 120.04Hz
08:34:57 pinned 5120x2880@60; still dropped ~20s later
08:40:00 thunderbolt: failed to reach state TB_PORT_UP / lost during suspend
08:40:06 replug: 3840x2160@60 scale 1.5; dropped again at 08:40:28
08:42:31 replug with TB power/control=on; DP-1 up then gone at 08:42:56
while thunderbolt 0-1 stayed runtime=active / authorizedomarchy debug is listed in omarchy --help on 4.0.0-1 but there is no omarchy-debug binary, so no logs.omarchy.org URL.
Suggested fix
- Do not use
mode = "preferred"for Apple Studio / Pro Display XDR. Pin a 60Hz mode (and 2x scale at 5K) in stock defaults oromarchy-hyprland-monitor-watch. - Disable Thunderbolt runtime suspend / CL0s for USB4 displays (udev +
thunderbolt.clx=N), or document that native USB-C is not reliable on Arrow Lake and point at the DP+USB-A cable path already on the Omacom page. - Update https://learn.omacom.io/3/omacom/75/apple-displays-on-linux — “Intel TB4, just plug USB-C” is not true on this Arrow Lake + Studio Display hardware.
View raw text
### System details
- **Machine:** HP ZBook X G1i 16 inch Mobile Workstation PC
- **CPU/iGPU:** Intel Arrow Lake-P (Arc Pro 130T/140T, `8086:7d51`)
- **dGPU:** NVIDIA RTX PRO 1000 Blackwell (`10de:2db8`), `nvidia-open-dkms 610.57.04-1`
- **Display:** Apple Studio Display XDR over USB4/Thunderbolt (authorized at 40 Gb/s). USB camera/audio/HID work even when video is gone.
- **Omarchy:** 4.0.0-1 (Quattro)
- **Kernel:** 7.1.8-arch1-3
- **Compositor:** Hyprland 0.56.2
- **Stock config:** `~/.config/hypr/monitors.lua` ships `hl.monitor({ output = "", mode = "preferred", position = "auto", scale = 1.25 })`
### What's wrong?
Connecting an Apple Studio Display over Thunderbolt/USB4 makes the external picture flash in and out. USB (camera, speakers, HID) and `boltctl` stay authorized. Only the DisplayPort tunnel (`card0-DP-1`) dies.
Two stacked problems:
1. **Stock `mode = "preferred"` picks [email protected].** That is the first EDID mode. Hyprland brings the display up at 5K@120, scale 1.25, then loses it.
2. **The USB4 DP tunnel still drops even after pinning a sane mode.** `5120x2880@60` and `3840x2160@60` both went `disconnected` after ~20s. Kernel logs include `thunderbolt ... failed to reach state TB_PORT_UP` and `lost during suspend, disconnecting`. The Studio Display node sits at `power/autosuspend_delay_ms=15000` with `control=auto`. Forcing `control=on` on the Thunderbolt devices and the Arrow Lake USB-C root ports (`8086:7ec4` / `8086:7ec6`) stopped full TB disconnects, but `DP-1` still went disconnected while `0-1` stayed `runtime=active`.
This is an Intel USB4 / Thunderbolt 5 (Barlow Ridge JHL9480) path on Arrow Lake, not a dumb HDMI monitor. `thunderbolt.clx=Y` (CL0s) is on and not writable at runtime.
Omarchy's docs say an Intel Thunderbolt 4 machine should just work with a direct USB-C cable (https://learn.omacom.io/3/omacom/75/apple-displays-on-linux). On this Arrow Lake + Studio Display setup it does not.
### Steps to reproduce
1. Fresh Omarchy 4.0.0-1 on an Intel USB4 laptop (here: HP ZBook X G1i).
2. Leave the default `monitors.lua` catch-all (`mode = "preferred"`).
3. Plug in an Apple Studio Display XDR over Thunderbolt/USB4.
4. `boltctl` shows the display authorized; `hyprctl monitors` shows `DP-1` at `[email protected]` with scale `1.25`.
5. After ~60 seconds the picture dies. `hyprctl` no longer lists `DP-1`. USB functions on the display keep working.
6. The display reappears at 120Hz and the cycle repeats.
### Expected
The Studio Display stays up. Prefer a stable 5K mode (5120x2880@60) rather than EDID-preferred 120Hz.
### Workaround attempted (not sufficient)
Pinned the Studio Display so stock `preferred` cannot select 120Hz (do not also leave a catch-all — see #7242):
```lua
hl.monitor({ output = "eDP-1", mode = "preferred", position = "0x0", scale = 1.25 })
hl.monitor({
output = "desc:Apple Computer Inc Studio XDR",
mode = "3840x2160@60",
position = "auto",
scale = 1.5,
bitdepth = 8,
})
```
Plus a udev rule forcing Thunderbolt / USB-C root-port `power/control=on`. Video still drops after ~20s.
### Evidence
```
08:33:31 monitoraddedv2 DP-1 Apple Studio XDR [email protected] scale 1.25
08:34:32 monitorremovedv2 DP-1 (no TB device-disconnect)
08:34:41 monitoradded again at 120.04Hz
08:34:57 pinned 5120x2880@60; still dropped ~20s later
08:40:00 thunderbolt: failed to reach state TB_PORT_UP / lost during suspend
08:40:06 replug: 3840x2160@60 scale 1.5; dropped again at 08:40:28
08:42:31 replug with TB power/control=on; DP-1 up then gone at 08:42:56
while thunderbolt 0-1 stayed runtime=active / authorized
```
`omarchy debug` is listed in `omarchy --help` on 4.0.0-1 but there is no `omarchy-debug` binary, so no logs.omarchy.org URL.
### Suggested fix
- Do not use `mode = "preferred"` for Apple Studio / Pro Display XDR. Pin a 60Hz mode (and 2x scale at 5K) in stock defaults or `omarchy-hyprland-monitor-watch`.
- Disable Thunderbolt runtime suspend / CL0s for USB4 displays (udev + `thunderbolt.clx=N`), or document that native USB-C is not reliable on Arrow Lake and point at the DP+USB-A cable path already on the Omacom page.
- Update https://learn.omacom.io/3/omacom/75/apple-displays-on-linux — “Intel TB4, just plug USB-C” is not true on this Arrow Lake + Studio Display hardware.
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 04:43 UTC