// the find
cage-kiosk/cage
A Wayland kiosk
Cage is a minimal Wayland compositor that does exactly one thing: run a single application fullscreen. It's a kiosk compositor — think digital signage, ATMs, or embedded UIs where you want a locked-down environment with no window decorations, no taskbar, no escape hatch. Built on wlroots.
1. Extremely focused scope — the entire compositor fits in roughly a dozen C files. There's almost nothing to audit or misconfigure. 2. Built on wlroots 0.20, so it inherits battle-tested Wayland protocol handling rather than reimplementing input/output management from scratch. 3. XWayland support is compiled in optionally, which means legacy X11 apps can run inside it without needing a full desktop compositor. 4. Active maintenance — last push was yesterday, and the release tooling (sign/tag/increment scripts in contrib/) suggests an organized release process.
1. The README punts almost all real documentation to an external project page and wiki — if those go down, new users are largely on their own from the repo alone. 2. Hard dependency on a specific wlroots branch (0.20) means you're blocked if your distro ships a different version, and wlroots has historically broken API between minor versions. 3. No multi-output support by design — if your kiosk setup has two displays, Cage isn't the tool. 4. The idle inhibit implementation is a separate C file but there's no obvious configuration for idle timeouts, so you're left wiring that up yourself through external tools or patching.