Wayland Desktop Landscape

From Gentoo Wiki
Jump to:navigation Jump to:search
Resources

Wayland has developed into a mature ecosystem over the course of the past few years. Wayland is meant to be a much simpler replacement of the Xorg server, and also being easier to develop and maintain. GNOME and KDE have full wayland support and there are numerous independent compositors for those wishing for a more compact set of tools.

Due to the large amount of efforts expended by the community in creating beautiful applications, it is a good idea to consolidate the list of applications into a single authoritative location inside Gentoo to keep track of the various Wayland projects. The aim of this endeavor is to make Wayland into a well supported system in the current landscape of Gentoo.

Available software

Compositors

Wayland compositor is the equivalent of a window manager in Xorg, except that for Xorg an additional compositor such as Compton or Picom would be needed.

In Wayland the task for both compositing and window management is delegated to the same program, which while making the program a bit larger, simplifies the render API by a large extent.

There are three major kinds of window managers:

  • Stacking (aka floating): The traditional mode of how window managers are expected to behave, similar to that of Windows or OS X. Windows act like pieces of paper on a desk, and can be stacked on top of each other.
  • Tiling: Windows are tiled so that none of them overlap. These usually make very extensive use of key-bindings and traditionally have little to no reliance on the mouse. Tiling window managers may be manual, offer predefined layouts, or both.
  • Dynamic: These window managers can dynamically switch between stacking and tiling configurations.
Name Package Type Usability Extra notes
Enlightenment x11-wm/enlightenment Stacking Daily driver Eye candy compositor part of the Enlightenment desktop environment
Hikari gui-wm/hikari Stacking Daily driver Simple, clean compositor inspired by OpenBSD's x11-wm/cwm
KWin kde-plasma/kwin Dynamic Daily driver KDE's compositing window manager/Wayland compositor.
Mutter x11-wm/mutter Stacking Daily driver GNOME's compositing window manager/Wayland compositor.
Sway gui-wm/sway Tiling Daily driver x11-wm/i3 clone
Wayfire gui-wm/wayfire Stacking Daily driver Beautiful, eye candy compositor inspired by Compiz
Cage gui-wm/cage Kiosk Beta Kiosk based compositor for displaying a single fullscreen application (in GURU)
Cagebreak gui-wm/cagebreak Tiling Beta Tiling compositor inspired by RatPoison (in wayland-desktop)
DWL gui-wm/dwl Tiling Unstable DWM clone (in GURU)
Kiwmi gui-wm/kiwmi Stacking Unstable Fully programmable compositor configurable with Lua (in wayland-desktop)
LabWC gui-wm/labwc Stacking Unstable OpenBox clone (in wayland-desktop)
Liri gui-liri/liri-shell Stacking Unstable QT shell from Liri OS (in wayland-desktop)
River gui-wm/river Tiling Unstable Dynamic tiling compositor, inspired by DWM and BSpWM (in wayland-desktop)
Taiwins gui-wm/taiwins Dynamic Unstable Modular and extendable compositor configurable with Lua (in wayland-desktop)
Waybox gui-wm/waybox Stacking Unstable OpenBox clone (in wayland-desktop)
Weston dev-libs/weston Stacking Not for general use reference compositor implementation for developers

Display managers

A display manager(DM), sometimes known as login manager, presents the user with a graphical login screen to start a GUI session.

The display managers listed here support starting both X and Wayland sessions, the type represents the platform that the display-managers use for being drawn.

Name Package Type Usability Extra notes
GNOME/GDM gnome-base/gdm Xorg Daily driver The flagship GTK display manager from GNOME
LightDM x11-misc/lightdm Xorg Daily driver Lightweight display manager, customizable via greeters
SDDM x11-misc/sddm Xorg Daily driver Highly customizable, eye candy display manager from KDE
GtkGreet + greetd gui-apps/gtkgreet Wayland Daily driver GTK frontend for greetd
TUIGreet + greetd gui-apps/tuigreet Console Daily driver TUI frontend for greetd
QTGreet + greetd gui-apps/qtgreet Wayland Daily driver QT frontend for greetd (in wayland-desktop)

