docs: full-target runtime wiring audit — SDDM greeter conflict
SDDM greeter renders on redbear-compositor (per /etc/sddm.conf CompositorCommand); KWin is the post-login session compositor. Runtime chain (driver-manager → redox-drm → card0 → sddm → redbear-compositor → greeter) is coherent, BUT three display entry points (20_display redbear-session-launch, 20_greeter redbear-greeterd, 21_sddm) all fire oneshot_async and would contend for the single-owner GPU/card0. For a clean SDDM path the first two must be disabled (operator sign-off required).
This commit is contained in:
@@ -39,6 +39,31 @@ From the upstream-forks sweep — fetch + cherry-pick only if we hit these runti
|
||||
- relibc `9867c155..707169e2`: **ld.so lazy PLT relocation** (dlopen of libEGL/libgbm), poll/epoll timeout, UDS-connect outside rootfs.
|
||||
- base `59cf8189..488da6a1`: ramfs hosting AF_UNIX sockets (Wayland `$XDG_RUNTIME_DIR/wayland-0`).
|
||||
|
||||
## Runtime wiring audit (config/redbear-full.toml)
|
||||
|
||||
**Greeter compositor:** `/etc/sddm.conf` sets `[Wayland] CompositorCommand=/usr/bin/redbear-compositor`.
|
||||
So the SDDM greeter renders on **redbear-compositor** (KWin is the post-login
|
||||
session compositor). Rendering the greeter does NOT need the compositor input
|
||||
wiring (that only gates typing a login) — so "see the SDDM prompt" is reachable
|
||||
without the input refactor.
|
||||
|
||||
**Runtime chain (coherent):** `00_driver-manager` sees the GPU PCI device →
|
||||
spawns `redox-drm` (priority-61 for virtio/Intel/AMD) → `/scheme/drm/card0` →
|
||||
`21_sddm` (`REDBEAR_DRM_WAIT_SECONDS=30` waits for card0) → launches
|
||||
`redbear-compositor` → SDDM greeter Qt/Wayland UI. Needs `dbus`, `seatd`,
|
||||
`redbear-sessiond`, `redbear-authd` (all `requires_weak` on sddm).
|
||||
|
||||
**CONFLICT (must resolve for a clean SDDM greeter):** three display entry points
|
||||
all fire as `oneshot_async`, each trying to own the GPU/card0/VT:
|
||||
- `20_display.service` → `redbear-session-launch` (KDE session, VT 4)
|
||||
- `20_greeter.service` → `redbear-greeterd` (custom RedBear greeter, VT 3)
|
||||
- `21_sddm.service` → `sddm` (the target)
|
||||
For the SDDM path, `20_display` and `20_greeter` should be disabled (GPU/DRM is
|
||||
single-owner). This is a service-removal decision → **needs operator sign-off**
|
||||
(policy: only the user authorizes removing services). Options: (a) disable the two
|
||||
competing units for the SDDM path, or (b) confirm SDDM is the chosen greeter and
|
||||
the others are legacy.
|
||||
|
||||
## Build notes / deficiencies fixed
|
||||
- Full builds re-cooked llvm21 (~1-2h) on every base/relibc bump — fixed in Phase 0.
|
||||
- Mesa source/ is an untracked build artifact; durable Mesa changes MUST be patches (Phase 1a).
|
||||
|
||||
Reference in New Issue
Block a user