A Wayland kiosk
Find a file
Tristan Daniel 51e6c760da Update new output handler for wlroots 0.9.0
Following breaking changes in wlroots 0.9.0, wlr_output_commit must be
called after wlr_output_set_mode, wlr_output_set_transform and wlr_output_enable.
Additionally, wlr_output_enable is no longer implicitly called by
wlr_output_set_mode.

Fixes #102
2020-01-06 11:49:57 +01:00
.builds Fix the FreeBSD build 2019-12-18 21:51:05 +01:00
docs Document environment variables 2019-12-20 16:51:11 +01:00
cage.c Use hard tabs 2020-01-05 13:42:17 +01:00
config.h.in Add missing config.h.in 2019-01-02 22:28:56 +01:00
idle_inhibit_v1.c Replace all wayland-server.h includes with wayland-server-core.h 2019-12-20 17:16:53 +01:00
idle_inhibit_v1.h Replace all wayland-server.h includes with wayland-server-core.h 2019-12-20 17:16:53 +01:00
LICENSE Update copyright to include 2019 2019-01-02 21:01:01 +01:00
meson.build Release Cage 0.1.1 2019-06-03 19:55:52 +02:00
meson_options.txt Add XWayland support 2019-01-02 20:58:48 +01:00
output.c Update new output handler for wlroots 0.9.0 2020-01-06 11:49:57 +01:00
output.h Annotate wl_list link field 2019-12-26 17:14:57 +01:00
README.md README: refer to docs/ 2019-12-20 17:05:00 +01:00
seat.c seat: be explicit about output- and layout coordinates 2020-01-05 13:16:01 +01:00
seat.h seat: be explicit about output- and layout coordinates 2020-01-05 13:16:01 +01:00
server.h Support multiple outputs 2019-12-26 17:14:57 +01:00
view.c Rename view_damage_surface to view_damage_part 2019-12-29 22:54:25 +01:00
view.h Rename view_damage_surface to view_damage_part 2019-12-29 22:54:25 +01:00
xdg_shell.c Rename view_damage_surface to view_damage_part 2019-12-29 22:54:25 +01:00
xdg_shell.h Replace all wayland-server.h includes with wayland-server-core.h 2019-12-20 17:16:53 +01:00
xwayland.c xwayland: fix regression after 95b7782 2020-01-05 12:59:26 +01:00
xwayland.h Replace all wayland-server.h includes with wayland-server-core.h 2019-12-20 17:16:53 +01:00

Cage: a Wayland kiosk builds.sr.ht status

Cage's logo

This is Cage, a Wayland kiosk. A kiosk runs a single, maximized application.

This README is only relevant for development resources and instructions. For a description of Cage and installation instructions for end-users, please see its project page.

Release signatures

Releases are signed with 6EBC43B1 and published on GitHub.

Building and running Cage

You can build Cage with the meson build system. It requires wayland, wlroots and xkbcommon to be installed. Note that Cage is developed against the latest tag of wlroots, in order to not constantly chase breaking changes as soon as they occur.

Simply execute the following steps to build Cage:

$ meson build
$ ninja -C build

Cage comes with compile-time support for XWayland. To enable this, first make sure that your version of wlroots is compiled with this option. Then, add -Dxwayland=true to the meson command above. Note that you'll need to have the XWayland binary installed on your system for this to work.

You can run Cage by running ./build/cage APPLICATION. If you run it from within an existing X11 or Wayland session, it will open in a virtual output as a window in your existing session. If you run it at a TTY, it'll run with the KMS+DRM backend. In debug mode (default build type with Meson), press Alt+Esc to quit. To build a release build, use meson build --buildtype=release.

For more information, see the docs/ folder.

Cage is based on the annotated source of tinywl and rootston.

Bugs

For any bug, please create an issue on GitHub.

License

Please see LICENSE on GitHub.

Copyright © 2018-2019 Jente Hidskes dev@hjdskes.nl