Skip to content

Aqueous

Aqueous is a Wayland compositor and window manager built as one native Zig process. Its layout engines, rules, keybindings, input policy, workspaces, and output management all run inside the compositor, which keeps configuration changes predictable and avoids a chain of helper processes or IPC round trips.

Aqueous began as a fork of River, but now owns its window-management policy and configuration format. It retains the small, focused feel of a tiling window manager while adding compositor-side motion and optional SceneFX visuals.

  • Eight built-in layouts: tile, monocle, grid, rows, dwindle, scrolling, float, and game-mode
  • Per-output and per-workspace layout selection
  • First-match window rules for layout, workspace, floating geometry, state, opacity, and game-mode placement
  • Native output configuration for modes, scale, transforms, adaptive sync, positions, hotplug, and named profiles
  • XKB and libinput settings for keyboards, mice, touchpads, and trackpoints
  • Optional SceneFX rounded corners and backdrop blur, plus focus-aware opacity and animated workspace transitions
  • Native XWayland support alongside modern Wayland protocols
  • A packaged Noctalia shell configuration for a ready-to-use desktop session

Aqueous uses four focused TOML files under ~/.config/aqueous/:

  • wm.toml for outputs, bindings, commands, struts, and global policy
  • layout.toml for layout defaults, engine options, slots, and overrides
  • input.toml for XKB, keyboard repeat, and libinput policy
  • rules.toml for per-window behavior and game-mode policy

The compositor watches these files and publishes validated replacement snapshots when they change. Most edits become visible within a second, or immediately when you press the configured reload_config binding.

Start with Installation, then build a clean setup in the Configuration guide.

The source, annotated configuration references, packaging, and development tools live in the Aqueous GitHub repository.

© 2026 Seafoam LabsShelly Chel