andrew befed8ff96 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.
2026-08-26 16:34:40 +12:00

NebulaOS

A Linux desktop environment built around a custom compositor, shell, and service stack.

Structure

Path Purpose
core/nebula-core Core runtime and platform APIs
compositor/ Compositor configuration (Sway is temporary)
shells/ Desktop and future Bigscreen shells
packages/ Shared UI (Nebula.UI), icons, API, and design tokens
services/ System services (audio, network, bluetooth, power, accounts)
session/ Session manager and desktop entry
packaging/ Distribution packaging (Ubuntu)
branding/ Boot assets, wallpapers, and sounds

Shells

Nebula Desktop (production) is a C++20 Qt Quick/QML Wayland shell using LayerShellQt. See shells/desktop/.

Nebula Bigscreen is planned as a separate Qt Quick/QML shell with a controller-first interaction model, sharing Nebula.UI and Nebula Core.

Standalone Nebula applications may still use React/Tauri where that is a better fit. The operating-system shell does not.

An archived React desktop prototype lives in shells/desktop/prototype-react/ as a design reference only.

Current stack

Ubuntu
 ↓
Wayland
 ↓
Sway          temporary compositor
 ↓
Nebula Shell  Qt Quick/QML

Applications and games render on their own Wayland/XWayland paths. They are not composited inside QML.

Getting started

Desktop shell build instructions: shells/desktop/README.md.

The Qt shell must be compiled on Linux (the Ubuntu NebulaOS VM). It will not build on Windows.

S
Description
No description provided
Readme
1.8 MiB
Languages
C++ 46.5%
QML 31.4%
JavaScript 10.6%
CSS 5.2%
CMake 3.7%
Other 2.6%