Linux port
Umbra is Windows 10 1809+ / Windows 11 only today. A Linux version is in progress, tracked in the epic #172. Follow that issue for the current state: the plan and its sub-issues are the source of truth, and this page only explains the shape of the problem.
What carries over
Section titled “What carries over”- Widgets are web pages. HTML, CSS and JavaScript don’t need porting, and the widget and theme catalogs stay shared.
- The widget SDK is one JavaScript API (
window.umbra), so the same page can run on any web view the host provides. - Automation is a protocol. The control commands,
umbractland the MCP server describe what Umbra can do independently of how a given platform does it.
What is Windows-specific (and must be reimplemented)
Section titled “What is Windows-specific (and must be reimplemented)”- Desktop pinning: Progman ownership,
HWND_BOTTOM, DWM corners. - The WebView2 host and its sandbox enforcement through
WebResourceRequested. - Tray, toasts, global hotkeys, media sessions, system metrics and fullscreen detection.
- The installer and the self-updater.
Contributing
Section titled “Contributing”Pick a step from the epic, comment that you’re on it, and follow the dev setup and architecture pages. Security rules apply to every platform: the security model lists the invariants a port must keep.
