docs: Wayland-only path — no framebuffer workarounds. Add Qt6 instrumentation.
- WAYLAND-IMPLEMENTATION-PLAN.md v2.0: document architecture decision that Wayland is the only supported display path. Remove all framebuffer fallback workarounds (offscreen QPA, redox QPA shim). - qwaylanddisplay.cpp: add fprintf instrumentation for crash diagnosis; skip xkb_context_new on Redox to eliminate potential xkb crash vector. - greeter-ui/main.cpp: remove QT_QPA_PLATFORM=redox workaround. The greeter must use Wayland. Accept the crash until Qt6 is fixed. - Ruled out: relibc calloc (zeroes correctly), libwayland proxy_create (correct), compositor protocol (compliant). Root cause is in Qt6 generated Wayland wrappers passing NULL to wl_proxy_add_listener.
This commit is contained in:
@@ -12,13 +12,6 @@ int main(int argc, char *argv[]) {
|
||||
qputenv("QT_QUICK_BACKEND", QByteArrayLiteral("software"));
|
||||
QQuickWindow::setGraphicsApi(QSGRendererInterface::Software);
|
||||
|
||||
// Use the Redox-native QPA plugin (libqredox.so) instead of Wayland.
|
||||
// The Qt6 Wayland plugin crashes at null+8 during wl_registry init on Redox.
|
||||
// The redox QPA plugin renders directly to the framebuffer via scheme:display.
|
||||
if (qEnvironmentVariableIsEmpty("QT_QPA_PLATFORM")) {
|
||||
qputenv("QT_QPA_PLATFORM", "redox");
|
||||
}
|
||||
|
||||
QGuiApplication app(argc, argv);
|
||||
QQuickStyle::setStyle(QStringLiteral("Basic"));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user