0.3.63
Fix — KDE Plasma splash (ksplash) never showing since before 0.3.41
**Root cause 1 — Missing Wayland drop-in:**
SDDM uses `DisplayServer=wayland` (kwin_wayland owns the DRM device). Depending on the session type, `plasma-kwin_wayland.service` may be used instead of `plasma-kwin_x11.service`. The existing `Wants=plasma-ksplash.service` drop-in was only in `plasma-kwin_x11.service.d/`. If kwin_wayland ran, ksplash was never pulled into the session startup.
**Fix:** Added `kiwi/root/etc/systemd/user/plasma-kwin_wayland.service.d/invariant-ksplash.conf` with `Wants=plasma-ksplash.service`, mirroring the X11 drop-in. Both config.sh files updated to chmod it 0644.
**Root cause 2 — `Splash.qml` instability:**
- Root `Rectangle` used `width: Screen.width` / `height: Screen.height` from `import QtQuick.Window 2.15`. Before the KSplash window is fully set up, `Screen` may report 0, causing a 0×0 invisible rectangle. Also a potential source of QML engine errors on Qt 6.
- `layer.enabled: true` on a `Text` element in software rendering mode (`QSG_RHI_BACKEND=software`) can cause an offscreen render context error, crashing ksplash immediately.
- `XMLHttpRequest.send()` was not wrapped in try/catch — an exception in `Component.onCompleted` (e.g. if Qt 6 disallows file:// XHR) would abort QML initialization silently.
**Fixes in `Splash.qml` and `Splash_halloween.qml`:**
- Removed `import QtQuick.Window 2.15`; replaced `width: Screen.width` / `height: Screen.height` with `anchors.fill: parent`
- Wrapped XMLHttpRequest in nested try/catch so any exception is absorbed (fallback to standard splash)
- Removed `layer.enabled: true` from `Splash_halloween.qml` Text element
---