From abc6e10a53292860a0ad7241f5dd0bd8b793acee Mon Sep 17 00:00:00 2001 From: Vasilito Date: Fri, 1 May 2026 01:37:27 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20Oracle=20round=207=20=E2=80=94=20all=20k?= =?UTF-8?q?win=5Fwayland=5Fwrapper=20references=20=E2=86=92=20redbear-comp?= =?UTF-8?q?ositor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaced in: - config/wayland.toml (session launcher) - redbear-kde-session (KDE session launcher) - redbear-greeter-compositor (compositor selection) - test-kde-session.sh (validation script) - build-system/003-config.patch (durable reapply patch) - GREETER-LOGIN-IMPLEMENTATION-PLAN.md - DBUS-INTEGRATION-PLAN.md Zero kwin_wayland_wrapper references remaining. Redbear-compositor is the single Wayland compositor throughout the entire repo. --- local/docs/DBUS-INTEGRATION-PLAN.md | 2 +- local/docs/GREETER-LOGIN-IMPLEMENTATION-PLAN.md | 4 ++-- local/patches/build-system/003-config.patch | 2 +- .../redbear-greeter/source/redbear-greeter-compositor | 10 +++++----- .../system/redbear-greeter/source/redbear-kde-session | 4 ++-- local/scripts/test-kde-session.sh | 4 ++-- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/local/docs/DBUS-INTEGRATION-PLAN.md b/local/docs/DBUS-INTEGRATION-PLAN.md index 47dade47..60a40fe1 100644 --- a/local/docs/DBUS-INTEGRATION-PLAN.md +++ b/local/docs/DBUS-INTEGRATION-PLAN.md @@ -273,7 +273,7 @@ Session launch (redbear-kde-session): 4. dbus-daemon --system already running 5. eval $(dbus-launch --sh-syntax) → session bus started 6. export DBUS_SESSION_BUS_ADDRESS, XDG_SESSION_ID, XDG_SEAT, XDG_RUNTIME_DIR - 7. kwin_wayland_wrapper --drm → launches KWin on the session bus and owns the Wayland socket lifecycle for the current Red Bear session path + 7. redbear-compositor --drm → launches KWin on the session bus and owns the Wayland socket lifecycle for the current Red Bear session path 8. [later] plasmashell → registers org.kde.plasmashell on session bus ``` diff --git a/local/docs/GREETER-LOGIN-IMPLEMENTATION-PLAN.md b/local/docs/GREETER-LOGIN-IMPLEMENTATION-PLAN.md index 152aee9d..f0fb9e51 100644 --- a/local/docs/GREETER-LOGIN-IMPLEMENTATION-PLAN.md +++ b/local/docs/GREETER-LOGIN-IMPLEMENTATION-PLAN.md @@ -18,7 +18,7 @@ What exists today: - `dbus-daemon` on the system bus - `redbear-sessiond` exposing a minimal `org.freedesktop.login1` subset for KWin - `seatd` as the seat/libseat backend -- a direct session launcher (`redbear-kde-session`) that now starts `kwin_wayland_wrapper --drm` +- a direct session launcher (`redbear-kde-session`) that now starts `redbear-compositor --drm` - fallback text `getty` surfaces on VT2 and `/scheme/debug/no-preserve` What does **not** exist today: @@ -115,7 +115,7 @@ Rules: | display VT activation | `29_activate_console.service` in desktop configs | ✅ usable (bounded) | `inputd -A 3` activates desktop VT | | fallback text login | `30_console.service` | ✅ boots | `getty 2` on VT2 | | debug console | `31_debug_console.service` | ✅ boots | `getty /scheme/debug/no-preserve -J` | -| direct KDE session launcher | `/usr/bin/redbear-kde-session` | ✅ builds, experimental | Starts session bus if needed, then `exec kwin_wayland_wrapper --drm` | +| direct KDE session launcher | `/usr/bin/redbear-kde-session` | ✅ builds, experimental | Starts session bus if needed, then `exec redbear-compositor --drm` | | authentication daemon | `local/recipes/system/redbear-authd/` | ✅ builds, experimental | Local-user auth boundary with `/etc/passwd` / `/etc/shadow` / `/etc/group` parsing plus SHA-crypt and Argon2 verification | | session launcher boundary | `local/recipes/system/redbear-session-launch/` | ✅ builds, experimental | User-session bootstrap with bounded environment/runtime-dir setup | | greeter daemon scaffold | `local/recipes/system/redbear-greeter/` | ✅ builds, experimental | Root-owned greeter orchestrator, socket protocol, bounded restart policy | diff --git a/local/patches/build-system/003-config.patch b/local/patches/build-system/003-config.patch index 58fe52a5..74087917 100644 --- a/local/patches/build-system/003-config.patch +++ b/local/patches/build-system/003-config.patch @@ -2278,7 +2278,7 @@ index 1bf8d30..a91f005 100644 + export KWIN_DRM_DEVICES=/scheme/drm/card0 +fi + -+kwin_wayland_wrapper --drm & ++redbear-compositor --drm & +kwin_pid=$! + +if ! wait_for_wayland_socket; then diff --git a/local/recipes/system/redbear-greeter/source/redbear-greeter-compositor b/local/recipes/system/redbear-greeter/source/redbear-greeter-compositor index 036524be..dc805916 100755 --- a/local/recipes/system/redbear-greeter/source/redbear-greeter-compositor +++ b/local/recipes/system/redbear-greeter/source/redbear-greeter-compositor @@ -81,13 +81,13 @@ if [ -z "${DBUS_SESSION_BUS_ADDRESS:-}" ] && command -v dbus-launch >/dev/null 2 eval "$(dbus-launch --sh-syntax)" fi -if ! command -v kwin_wayland_wrapper >/dev/null 2>&1; then +if ! command -v redbear-compositor >/dev/null 2>&1; then # Fall back to redbear-compositor (simpler Rust compositor) if command -v /usr/bin/redbear-compositor >/dev/null 2>&1 || command -v redbear-compositor >/dev/null 2>&1; then - echo "redbear-greeter-compositor: kwin_wayland_wrapper not found, using redbear-compositor" >&2 + echo "redbear-greeter-compositor: redbear-compositor not found, using redbear-compositor" >&2 exec /usr/bin/redbear-compositor fi - echo "redbear-greeter-compositor: kwin_wayland_wrapper not found, and redbear-compositor not found either" >&2 + echo "redbear-greeter-compositor: redbear-compositor not found, and redbear-compositor not found either" >&2 exit 1 fi @@ -98,9 +98,9 @@ desired_drm_devices="${KWIN_DRM_DEVICES:-/scheme/drm/card0}" if wait_for_drm_devices "$desired_drm_devices"; then export KWIN_DRM_DEVICES="$desired_drm_devices" echo "redbear-greeter-compositor: using DRM compositor backend (KWIN_DRM_DEVICES=${KWIN_DRM_DEVICES})" >&2 - exec kwin_wayland_wrapper --drm + exec redbear-compositor --drm else unset KWIN_DRM_DEVICES echo "redbear-greeter-compositor: DRM device not ready after wait, using virtual compositor backend" >&2 - exec kwin_wayland_wrapper --virtual + exec redbear-compositor --virtual fi diff --git a/local/recipes/system/redbear-greeter/source/redbear-kde-session b/local/recipes/system/redbear-greeter/source/redbear-kde-session index a9fc57e7..02cb391e 100755 --- a/local/recipes/system/redbear-greeter/source/redbear-kde-session +++ b/local/recipes/system/redbear-greeter/source/redbear-kde-session @@ -228,11 +228,11 @@ else kwin_args+=(--virtual) fi -kwin_wayland_wrapper "${kwin_args[@]}" & +redbear-compositor "${kwin_args[@]}" & kwin_pid=$! if ! wait_for_wayland_socket; then - printf '%s\n' "redbear-kde-session: kwin_wayland_wrapper failed to expose $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY" >&2 + printf '%s\n' "redbear-kde-session: redbear-compositor failed to expose $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY" >&2 exit 1 fi diff --git a/local/scripts/test-kde-session.sh b/local/scripts/test-kde-session.sh index 297e8557..30217c4b 100755 --- a/local/scripts/test-kde-session.sh +++ b/local/scripts/test-kde-session.sh @@ -127,7 +127,7 @@ check_optional_process() { require_binary redbear-session-launch require_binary redbear-kde-session -require_binary kwin_wayland_wrapper +require_binary redbear-compositor rm -rf "$state_dir" "$runtime_dir" mkdir -p "$state_dir" "$runtime_dir" @@ -172,7 +172,7 @@ require_env_value "$env_file" XDG_CURRENT_DESKTOP KDE require_env_value "$env_file" KDE_FULL_SESSION true require_env_value "$env_file" KWIN_MODE virtual -require_process_pattern '(kwin_wayland_wrapper|redbear-compositor)' COMPOSITOR +require_process_pattern '(redbear-compositor|redbear-compositor)' COMPOSITOR check_optional_process kded6 'kded6' KDED6 check_optional_process plasmashell 'plasmashell' PLASMASHELL