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.
Dev: blank omarchy-startup cursor persists in GSettings after login; pointer remains invisible
Reported by zigmoo · filed Oct 8, 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
Omarchy dev channel, active dev-linked checkout 902fd8aebd98b6eedaa58276886a2f9f2876755f (Play matching background intros at boot and on theme switches, #9639); installed omarchy-dev 4.0.0.r6720.g8e02fc8-1. Framework Laptop 16 with AMD Ryzen AI 9 HX 370 / Radeon 890M plus NVIDIA RTX 5070 Laptop GPU. Hyprland 0.56.2, kernel 7.2.8-5-omarchy-bore; Qt 6.12.0 and quickshell 0.3.1-1. Detailed hardware/display configuration follows below.
What is wrong?
After the October 7 update and reboot, the mouse pointer remained persistently invisible during normal desktop use. It was still invisible after the bar/menu were recovered from #14469. Mouse devices were detected and Hyprland cursor coordinates changed.
The decisive observed state was:
gsettings get org.gnome.desktop.interface cursor-theme
→ omarchy-startup
hyprctl getoption cursor:invisible
→ false
hyprctl getoption cursor:inactive_timeout
→ 0
hyprctl getoption cursor:enable_hyprcursor
→ true
hyprctl getoption cursor:sync_gsettings_theme
→ true
hyprctl getoption cursor:no_hardware_cursors
→ 2 (auto)
hyprctl configerrors
→ emptyThe session user-manager environment had XCURSOR_THEME=default and XCURSOR_SIZE=24; /usr/share/icons/default/index.theme inherits Adwaita. Thus the persistent GSettings value disagreed with the normal session theme. The pointer was invisible well beyond the 15-second startup recovery timeout.
Recovery verified live
gsettings set org.gnome.desktop.interface cursor-theme Adwaita
hyprctl setcursor Adwaita 24Both commands succeeded. GSettings read back Adwaita, configuration errors remained empty, and the user immediately confirmed the pointer was visible again. No compositor restart, reboot, GPU setting change, or hardware reconnection was needed for this recovery. Both commands were applied together, so we have not isolated which one alone is sufficient.
Relevant startup code / suspected mechanism
The current default/hypr/startup-cursor.lua deliberately sets XCURSOR_THEME to omarchy-startup and temporarily disables cursor visibility, Hyprcursor, and GSettings synchronization. default/hypr/autostart.lua restores the application environment, and the startup restoration callback is intended to restore the normal compositor cursor. The deliberately blank asset exists under default/hypr/cursors/omarchy-startup/cursors/left_ptr.
The observable bug is that omarchy-startup was left in the persistent desktop cursor-theme setting during an otherwise running desktop session. A startup theme synchronization/restoration ordering issue is suspected, but the exact write/ordering that produced it has not been traced. The startup animation itself need not be removed; its temporary blank cursor should not survive in normal desktop cursor settings.
Reproduction scope and confounders
Observed sequence: update the dev channel, reboot into a three-display session, recover the Qt Color naming-collision failure, then observe the pointer still persistently invisible and the GSettings state above. We have not rebooted again to reproduce the cursor failure or validated next-login persistence of the recovery.
This machine simultaneously experienced #14469. A local workaround pins import QtQuick to 6.11 in 66 core Color-using shell QML files; this restored the bar and menu but did not restore the mouse pointer. The separate Quickshell build/runtime mismatch remains. These may affect startup timing; we are not claiming the cursor issue reproduces independently of that environment.
Expected: after boot/intro completion (or its timeout), the normal pointer is visible and GSettings does not retain the deliberately blank startup theme. Actual: invisible pointer with cursor.invisible=false and cursor-theme=omarchy-startup, resolved by explicitly restoring Adwaita.
No before-state cursor screenshot was captured. The evidence above is from live command reads and user-confirmed recovery, not a synthetic reproduction.
Hardware and active display configuration
- Machine: framemoowork — Framework Laptop 16 (AMD Ryzen AI 300 Series), system revision A9, mainboard FRANMHCP09.
- CPU: AMD Ryzen AI 9 HX 370, 12 cores / 24 threads; microcode 0xb204037.
- Memory: 46.3 GiB usable RAM reported by Linux. DIMM capacity/model/speed was not available through unprivileged inspection.
- Integrated GPU: AMD Radeon 890M (PCI 1002:150e), amdgpu driver; Mesa 26.2.4-1.
- Discrete GPU: NVIDIA GeForce RTX 5070 Laptop GPU (PCI 10de:2d58), 8151 MiB reported VRAM, NVIDIA driver 615.71.09. Both GPUs are present; all three active connectors below belong to the AMD GPU (DRM card2, PCI c2:00.0).
- Firmware: Insyde BIOS 03.04, dated 2025-11-06.
- Storage: WD_BLACK SN850X 4000GB NVMe SSD (3.6 TiB reported).
- Network: MediaTek MT7925 / RZ717 Wi-Fi 7 160 MHz, MediaTek Bluetooth, Realtek RTL8153 USB Gigabit Ethernet.
- Attached dock: Anker A83B6 charging docking station; VIA/Genesys/Realtek USB hubs detected. Connector-to-dock cabling was not independently traced.
- Other detected hardware: Framework 2nd-generation webcam, Framework Laptop 16 ANSI keyboard, two Framework LED Matrix modules, Goodix fingerprint reader.
- Kernel: 7.2.8-5-omarchy-bore; Wayland / Hyprland 0.56.2. omarchy channel current explicitly reports dev.
| Display | Connector | Active pixel mode | Scale | Orientation | Logical position |
|---|---|---|---|---|---|
| Internal BOE NE160QDM-NZ6 | eDP-2 | 2560 × 1600 @ 165.000 Hz | 2.0 | Landscape, transform 0 | 1836, 901 |
| External Dell U3417W | DP-10 | 3440 × 1440 @ 59.973 Hz | 1.6 | Landscape, transform 0 | 3116, 536 |
| External LG HDR WFHD (EDID model name) | DP-11 | 2560 × 1080 @ 59.978 Hz | 1.0 | Portrait, transform 1; effective 1080 × 2560 | 5267, -455 |
All three displays are extended (not mirrored), enabled, using XRGB8888 and sRGB; VRR and direct scanout were inactive at inspection. The bar reserves 26 logical pixels at the top of each display. The Dell is the focused display. Display serial numbers are omitted. LG retail model beyond its EDID-reported name was not established.
USB4 / Thunderbolt detail: boltctl records a CalDigit, Inc. Element 5 Hub (generation USB4, stored authorization policy iommu). It was last connected at 2026-10-08 01:59:29 UTC and authorized at 01:59:31 UTC, but reports disconnected at this inspection after the reboot. Only the two host USB4 routers are present in current Thunderbolt sysfs topology. The separate Anker A83B6 dock is currently enumerated in USB, including 10 Gbit/s hub links and its RTL8153 Ethernet adapter at 5 Gbit/s. Host controllers are AMD USB4 Router 0 (1022:151c) and Router 1 (1022:151d), with Strix USB4 bridges (1022:150a). No IEEE 1394/FireWire controller was detected. These are observed hardware/topology details; no causal connection to the QML Color collision is claimed.
View raw text
### System details Omarchy dev channel, active dev-linked checkout 902fd8aebd98b6eedaa58276886a2f9f2876755f (Play matching background intros at boot and on theme switches, #9639); installed omarchy-dev 4.0.0.r6720.g8e02fc8-1. Framework Laptop 16 with AMD Ryzen AI 9 HX 370 / Radeon 890M plus NVIDIA RTX 5070 Laptop GPU. Hyprland 0.56.2, kernel 7.2.8-5-omarchy-bore; Qt 6.12.0 and quickshell 0.3.1-1. Detailed hardware/display configuration follows below. ### What is wrong? After the October 7 update and reboot, the mouse pointer remained persistently invisible during normal desktop use. It was still invisible after the bar/menu were recovered from #14469. Mouse devices were detected and Hyprland cursor coordinates changed. The decisive observed state was: ```text gsettings get org.gnome.desktop.interface cursor-theme → omarchy-startup hyprctl getoption cursor:invisible → false hyprctl getoption cursor:inactive_timeout → 0 hyprctl getoption cursor:enable_hyprcursor → true hyprctl getoption cursor:sync_gsettings_theme → true hyprctl getoption cursor:no_hardware_cursors → 2 (auto) hyprctl configerrors → empty ``` The session user-manager environment had XCURSOR_THEME=default and XCURSOR_SIZE=24; /usr/share/icons/default/index.theme inherits Adwaita. Thus the persistent GSettings value disagreed with the normal session theme. The pointer was invisible well beyond the 15-second startup recovery timeout. ### Recovery verified live ```bash gsettings set org.gnome.desktop.interface cursor-theme Adwaita hyprctl setcursor Adwaita 24 ``` Both commands succeeded. GSettings read back Adwaita, configuration errors remained empty, and the user immediately confirmed the pointer was visible again. No compositor restart, reboot, GPU setting change, or hardware reconnection was needed for this recovery. Both commands were applied together, so we have not isolated which one alone is sufficient. ### Relevant startup code / suspected mechanism The current default/hypr/startup-cursor.lua deliberately sets XCURSOR_THEME to omarchy-startup and temporarily disables cursor visibility, Hyprcursor, and GSettings synchronization. default/hypr/autostart.lua restores the application environment, and the startup restoration callback is intended to restore the normal compositor cursor. The deliberately blank asset exists under default/hypr/cursors/omarchy-startup/cursors/left_ptr. The observable bug is that omarchy-startup was left in the persistent desktop cursor-theme setting during an otherwise running desktop session. A startup theme synchronization/restoration ordering issue is suspected, but the exact write/ordering that produced it has not been traced. The startup animation itself need not be removed; its temporary blank cursor should not survive in normal desktop cursor settings. ### Reproduction scope and confounders Observed sequence: update the dev channel, reboot into a three-display session, recover the Qt Color naming-collision failure, then observe the pointer still persistently invisible and the GSettings state above. We have not rebooted again to reproduce the cursor failure or validated next-login persistence of the recovery. This machine simultaneously experienced #14469. A local workaround pins import QtQuick to 6.11 in 66 core Color-using shell QML files; this restored the bar and menu but did not restore the mouse pointer. The separate Quickshell build/runtime mismatch remains. These may affect startup timing; we are not claiming the cursor issue reproduces independently of that environment. Expected: after boot/intro completion (or its timeout), the normal pointer is visible and GSettings does not retain the deliberately blank startup theme. Actual: invisible pointer with cursor.invisible=false and cursor-theme=omarchy-startup, resolved by explicitly restoring Adwaita. No before-state cursor screenshot was captured. The evidence above is from live command reads and user-confirmed recovery, not a synthetic reproduction. ### Hardware and active display configuration - Machine: framemoowork — Framework Laptop 16 (AMD Ryzen AI 300 Series), system revision A9, mainboard FRANMHCP09. - CPU: AMD Ryzen AI 9 HX 370, 12 cores / 24 threads; microcode 0xb204037. - Memory: 46.3 GiB usable RAM reported by Linux. DIMM capacity/model/speed was not available through unprivileged inspection. - Integrated GPU: AMD Radeon 890M (PCI 1002:150e), amdgpu driver; Mesa 26.2.4-1. - Discrete GPU: NVIDIA GeForce RTX 5070 Laptop GPU (PCI 10de:2d58), 8151 MiB reported VRAM, NVIDIA driver 615.71.09. Both GPUs are present; all three active connectors below belong to the AMD GPU (DRM card2, PCI c2:00.0). - Firmware: Insyde BIOS 03.04, dated 2025-11-06. - Storage: WD_BLACK SN850X 4000GB NVMe SSD (3.6 TiB reported). - Network: MediaTek MT7925 / RZ717 Wi-Fi 7 160 MHz, MediaTek Bluetooth, Realtek RTL8153 USB Gigabit Ethernet. - Attached dock: Anker A83B6 charging docking station; VIA/Genesys/Realtek USB hubs detected. Connector-to-dock cabling was not independently traced. - Other detected hardware: Framework 2nd-generation webcam, Framework Laptop 16 ANSI keyboard, two Framework LED Matrix modules, Goodix fingerprint reader. - Kernel: 7.2.8-5-omarchy-bore; Wayland / Hyprland 0.56.2. omarchy channel current explicitly reports dev. | Display | Connector | Active pixel mode | Scale | Orientation | Logical position | | --- | --- | --- | --- | --- | --- | | Internal BOE NE160QDM-NZ6 | eDP-2 | 2560 × 1600 @ 165.000 Hz | 2.0 | Landscape, transform 0 | 1836, 901 | | External Dell U3417W | DP-10 | 3440 × 1440 @ 59.973 Hz | 1.6 | Landscape, transform 0 | 3116, 536 | | External LG HDR WFHD (EDID model name) | DP-11 | 2560 × 1080 @ 59.978 Hz | 1.0 | Portrait, transform 1; effective 1080 × 2560 | 5267, -455 | All three displays are extended (not mirrored), enabled, using XRGB8888 and sRGB; VRR and direct scanout were inactive at inspection. The bar reserves 26 logical pixels at the top of each display. The Dell is the focused display. Display serial numbers are omitted. LG retail model beyond its EDID-reported name was not established. USB4 / Thunderbolt detail: boltctl records a CalDigit, Inc. Element 5 Hub (generation USB4, stored authorization policy iommu). It was last connected at 2026-10-08 01:59:29 UTC and authorized at 01:59:31 UTC, but reports disconnected at this inspection after the reboot. Only the two host USB4 routers are present in current Thunderbolt sysfs topology. The separate Anker A83B6 dock is currently enumerated in USB, including 10 Gbit/s hub links and its RTL8153 Ethernet adapter at 5 Gbit/s. Host controllers are AMD USB4 Router 0 (1022:151c) and Router 1 (1022:151d), with Strix USB4 bridges (1022:150a). No IEEE 1394/FireWire controller was detected. These are observed hardware/topology details; no causal connection to the QML Color collision is claimed.
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 22:36 UTC