Sweets

Introduction

Dynamic tiling Wayland compositor inspired by XMonad and DWM

Sweets is a fast, minimal, dynamic tiling Wayland compositor built on wlroots and configured in Lua. Windows tile automatically into a master/stack layout, and you drive everything from the keyboard — with mouse move and resize when you want it.

It draws on ideas from XMonad and DWM: a small, predictable core, dynamic tiling, and configuration that lives in plain text rather than a settings UI.

Highlights

Dynamic tiling

A master/stack layout that reflows as windows open and close, with gaps, borders, and per-monitor workspaces.

Configured in Lua

The global sweets table sets behavior, devices, monitors, and bindings. A broken config never crashes the compositor.

Runtime control

Query and command the compositor over a Unix socket with the sweetctl CLI.

Fail-safe reload

Sweets watches your config and reloads it automatically; a bad edit keeps the last good configuration.

Get started

Current limitations

  • No XWayland — native Wayland apps only.
  • Layer-shell launchers receive keyboard focus. Dedicated screen lockers should use ext-session-lock-v1; legacy layer-shell lockers are not treated as secure locks.

Sweets is licensed under the GPL-3.0.

On this page