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.