Add Qt/QML desktop shell and Nebula.UI

Introduce a new production desktop shell at `shells/desktop/shell` built with C++20, Qt Quick/QML, and LayerShellQt, including top bar, launcher, desktop surfaces, shell state, and mock app data. Add the shared `packages/nebula-ui` QML module (theme, controls, focus, icons) and wire it into the shell build.

Retire the old GTK/WebKit native host by removing `shells/desktop/native`, move the React shell UI to `shells/desktop/prototype-react` as an archived design reference, and update root/compositor/session documentation to reflect the new Linux-only production architecture and temporary Sway role.
This commit is contained in:
2026-08-26 16:34:40 +12:00
parent 5504d3cfb8
commit befed8ff96
80 changed files with 2128 additions and 609 deletions
+20
View File
@@ -0,0 +1,20 @@
# Nebula.UI
Shared Qt Quick/QML design system for NebulaOS shells.
Desktop and the future Bigscreen shell should both import:
```qml
import Nebula.UI
```
This module contains reusable visual language only:
- colour, spacing, type, and motion tokens (`Theme`)
- generic controls (`NebulaButton`, `NebulaCard`, `NebulaIconButton`, `NebulaTextField`)
- focus treatment (`FocusFrame`)
- compact vector icons (`NebulaIcon`)
Do not put Desktop- or Bigscreen-specific chrome here (top bar, launcher, session flow).
Built as part of `shells/desktop/shell`. It is not a standalone application.