Files
awesome-wayland/README.md
Akawama 946e698d8d Update README.md
1. Correct the details of Kiwmi under ## Compositors
I submitted Kiwmi with details "A wayland compositor fully programmable with Lua" but it can also be configured like 'dwm' by
changing the header files in source. So corrected it to just "A fully programmable Wayland compositor", that's how its creator
describes it anyway.

2. Addded new compositor SWC
It has a small and easy to follow codebase. So it might be helpful for people wanting to get into Wayland compositor development.
2022-03-20 12:14:38 -04:00

18 KiB

Awesome Wayland

A curated list of Wayland code and resources.

If you want to contribute, please read this.

Table of contents

Brightness Control

No Wayland-specific requirements, so you can use your xorg solution of choice to control screen brightness, like brightnessctl, brillo, light, or just directly manipulate /sys/class/backlight.

  • Wlsunset - Day/night gamma adjustments for Wayland compositors supporting wlr-gamma-control-unstable-v1

Browsers without X library dependency

  • Firefox and forks

    • Firefox - For using Firefox on wayland just add MOZ_ENABLE_WAYLAND=1 to your environment variables
    • Tor Browser - Tor Browser Bundle: anonymous browsing using Firefox and Tor
  • QtWebEngine

    • Crusta - Fast, modern and minimal desktop web browser with rich features
    • Dooble - The weather bug browser. Minimal, cute, and unusually stable
    • Falkon - KDE web browser
    • Viper Browser - A lightweight browser using QtWebEngine
    • Qutebrowser - a keyboard-focused browser with a minimal GUI
  • WebKit2GTK

    • Surfer - Simple keyboard based webkit2gtk browser
    • wyeb - A vim-like webkit2gtk browser

Clipboard Managers

  • clipman - A simple clipboard manager for Wayland
  • wayclip - Wayland clipboard utility
  • wl-clipboard - Command-line copy/paste utilities for Wayland

Compositors

  • Cagebreak - A Wayland tiling compositor inspired by Ratpoison
  • Cardboard - A scrollable tiling Wayland compositor
  • dwl - A rewrite of DWM for Wayland
  • hikari - A hybrid stacking/tiling Wayland compositor
  • japokwm - A wlroots based dynamic tiling wayland compositor based around creating layouts
  • Kiwmi - A fully programmable Wayland compositor
  • KWin - KDE window manager and compositor
  • labwc - A stacking Wayland compositor with look and feel of openbox
  • Mutter - A window and compositing manager that displays and manages your desktop via OpenGL
  • newm - A Wayland compositor written with laptops and touchpads in mind
  • river - A dynamic tiling Wayland compositor
  • Sway - i3-compatible Wayland compositor
  • SWC - Small Wayland compositor implemented as a library with easy to follow codebase
  • Taiwins - A modern wayland window manager
  • Velox - Velox is a simple window manager based on swc, inspired by dwm and xmonad
  • Vivarium - A dynamic tiling Wayland compositor using wlroots, with desktop semantics inspired by xmonad
  • Waybox - An openbox clone on Wayland
  • Wayfire - 3D Wayland compositor
  • Weston - Reference compositor for Wayland
  • Qtile - A full-featured, hackable tiling window manager written and configured in Python, now supports wayland

Display Configuration

  • Disman - General screen management software for different compositors based on KScreen
  • Kanshi - Dynamic display configuration
  • KScreen - KDE's screen management software
  • kscreen-doctor - An xrandr-like utility for Plasma
  • swaymsg - General settings utility for Sway that also manages displays
  • Wallutils - A set of utilities to manage monitors, resolutions, wallpapers and timed wallpapers
  • wayout - A Simple tool to set output modes for wlroots compositors implementing zwlr_output_power_management_v1
  • wdisplays - GUI display configurator for wlroots compositors
  • wlay - Graphical output management for Wayland
  • wlopm - Wayland output power management tool
  • wlr-randr - An xrandr clone for wlroots compositors

Email Clients

  • KMail - Feature-rich email client that supports many protocols
  • Thunderbird - Standalone mail and news reader from mozilla.org

Emulation

  • Waydroid - A container-based approach to boot a full Android system on GNU/Linux

IM

  • Neochat - A Matrix client made with Kirigami
  • Ruqola - A Rocket.Chat client made with QtQuick/QML

Image Viewers

  • Gwenview - Image viewer by KDE
  • imv - A command line image viewer for X11/Wayland
  • Koko - Image viewer for desktop and mobile
  • mvi - A command line image viewer utilizing mpv
  • Pix - Maui's image viewer for desktop and mobile
  • vimiv - An image viewer with vim-like keybindings

Key Binding Management

  • keyd - System-wide daemon to remap keys using kernel input primitives (evdev, uinput)
  • swhkd - A display protocol-independent hotkey daemon

Launchers

  • albert - A fast and flexible keyboard launcher
  • bemenu - Dynamic menu library and client program inspired by dmenu
  • dmenu-wayland - dmenu-wl is an efficient dynamic menu for wayland (wlroots)
  • fuzzel - Application launcher for wlroots based Wayland compositors, similar to rofi's drun mode
  • kickoff - Application launcher with a focus on snappyness
  • KRunner - Application launcher for Plasma
  • LavaLauncher - A simple launcher panel for Wayland desktops
  • Mauncher - A GTK-based alternative to dmenu for Wayland which supports display scaling
  • nwg-launchers - A GTK-based application grid launcher, button bar and dmenu for Wayland
  • sirula - Simple app launcher for Wayland written in Rust
  • wldash - Wayland dashboard and launcher written in Rust
  • Wofi - A launcher/menu program for wlroots based Wayland compositors such as sway
  • yofi - A minimalistic menu for wayland
  • rofi - A fork of rofi with Wayland support

