Enter the development shell
Shady targets wlroots 0.20.2. The Nix shell supplies Meson, Ninja, Wayland tooling, Lua, GLES/EGL, and the test utilities.
Build the compositor
./tools/build.sh creates or reconfigures the Meson build and runs Ninja.
Run nested first
Use the Wayland backend inside your current compositor. This is the easiest place to validate clients and configuration.
Try the compatibility path
--safe bypasses the spatial renderer, physics, FPS interaction, and visual effects.
Move to a real VT
Once nested operation is reliable, use ./tools/run-native.sh for DRM + libinput on a normal Linux VT login.
Pick a rice
Each rice has nested and native launchers. Start with Afterglow (./rices/afterglow/run.sh), or read one as a template for your own config.
nix develop
./tools/build.sh
WLR_BACKENDS=wayland ./build/shady -s footWLR_BACKENDS=wayland ./build/shady --safe
# First native smoke test from a real VT
./tools/run-native.sh --safe -s footRegression gates
Fast checks before you trust a build.
The repository includes separate core and spatial gates for quick local validation.
./tools/daily-driver.sh all
./tools/spatial-daily-driver.sh all
./tests/spatial-suite.sh