From ce92f087ddb0c5830dcb476ece5ca12af506494a Mon Sep 17 00:00:00 2001 From: vasilito Date: Sat, 25 Jul 2026 01:52:29 +0900 Subject: [PATCH] redbear-full: defer post-login KDE desktop to reach SDDM greeter (temporary) Executing the greeter-focused path: the SDDM greeter dependency closure needs only Qt + 9 kf6 core modules + sddm + compositor + graphics. The full Plasma desktop (kwin, plasma-*, kirigami, konsole, kf6-ksvg/kio/solid/... - 42 packages outside the greeter closure) is post-login and each has its own Redox porting gaps (kf6-ksvg needs KirigamiPlatform, kf6-solid QSystemSemaphore, kwin private Qt APIs, ...). Comment those [packages] entries (# GREETER-DEFER, easily reverted) and drop kwin from the pre-cook list so the build reaches a bootable SDDM-greeter image now. Re-enable for the full desktop once its stack is ported. --- config/redbear-full.toml | 84 +++++++++++++++++----------------- local/scripts/build-redbear.sh | 2 +- 2 files changed, 43 insertions(+), 43 deletions(-) diff --git a/config/redbear-full.toml b/config/redbear-full.toml index d343cf3660..95ad42418b 100644 --- a/config/redbear-full.toml +++ b/config/redbear-full.toml @@ -133,64 +133,64 @@ qt6-wayland-smoke = {} qt6-sensors = {} # KF6 Frameworks — explicit real-build surface in alphabetical order -kirigami = {} -kf6-kio = {} -kde-cli-tools = {} +# GREETER-DEFER: kirigami = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kio = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kde-cli-tools = {} # post-login desktop; re-enable for full Plasma -kdecoration = {} -kf6-attica = {} -kf6-karchive = {} -kf6-kauth = {} -kf6-kbookmarks = {} -kf6-kcmutils = {} -kf6-kcodecs = {} -kf6-kcolorscheme = {} -kf6-kcompletion = {} +# GREETER-DEFER: kdecoration = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-attica = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-karchive = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kauth = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kbookmarks = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kcmutils = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kcodecs = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kcolorscheme = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kcompletion = {} # post-login desktop; re-enable for full Plasma kf6-kconfig = {} -kf6-kconfigwidgets = {} +# GREETER-DEFER: kf6-kconfigwidgets = {} # post-login desktop; re-enable for full Plasma kf6-kcoreaddons = {} kf6-kcrash = {} kf6-kdbusaddons = {} -kf6-kdeclarative = {} -kf6-kded6 = {} +# GREETER-DEFER: kf6-kdeclarative = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kded6 = {} # post-login desktop; re-enable for full Plasma kf6-kguiaddons = {} kf6-ki18n = {} -kf6-kiconthemes = {} -kf6-kidletime = {} -kf6-kitemmodels = {} -kf6-kitemviews = {} -kf6-kjobwidgets = {} -kf6-knotifications = {} -kf6-kpackage = {} -kf6-kservice = {} -kf6-ktextwidgets = {} -kf6-kwayland = {} -kf6-kwidgetsaddons = {} -kf6-kxmlgui = {} -kf6-prison = {} -kf6-solid = {} -kf6-sonnet = {} -kf6-knewstuff = {} -kf6-kwallet = {} -kf6-kglobalaccel = {} -kf6-pty = {} -kf6-notifyconfig = {} -kf6-parts = {} +# GREETER-DEFER: kf6-kiconthemes = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kidletime = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kitemmodels = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kitemviews = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kjobwidgets = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-knotifications = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kpackage = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kservice = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-ktextwidgets = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kwayland = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kwidgetsaddons = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kxmlgui = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-prison = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-solid = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-sonnet = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-knewstuff = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kwallet = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-kglobalaccel = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-pty = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-notifyconfig = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kf6-parts = {} # post-login desktop; re-enable for full Plasma icu = {} -konsole = {} -kglobalacceld = {} +# GREETER-DEFER: konsole = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: kglobalacceld = {} # post-login desktop; re-enable for full Plasma # KWin — real cmake build. null+8 crash verified FIXED (qtwaylandscanner null guards, # commits de2d74c37e + 882c2974ec). Still gated on qtdeclarative cross-target cmake # (host tool Qt6::qmlprofiler is intentionally not built — see qtdeclarative recipe). -kwin = {} +# GREETER-DEFER: kwin = {} # post-login desktop; re-enable for full Plasma # Plasma packages — QML/Quick re-enabled in kf6-kdeclarative and kf6-kcmutils. # These should now build against the target Qt6::Qml + Qt6::Quick from qtdeclarative. # See local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md for the full desktop path. -plasma-framework = {} -plasma-workspace = {} -plasma-desktop = {} +# GREETER-DEFER: plasma-framework = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: plasma-workspace = {} # post-login desktop; re-enable for full Plasma +# GREETER-DEFER: plasma-desktop = {} # post-login desktop; re-enable for full Plasma redbear-authd = {} redbear-session-launch = {} diff --git a/local/scripts/build-redbear.sh b/local/scripts/build-redbear.sh index d0115aa0db..9e9e3262e5 100755 --- a/local/scripts/build-redbear.sh +++ b/local/scripts/build-redbear.sh @@ -920,7 +920,7 @@ if [ "$CONFIG" = "redbear-full" ]; then # configure fails ("Could not find a package configuration file provided by # Qt6Qml"), aborting the whole build. Pre-cook the Qt stack IN ORDER, before # sddm/kwin, so every Qt6 CMake package is cached in the sysroot first. - PRECOOK_PKGS="relibc icu llvm21 mesa libdrm libepoxy redox-drm lcms2 libdisplay-info libxcvt qtbase qtshadertools qtdeclarative qtsvg qtwayland sddm kwin" + PRECOOK_PKGS="relibc icu llvm21 mesa libdrm libepoxy redox-drm lcms2 libdisplay-info libxcvt qtbase qtshadertools qtdeclarative qtsvg qtwayland sddm" else PRECOOK_PKGS="relibc icu" fi