docs: update CONSOLE-TO-KDE-DESKTOP-PLAN.md to v5.4

- redox-drm virtio-gpu crash fixed
- Greeter/SDDM Wayland socket timeout fixed
- ISO boots to text login prompt in QEMU
- Redox git forks research completed
This commit is contained in:
2026-06-20 22:43:01 +03:00
parent 6006d20178
commit 1e86a8b0e0
+15 -12
View File
@@ -1,7 +1,7 @@
# Red Bear OS: Console → Hardware-Accelerated KDE Plasma Desktop
**Version:** 5.3 (2026-06-20)
**Replaces:** v5.2 (2026-06-20)
**Version:** 5.4 (2026-06-20)
**Replaces:** v5.3 (2026-06-20)
**Replaces:** v4.7 (2026-06-20)
**Replaces:** v4.2 (2026-06-19)
**Replaces:** v4.1 (2026-05-04)
@@ -9,7 +9,14 @@
**Replaces:** v3.0 and all prior desktop-path documents
**Status:** Canonical comprehensive implementation plan — supersedes `COMPREHENSIVE-OS-ASSESSMENT.md`, `DESKTOP-STACK-CURRENT-STATUS.md`, and all layer-specific plans.
### What Changed in v5.3 (2026-06-20)
### What Changed in v5.4 (2026-06-20)
| Change | Impact |
|--------|--------|
| **redox-drm virtio-gpu crash FIXED** | Added explicit PCI ID tables for virtio-gpu (1AF4:1050/1052) and Intel ARC GPUs. Driver now gracefully skips unknown devices instead of crashing with protection fault. `is_known_virtio_gpu()` and `is_intel_arc()` helpers added with full documentation. |
| **Greeter/SDDM Wayland socket timeout FIXED** | Greeterd wait extended from 15s to 45s with dual-path socket probing (`/tmp/run/redbear-greeter/wayland-0` + `/tmp/run/wayland-0`). Compositor DRM wait raised from 10s to 30s. SDDM runtime dir aligned with greeter. Sessiond now probes multiple D-Bus socket candidates. |
| **Redox git forks research COMPLETED** | Found 20+ relevant commits in redox-os/drivers (2024-2026) for DRM, Wayland, and compositor. Key: virtio-gpu UAF fix, Intel GPU driver, cosmic-comp compositor, libdrm patch for Mesa. Full summary in commit log. |
| **ISO boots to login prompt** | Build succeeds, ISO boots in QEMU with UEFI+virtio-gpu. System reaches text login prompt. Graphical SDDM prompt blocked by Qt6 Wayland null+8 crash (separate issue). |
| Change | Impact |
|--------|--------|
@@ -45,11 +52,11 @@ and what must happen, in what order, to reach a usable KDE Plasma desktop with h
| **ACPI boot** | 🟢 Complete | QEMU + bare-metal proof | Shutdown robustness |
| **IRQ / PCI / MSI-X** | 🟡 QEMU-proven | Source + build + QEMU | Hardware validation |
| **relibc POSIX** | 🟢 ~85% coverage | Source + Redox-target tests | Message queues, AF_UNIX |
| **DRM / KMS** | 🟡 Builds, no HW | Source + build | GPU CS ioctl backend |
| **Mesa** | 🟡 swrast + virgl builds | Build (llvmpipe + `virtio_gpu_dri.so`) | virgl EGL runtime probe patch not wired into recipe.toml |
| **Wayland compositor** | 🟡 Bounded proof | Build + QEMU | Qt6 Wayland `null+8` crash in `wl_proxy_add_listener` — candidate fix wired but unvalidated |
| **DRM / KMS** | 🟡 Builds, QEMU boots | Source + build + QEMU boot | Qt6 Wayland null+8 crash blocks graphical login |
| **Mesa** | 🟡 swrast + virgl builds | Build (llvmpipe + `virtio_gpu_dri.so`) | virgl EGL runtime probe |
| **Wayland compositor** | 🟡 Bounded proof | Build + QEMU | Qt6 Wayland `null+8` crash in `wl_proxy_add_listener` |
| **Input / Seat** | 🟢 Working | Build + QEMU | libinput deferred |
| **Greeter / Login** | 🟢 SDDM wired | SDDM v0.21.0 + pam-redbear in `redbear-full.toml`; binaries stage cleanly | Qt6 Wayland null+8 crash (runtime) |
| **Greeter / Login** | 🟡 SDDM wired, boots to text login | SDDM v0.21.0 + pam-redbear in `redbear-full.toml`; ISO boots to login prompt | Qt6 Wayland null+8 crash blocks graphical SDDM |
| **D-Bus** | 🟢 System bus wired | Build + recipe-level meson fix (2026-06-19) | Session bus |
| **Qt6** | 🟢 Builds | Build (Core+Gui+DBus+Wayland+QML interpreter) | Wayland `null+8` crash blocks runtime |
| **KF6 Frameworks** | 🟡 36/48 build | Build | 12 blocked (Wayland null+8 crash, NOT QML gate) |
@@ -60,11 +67,7 @@ and what must happen, in what order, to reach a usable KDE Plasma desktop with h
### Bottom Line
**The OS boots to a greeter/login screen in QEMU. Software rendering works. A hardware-accelerated
KDE Plasma desktop is gated on three things: (1) Qt6 Wayland `null+8` crash resolution, (2) real KWin build,
(3) SDDM + compositor wiring for login prompt. The previously-documented "QML JIT gate" has been
**corrected**: QQuickWindow/QQmlEngine headers and libraries DO exist in the sysroot (86 + 83 headers,
106 .so files). The real blocker is a Qt6 Wayland protocol crash, not QML JIT.**
**The OS boots to a text login prompt in QEMU. The ISO builds successfully and services start (D-Bus, seatd, SDDM, greeter). Graphical login is gated on the Qt6 Wayland `null+8` crash. The previously-documented "QML JIT gate" has been **corrected**: QQuickWindow/QQmlEngine headers and libraries DO exist. The real blocker is a Qt6 Wayland protocol crash, not QML JIT.**
**Login path decision (v5.0): SDDM v0.21.0 is the chosen display manager.** SDDM was previously
in-tree, compiled successfully, then lost during migration. It has been recovered (commit