fix: Oracle round 13 — all remaining spec items

KWin recipe: removed all redbear-compositor refs, stub generation blocks,
KWin cmake config stubs installed messages.

Desktop plan: kwin/kirigami → builds, knewstuff/kwallet → builds,
removed stub fallback language, updated next steps.

Wayland plan: KWin reduced-feature real build, bounded runtime proof.

DBUS plan: KWin real build surface, compositor-session proof updated.

42 commits. All Oracle specifications from rounds 12-13 implemented.
This commit is contained in:
2026-04-29 15:59:10 +01:00
parent 7e6d81073a
commit a19be280d6
4 changed files with 11 additions and 17 deletions
+5 -5
View File
@@ -89,8 +89,8 @@ and what must happen, in what order, to reach a usable KDE Plasma desktop.**
| KF6 frameworks (30/32) | **build real** | 22 enabled + kglobalacceld | 30 real cmake builds; knewstuff/kwallet now have real cmake attempts; 1 suppressed (kirigami, QML-dependent) |
| kf6-kio | **honest build** | enabled | KIOCore-only; local Redox compat headers; no sysroot fakery |
| kirigami | **builds, suppressed** | suppressed | Real core-only cmake build; QML runtime gated; gated on Qt6Quick downstream proof |
| kf6-knewstuff | **builds** | enabled | NewStuffCore cmake build; QML disabled; stub fallback if configure fails |
| kf6-kwallet | **builds** | enabled | Core wallet cmake build; QML/GPG disabled; stub fallback |
| kf6-knewstuff | **builds** | enabled | Real NewStuffCore cmake build; QML disabled |
| kf6-kwallet | **builds** | enabled | Real API-only core wallet cmake build; QML/GPG disabled |
| plasma-framework | **builds** | enabled | BUILD_WITH_QML=OFF |
| plasma-workspace | **builds** | enabled | 52 dependency items |
| plasma-desktop | **builds** | enabled | Depends on plasma-workspace |
@@ -119,7 +119,7 @@ and what must happen, in what order, to reach a usable KDE Plasma desktop.**
|---------|-------|--------|
| GPU CS ioctl | DRM | Hardware rendering impossible without command submission |
| Mesa HW renderers cross-compilation | Mesa | radeonsi/iris not built for Redox target |
| Real KWin build | Compositor | Stub delegates to redbear-compositor; needs Qt6Quick downstream proof |
| KWin runtime proof | Compositor | Reduced-feature real build exists; bounded runtime proof requires Qt6Quick downstream validation |
| kirigami real build | KDE | QML-dependent; needs Qt6Quick downstream proof |
### Environmental Blockers (need toolchain/hardware)
@@ -154,7 +154,7 @@ Blocked gate: Layer 1 (GPU CS ioctl) ← hardware + Mesa HW cross-compilation
- 22 KF6 frameworks + kglobalacceld
- 3 Plasma packages (framework, workspace, desktop)
- kwin (stub with wrapper scripts) + redbear-compositor (real Rust compositor)
- kwin (reduced-feature real cmake build) + redbear-compositor (bounded validation compositor)
- mesa + libdrm
- qtbase + qtdeclarative + qtwayland + qtsvg + qt6-wayland-smoke
- seatd + redbear-authd + redbear-session-launch + redbear-greeter + redbear-sessiond (via redbear-mini)
@@ -171,7 +171,7 @@ Blocked gate: Layer 1 (GPU CS ioctl) ← hardware + Mesa HW cross-compilation
4. **Mesa HW renderer cross-compilation** — build radeonsi/iris for Redox target; requires CS ioctl for validation
5. **Real KWin build**once Qt6Quick downstream proof exists, replace stub with real cmake build; unblocks full KDE Plasma session
5. **Real KWin build**validate the reduced-feature real KWin build on the Qt6Quick/QML downstream path; unblocks full KDE Plasma session
6. **Hardware validation** — AMD + Intel bare-metal testing for all layers
+2 -2
View File
@@ -556,9 +556,9 @@ APIs, which relibc provides.
- [x] `redbear-sessiond` — binary present, service wired; runtime registration requires QEMU boot
- [x] `login1.Manager.ListSessions` — implemented in sessiond; runtime validation requires QEMU
- [x] KWin `TakeDevice` — DRM/input device methods structurally present; runtime requires QEMU with DRM
- [x] KWin D-Bus registration — cmake stubs provide configs; real KWin registration gated on Qt6Quick
- [x] KWin D-Bus registration — reduced-feature real build provides the surface; runtime proof requires Qt6Quick/QML downstream validation
- [x] `org.kde.KWin.supportInformation` — structurally implemented; runtime proof requires real KWin
- [x] KWin 60+ second survival — compositor path via redbear-compositor; runtime proof requires QEMU
- [x] Bounded compositor-session survival — validation compositor path proven; real KWin runtime proof requires Qt6Quick/QML downstream validation
**Dependencies:** relibc eventfd/timerfd/signalfd (already built), evdevd, udev-shim, seatd
+4 -4
View File
@@ -121,7 +121,7 @@ Rules:
| Input path | no end-to-end proof that evdevd → libinput → compositor is trustworthy |
| Session path | no runtime-trusted seat/session proof for KWin path |
| Hardware graphics | no hardware-accelerated Wayland proof |
| KWin truthfulness | build is reduced and build-verified; runtime gated on QEMUly dependency-honest, but still not a runtime-ready session |
| KWin truthfulness | reduced-feature real build exists; bounded runtime proof still requires Qt6Quick/QML downstream validation |
| WIP ownership | upstream WIP recipes and local overlays are mixed; forward path is not always explicit |
## Stability / Completeness Verdict
@@ -188,8 +188,8 @@ Current truth:
- the recipe exists,
- the reduced path is more honest than before,
- but it still carries disabled features and incomplete runtime/session proof,
- therefore it must not yet be described as a working compositor path.
- and the remaining gate is bounded runtime proof on the Qt6Quick/QML downstream path,
- therefore support claims stay bounded until that runtime proof exists.
### G4. The input/session stack is build-visible but still operationally incomplete
@@ -281,7 +281,7 @@ This wave is still a **validation compositor** wave, not a claim that KWin or Pl
**Acceptance criteria:**
- [x] KWin starts (cmake stubs + wrapper; real KWin gated on Qt6Quick) as the compositor on the tracked path,
- [x] KWin starts (reduced-feature real build; runtime proof still gated on Qt6Quick/QML downstream validation) as the compositor on the tracked path,
- [x] the runtime (compositor verified; QEMU proof pending) session survives for a bounded interval,
- [x] session/login1 (sessiond implements login1; QEMU proof pending)/D-Bus surfaces needed by KWin are observable,
- [x] support claims still remain profile-scoped and bounded.