Libraries

  • client toolkit - A toolkit for writing Wayland clients in Rust
  • Mir - Mir is set of libraries for building Wayland based shells
  • smithay - A modular smithy for making Wayland compositors in Rust
  • swc - A library for making a simple Wayland compositor
  • wld - A primitive drawing library targeted at Wayland
  • wlroots - Pluggable, composable, unopinionated modules for building a Wayland compositor
  • wob - A lightweight overlay volume/backlight/progress/anything bar for Wayland

Music Players

  • Elisa - A music player that is simple, reliable, and a joy to use
  • vvave - Maui's music player for desktop and mobile

Notifications

  • fnott - Keyboard driven and lightweight Wayland notification daemon for wlroots-based compositors
  • Mako - A lightweight Wayland notification daemon
  • dunst - A highly configurable and lightweight notification daemon
  • swaync - A simple notification daemon with a GTK gui for notifications and the control center

On-screen Keyboards

  • wf-osk - A very, very basic on-screen keyboard using gtkmm, virtual-keyboard-v1 and layer-shell protocols

PDF Viewers

Screen Locking

  • swayidle - Idle management daemon for Wayland
  • swaylock - Screen locker for Wayland
  • swaylock-effects - A fork of swaylock with effects such as a blurred screenshot as background or a clock on the lockscreen
  • waylock - A simple screenlocker for Wayland compositors

Screencasting

  • Blue Recorder - Screen recorder for GNOME based on Green Recorder written in Rust
  • GNOME ScreenCast - GNOME's default screen recorder embedded in Mutter
  • Green Recorder - Screen recorder for GNOME (unmaintained!)
  • Kooha - Minimalistic screen recorder for GNOME and Plasma using the xdg-desktop-portal ScreenCast protocol
  • OBS Studio - Compositor-independent screen recorder with support for v4l2loopback
  • Peek - An animated gif recorder for GNOME
  • RecApp - Simple screen recorder for GNOME
  • ssr-wlroots - A version of SimpleScreenRecorder with support for wlroots-based compositors (more specifically, those that support wlr-screencopy-v1 and xdg-output) - doesn't support recording area selection and has issues with multiple screens
  • wayfarer - Screen recorder for GNOME
  • wayrec - Experimental screen recorder for Wayland using the freedesktop ScreenCast portal
  • wf-recorder - A utility program for screen recording of wlroots-based compositors (more specifically, those that support wlr-screencopy-v1 and xdg-output)
  • wlrobs - An obs-studio plugin that allows you to screen capture on wlroots based wayland compositors
  • wshowkeys - Displays keys being pressed on a Wayland session

Screenshots

  • Flameshot - Powerful yet simple to use screenshot software (requires grim on wlroots)
  • Grim - Grab images from a Wayland compositor
  • Slurp - Select a region in a Wayland compositor
  • Spectacle - GUI application for capturing screenshots
  • Swappy - A Wayland-native snapshot editing tool, inspired by Snappy on macOS
  • Wayshot - A screenshot tool for wlroots compositors implementing zwlr_screencopy_v1.

Session Management

  • wlogout - A Wayland-based logout menu

Status Bars

  • i3status-rust - Very resource-friendly and feature-rich replacement for i3status, written in pure Rust
  • rootbar - Root Bar is a bar for wlroots based Wayland compositors such as sway
  • sfwbar - Sway Floating Window Bar is a taskbar for Sway, focused on a stacking layout workflow
  • waybar - Highly customizable Wayland bar for Sway and Wlroots based compositors
  • yambar - Modular status panel for X11 and Wayland, inspired by polybar

Subtitle Editors

  • Subtitle Composer - Current git builds include an ffmpeg-based video player fully Wayland native

Terminal Emulators

  • Alacritty - A cross-platform, GPU-accelerated terminal emulator
  • Ate - Awesome terminal emulator
  • Foot - A fast, lightweight and minimalistic Wayland terminal emulator
  • Germinal - Minimalist vte-based terminal emulator
  • GNOME Terminal - A terminal emulator for GNOME
  • Havoc - A minimal terminal emulator for Wayland
  • Kitty - A cross-platform, fast, feature-full, GPU-based terminal emulator
  • Konsole - Terminal emulator by KDE
  • Termite - A keyboard-centric VTE-based terminal, aimed at use within a window manager with tiling and/or tabbing support (Termite is obsoleted by Alacritty!)
  • https://wezfurlong.org/wezterm/index.html - A GPU-accelerated cross-platform terminal emulator and multiplexer
  • wterm - An st fork for wayland

Text Editors

  • Kate - Modern text editor built on the KDE Frameworks and Qt
  • KWrite - Simple notepad-like editor based on Kate
  • Nota - Maui's simple text editor for desktop and mobile

Tools

  • lswt - List Wayland toplevels in both human readable and machine parsable formats
  • wtype - A Wayland tool that allows you to simulate keyboard input like xdotool
  • ydotool - A generic Linux command-line automation tool for Wayland
  • wev - A tool for debugging events on a Wayland window, analagous to the X11 tool xev

Video Players

  • Haruna - Video player built with Qt/QML and libmpv
  • mpv - Command line video player

Wallpaper

  • oguri - A very nice animated wallpaper daemon for Wayland compositors
  • mpvpaper - A video wallpaper program for wlroots based wayland compositors
  • plasma-apply-wallpaperimage - A terminal utility to change wallpaper on Plasma
  • swaybg - A wallpaper utility for Wayland compositors
  • swww - A Solution to your Wayland Wallpaper Woes
  • Wallutils - A set of utilities to manage monitors, resolutions, wallpapers and timed wallpapers
  • wbg - Super simple wallpaper application for Wayland compositors

License

CC0