Application launchers

Name Package Usability Extra notes
bemenu dev-libs/bemenu Daily driver demenu clone
Fuzzel gui-apps/fuzzel Daily driver Application launcher similar to rofi's 'drun' mode (in wayland-desktop)
j4-dmenu-desktop x11-misc/j4-dmenu-desktop Daily driver i3-desktop-menu replacement
lavaLauncher gui-apps/lavalauncher Daily driver simple, static, launcher
nwg-launchers gui-apps/nwg-launchers Daily driver GTK based static-bar + logout + grid (in GURU)
Wofi gui-apps/wofi Daily driver rofi clone (in GURU)

Clipboard managers

Name Package Usability Extra notes
wl-clipboard gui-apps/wl-clipboard Daily driver Simple command-line programs

Desktop notifications

Name Package Usability Extra notes
Dunst x11-misc/dunst Daily driver Customizable and lightweight notification-daemon
Mako gui-apps/mako Daily driver Lightweight wayland notification daemon
Notification Daemon x11-misc/notification-daemon Daily driver Notification daemon from GNOME project
Tiramisu gui-apps/tiramisu Daily driver Minimalistic desktop notifications provider (in GURU)

Status bars

Name Package Usability Extra notes
i3status-rust x11-misc/i3status-rust Daily driver Very resource friendly and feature-rich replacement for i3status (in GURU)
SFWBar gui-apps/swfbar Daily driver Sway Floating Window Bar (in GURU)
Waybar gui-apps/waybar Daily driver Highly customizable Wayland bar for Sway and Wlroots based compositors
Yambar gui-apps/yambar Daily driver Modular status panel for X11 and Wayland, inspired by polybar (in wayland-desktop)

Terminal emulators

Name Package Usability Extra notes
Alacritty x11-terms/alacritty Daily driver GPU-accelerated terminal emulator
Kitty x11-terms/kitty Daily driver A modern, hackable, featureful, OpenGL-based terminal emulator
Mlterm x11-terms/mlterm Daily driver A multi-lingual terminal emulator

Wallpaper managers

Name Package Usability Extra notes
Azote gui-apps/azote Daily driver Wallpaper and color manager for X and wlroots based compositors (in GURU)
MPVPaper gui-apps/mpvpaper Daily driver Video wallpaper program for wlroots based compositors (in GURU)
Oguri gui-apps/oguri Daily driver Wallpaper daemon supporting animated wallpapers for Wayland compositors (in wayland-desktop)
SwayBG gui-apps/swaybg Daily driver Wallpaper utility for all Wayland compositors

Screenlock and idle management

Name Package Usability Extra notes
Swayidle gui-apps/swayidle Daily driver Idle management daemon for all wayland compositors
Swaylock gui-apps/swaylock Daily driver Screen locker for all wayland compositors
Swaylock-effects gui-apps/swaylock-effects Daily driver Swaylock fork with fancy effects (in GURU)

Multiple display configurators

Name Package Usability Extra notes
Kanshi gui-apps/kanshi Daily driver Dynamic display configuration, like autorandr, for all wayland compositors
wdisplays gui-apps/wdisplays Daily driver GUI display configurator for all wayland compositors (in GURU)
wlr-randr gui-apps/wlr-randr Daily driver Xrandr clone for all wayland compositors (in GURU)

Screenshots and recording

Name Package Usability Extra notes
Grim gui-apps/grim Daily driver Screen image grabber for all wayland compositors
Slurp gui-apps/slurp Daily driver Screen region selector for all wayland compositors
Swappy gui-apps/swappy Daily driver Screenshotting and editing tool for all wayland compositors, inspired by OS X snappy
wf-recorder gui-apps/wf-recorder Daily driver Screen recorder for all wayland compositors

Remote access

Name Package Usability Extra notes
Wayvnc gui-apps/wayvnc Beta VNC server for wlroots based compositors
Waypipe gui-apps/waypipe Unstable Transparent proxy for all wayland compositors

External resources