Hjdskes/cage logo

Hjdskes/cage

Free

A Wayland kiosk

FreeFree tier
Type
Open Source

About Hjdskes/cage

Cage is a Wayland compositor that runs a single, maximized application, functioning as a kiosk. It is built on wlroots and supports optional XWayland. Cage can operate at a TTY using the KMS/DRM backend or nested within an existing X11 or Wayland session. It is configured via environment variables and run options, and compiled using the Meson build system. The project is open-source under the MIT license.

Key Features

Runs a single maximized application as a kiosk
Built on wlroots and Wayland
Optional XWayland support
Can run at a TTY with KMS/DRM backend or nested in an existing session
Configured via environment variables and command-line options
Compiled with the Meson build system
Open-source under MIT license

Pros & Cons

Pros
  • Lightweight and minimal compositor for single-application use
  • Open-source with an MIT license
  • Based on the well-maintained wlroots library
  • Supports XWayland for legacy X11 applications
  • Can be run nested for testing within an existing session
Cons
  • Limited to a single application; not suitable for multi-window desktops
  • Requires a Wayland-capable environment or TTY
  • Documentation primarily consists of a man page and a wiki; may be sparse
  • Configuration options are not extensive

Best For

Digital signage displaysPublic information kiosksSingle-purpose terminalsLocked-down environments requiring a single application

FAQ

What is Cage?
Cage is a Wayland compositor that runs a single, maximized application, acting as a kiosk.
How do I build Cage?
Cage can be built using the Meson build system. Run 'meson setup build' followed by 'meson compile -C build'. Dependencies include wayland, wlroots, and xkbcommon.
How do I quit Cage?
In debug mode (default build type), press Alt + Esc to quit Cage.
Does Cage support XWayland?
Cage has optional XWayland support. It must be enabled at compile time by using a version of wlroots compiled with XWayland, and the XWayland binary must be installed on the system.
Can Cage run inside an existing desktop session?
Yes, if run from within an existing X11 or Wayland session, Cage will open in a virtual output as a window.