A native Wallpaper Engine runtime for Wayland. we-layerd renders scene, video, and web wallpapers without Wine, while we-gui provides the desktop interface for browsing, configuring, and controlling them.
It supports compositors implementing the layer-shell protocol, including niri, Hyprland, and KDE Plasma, as well as GNOME through the bundled Shell extension.
![]() |
![]() |
| Scene wallpaper | Web wallpaper |
- Runs Wallpaper Engine scene, video, and web wallpapers through a native Linux renderer.
- Automatically discovers common Steam and Wallpaper Engine Workshop locations.
- Scans subscribed Workshop items and displays their titles, types, and static or animated previews.
- Provides title search and type filters for large wallpaper libraries.
- Reads wallpaper-defined user properties and exposes supported toggles, sliders, choices, colors, text fields, files, and directories in the GUI.
- Stores settings per wallpaper, so switching back restores its playback, presentation, and user-property values.
- Applies and switches wallpapers directly from
we-guiwithout manually restarting the runtime. - Provides play, pause, resume, stop, and tray controls.
- Configures frame rate, playback speed, audio volume, and mute state per wallpaper.
- Can follow the output resolution or use a fixed rendering resolution.
- Supports cover, fit, stretch, and center scaling modes, plus 0°, 90°, 180°, and 270° rotation.
- Forwards pointer movement, clicks, and scrolling to interactive wallpapers.
- Includes an optional compatibility setting for looping visible scene audio authored as a one-shot sound.
- Presents wallpapers as desktop surfaces through layer-shell rather than ordinary application windows.
- Uses DMA-BUF presentation for a zero-copy path when the renderer and compositor share compatible formats and modifiers.
- Falls back to shared-memory presentation when DMA-BUF is unavailable or unsuitable, including common hybrid-GPU configurations.
- Handles output size, integer and fractional scaling, viewport cropping, and dynamic renderer resizing.
- Uses Wayland frame callbacks and bounded in-flight buffers to avoid uncontrolled frame production.
- Supports GNOME through the bundled extension while keeping rendering in the native runtime.
- Provides an adaptive wallpaper grid with animated GIF previews.
- Follows the desktop light or dark appearance.
- Switches immediately between English and Simplified Chinese.
- Exposes runtime state and renderer settings from the GUI.
- Keeps playback accessible from a system tray menu after the main window is closed.
After installing the project, launch the graphical interface:
we-guiThe GUI detects common Steam paths, opens the Workshop library, saves wallpaper settings, and starts or switches the runtime when a wallpaper is applied.
- Linux with a Wayland session.
- A compositor with layer-shell support, or GNOME with the bundled extension enabled.
- A local Wallpaper Engine installation and downloaded Workshop wallpapers.
- Linux x86_64 for the current CEF-based web wallpaper helper.


