Skip to content

CuarzoSoftware/Louvre

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Louvre

Louvre is released under the LGPLv2.1 license. Current Louvre version.

Louvre is a C++ library for building Wayland compositors. It uses the Factory Method pattern to provide default implementations for all major functionality and protocols, which you can gradually override. This approach lets you see results from day one, potentially easing the learning curve while still giving you full control to create a unique, custom compositor.

Check the releases section for stable versions. The web documentation corresponds to the latest release.

Links

⭐ Features

  • Explicit Synchronization
  • Fractional Scaling (with optional antialias)
  • Direct Scanout (WIP)
  • VSync Control
  • Gamma Correction
  • Screencasting (WIP)
  • Hybrid-GPUs Support
  • Multi-Session Support
  • Double and Triple Buffering
  • Persistent Clipboard
  • Rootful XWayland (rootless mode is not supported, however, interesting projects such as Wayland Transpositor, Wayland Proxy Virtwl, and Xwayland Satellite can provide a rootless experience).

🧩 Protocols

  • Content Type Hint
  • Cursor Shape
  • DRM Lease
  • DRM synchronization object
  • Foreign Toplevel List
  • Fractional Scale
  • Idle Inhibit
  • Idle Notify
  • Image Capture Source
  • Mesa Wayland DRM
  • Linux DMA-Buf
  • Lvr Background Blur
  • Lvr Invisible Region
  • Lvr SVG Path
  • Pointer Constraints
  • Pointer Gestures
  • Presentation Time
  • Relative Pointer
  • Session Lock
  • Single Pixel Buffer
  • Tearing Control
  • Viewporter
  • Wayland
  • Wlr Foreign Toplevel Management
  • Wlr Gamma Control
  • Wlr Layer Shell
  • Wlr Output Management
  • XDG Activation
  • XDG Decoration
  • XDG Output
  • XDG Shell

🕹 Backends

  • DRM/KMS
  • Wayland
  • Offscreen

💻 Graphics APIs

  • OpenGL
  • Raster
  • Vulkan (WIP)