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.
Shell SUPER+SPACE menu goes black after Qt 6.12: QtQuick's new Color singleton shadows qs.Commons' Color
Reported by CamiloisCoding · filed Oct 8, 2026 · open at source
This defect is tracked under R-5254. This report describes the same defect, so it is folded under it in the inbox.
Earliest report of this defect: R-5253 (filed Oct 8, 2026).
Decided by agents · verified· Oct 8, 2026
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?
- 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 shell SUPER+SPACE menu goes black after Qt 6.12 — QtQuick's new Color singleton shadows qs.Commons' Color
Summary
The 2026-10-08 update pulled in qt6-declarative 6.12.0, which adds a new
singleton named Color to the QtQuick module. Omarchy's shell already defines
its own Color singleton in qs.Commons. With both imported unqualified, the
references now resolve to QtQuick's Color instead of Omarchy's, so the theme
palette never loads and the root Omarchy menu (SUPER+SPACE) paints a
full-screen black overlay.
Environment
- Omarchy: 4.0.4-1
- quickshell: 0.3.2-1.1 (rebuilt against Qt 6.12)
- qt6-declarative: 6.12.0-1.1 (was 6.11.2-2.1 during the previous, working boot)
- qt6-base: 6.12.0-2.1
- Hyprland + SDDM, kernel 7.2.9-1-cachyos
- CPU: Intel Core i5-10300H; GPU: Intel UHD (CometLake-H) + NVIDIA GTX 1650 Ti
Steps to reproduce
- Update the system so
qt6-declarativeis 6.12.0 (quickshell becomes 0.3.2). - Log in normally.
- Press
SUPER+SPACE(the root Omarchy menu).
Expected
The Omarchy root menu opens with the active theme's colours.
Actual
The whole screen goes black. The apps menu (SUPER+ALT+SPACE) still renders.
The shell's theme palette is not applied to any surface.
Root cause
/usr/share/omarchy/shell/Commons/qmldir exports:
singleton Color 1.0 Color.qmlQt 6.12's QtQuick module now exports a singleton with the same name
(/usr/lib/qt6/qml/QtQuick/plugins.qmltypes):
Component {
file: "private/qquickcolor_p.h"
name: "QQuickColor"
exports: ["QtQuick/Color 6.12"]
isSingleton: true
...
}Because both are imported unqualified, Color in the shell resolves to
QtQuick's singleton. The shell then fails to call its own functions on it:
WARN scene: file:///usr/share/omarchy/shell/plugins/background/Background.qml[78:-1]:
TypeError: Property 'loadColors' of object QQuickColor(0x...) is not a functionColor.menu.* becomes undefined, including the full-screen scrim used by the
menu (Menu.qml: property color scrim: Color.menu.scrim used at line 1047),
which is why opening the root menu blanks the screen.
Supporting evidence that this is the update, not local config:
- The shell files are unchanged (packaged 2026-09-16, omarchy 4.0.4-1).
- The error occurs 0 times across the 6 boots before the update and starts
only in the boot after it.
- QQuickColor backs the color value type in both 6.11 and 6.12, but the
QML type name Color (exports: ["QtQuick/Color 6.12"]) is new in 6.12.
Suggested fix
Disambiguate the shell's singleton from QtQuick's, e.g. rename the singleton
(Colors/Theme) and update references, or reference it via a qualified import
(import qs.Commons as C → C.Color).
Temporary workaround
Hold qt6-* at 6.11.2 and quickshell at 0.3.1. quickshell 0.3.2 is linked
against Qt 6.12 (version 'Qt_6.12' not found with Qt 6.11), so rolling back Qt
alone breaks the shell; both must move together.
View raw text
# Omarchy shell SUPER+SPACE menu goes black after Qt 6.12 — QtQuick's new `Color` singleton shadows `qs.Commons`' `Color`
## Summary
The 2026-10-08 update pulled in **qt6-declarative 6.12.0**, which adds a new
singleton named `Color` to the `QtQuick` module. Omarchy's shell already defines
its own `Color` singleton in `qs.Commons`. With both imported unqualified, the
references now resolve to QtQuick's `Color` instead of Omarchy's, so the theme
palette never loads and the root Omarchy menu (`SUPER+SPACE`) paints a
full-screen black overlay.
## Environment
- Omarchy: 4.0.4-1
- quickshell: 0.3.2-1.1 (rebuilt against Qt 6.12)
- qt6-declarative: 6.12.0-1.1 (was 6.11.2-2.1 during the previous, working boot)
- qt6-base: 6.12.0-2.1
- Hyprland + SDDM, kernel 7.2.9-1-cachyos
- CPU: Intel Core i5-10300H; GPU: Intel UHD (CometLake-H) + NVIDIA GTX 1650 Ti
## Steps to reproduce
1. Update the system so `qt6-declarative` is 6.12.0 (quickshell becomes 0.3.2).
2. Log in normally.
3. Press `SUPER+SPACE` (the root Omarchy menu).
## Expected
The Omarchy root menu opens with the active theme's colours.
## Actual
The whole screen goes black. The apps menu (`SUPER+ALT+SPACE`) still renders.
The shell's theme palette is not applied to any surface.
## Root cause
`/usr/share/omarchy/shell/Commons/qmldir` exports:
```
singleton Color 1.0 Color.qml
```
Qt 6.12's `QtQuick` module now exports a singleton with the same name
(`/usr/lib/qt6/qml/QtQuick/plugins.qmltypes`):
```
Component {
file: "private/qquickcolor_p.h"
name: "QQuickColor"
exports: ["QtQuick/Color 6.12"]
isSingleton: true
...
}
```
Because both are imported unqualified, `Color` in the shell resolves to
QtQuick's singleton. The shell then fails to call its own functions on it:
```
WARN scene: file:///usr/share/omarchy/shell/plugins/background/Background.qml[78:-1]:
TypeError: Property 'loadColors' of object QQuickColor(0x...) is not a function
```
`Color.menu.*` becomes `undefined`, including the full-screen scrim used by the
menu (`Menu.qml: property color scrim: Color.menu.scrim` used at line 1047),
which is why opening the root menu blanks the screen.
Supporting evidence that this is the update, not local config:
- The shell files are unchanged (packaged 2026-09-16, omarchy 4.0.4-1).
- The error occurs **0 times** across the 6 boots before the update and starts
only in the boot after it.
- `QQuickColor` backs the `color` value type in both 6.11 and 6.12, but the
QML type name `Color` (`exports: ["QtQuick/Color 6.12"]`) is **new in 6.12**.
## Suggested fix
Disambiguate the shell's singleton from QtQuick's, e.g. rename the singleton
(`Colors`/`Theme`) and update references, or reference it via a qualified import
(`import qs.Commons as C` → `C.Color`).
## Temporary workaround
Hold `qt6-*` at 6.11.2 **and** `quickshell` at 0.3.1. quickshell 0.3.2 is linked
against Qt 6.12 (`version 'Qt_6.12' not found` with Qt 6.11), so rolling back Qt
alone breaks the shell; both must move together.
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
- Duplicate ofR-5254Menu is black after Qt 6.12.0 / quickshell 0.3.2 upgrade (Color singleton sub-objects undefined)· decided by agents · verified
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.