User Tools

Site Tools


sway:sway-apps

Useful add-ons for sway

Assuming it sticks, the canonical page for this is here

Here is a list of apps and scripts for swaywm .

Note that pretty much all GTK and KDE apps such as firefox, thunderbird, chromium, even emacs (with the gtk-emacs branch) can be run as native wayland under sway so they're not listed here.

[WIP] = Work in progress or alpha status

Log-in managers

greetd a minimal and flexible login manager daemon
emptty Dead simple CLI Display Manager on TTY
Ly a lightweight TUI (ncurses-like) display manager

Launchers

Generic launchers for GTK or KDE such as xfce4-appfinder and krunner work fine but the following were written with sway in mind:

lavalauncher simple launcher for Wayland
sgtk-menu app launcher
nwg-launchers a set of launchers: application grid, dynamic menu, button bar
Ulauncher app launcher
wldash A dashboard/launcher/control-panel thing for Wayland
yofi minimalistic application launcher for wayland
gmenu Desktop application launcher
mauncher Mauncher is a GTK-based alternative to dmenu for Wayland which supports display scaling.
fuzzel application launcher, similar to rofi's drun mode
wofi A rofi inspired menu and launcher for wlroots compositors
bemenu dmenu replacement with Wayland support
wlogout A wayland based logout menu wlogout
wayland fork of rofi fork of Rofi with added support for Wayland
dmenu-wl an efficient dynamic menu for wayland (wlroots).
sway-launcher-desktop a TUI-based launcher menu made with bash and the amazing fzf

Display/outputs

wob A lightweight overlay volume/backlight/progress/anything bar for Wayland.
mywob autostarts wob(1)
wdisplays GUI display configurator for wlroots compositors [like arandr(1)]
wlr-randr manage outputs of a Wayland compositor.
wlay Graphical output management for Wayland
kanshi define output profiles that are automatically enabled and disabled on hotplug. eg, this can be used to turn a laptop's internal screen off when docked.
autotiling switch the layout splith/splitv depending on the currently focused window dimensions.
persway a simple sway ipc daemon
imv imv is a command line image viewer intended for use with tiling window managers.

Notification

mako A lightweight notification daemon for Wayland.
fnott Keyboard driven and lightweight Wayland notification daemon
dunst a highly configurable and lightweight notification daemon.
wayherb Wayland notifcation port of herbe - daemon-less notifications without D-Bus. Minimal and lightweight.

workspaces

workstyle dynamically rename your workspaces to indicate which programs are running in each one.
wsdnames.py automatically renames workspace title

screenshot

grim grab images from a Wayland compositor
grimshot script to grab screenshots
slurp select a region in a Wayland compositor
swappy screen snapshot & editor
swayshot Print screen helper for sway adds keyboard shortcuts for screenshots
shotman simple UI for handling screenshots.
taiga an animated screenshot program

brightness

brightnessctl control device brightness
light control backlights
clight a C user daemon utility that aims to fully manage your display
wluma automatically adjusts screen brightness based on the screen contents and amount of ambient light around you
wluma-als-emulator a fake ambient light sensor for those who don't get one built in their laptop
brillo controls the brightness of backlight and LED devices on Linux.
wlr-brightness adjust the brightness of your screen

gamma

wl-gammactl Small GTK GUI application to set contrast, brightness and gamma
gammastep Adjust the color temperature of your screen
wlsunset Day/night gamma adjustments for Wayland

Wallpaper

swaybg Wallpaper tool
azote Wallpaper and colour manager for Sway, i3 and some other WMs
wallutils wallpaper manager
glpaper wallpaper program that allows you to render glsl shaders as your wallpaper
mpvpaper wallpaper program that allows you to play videos with mpv as your wallpaper
qt-video-wlr QT5 video player
oguri A very nice animated wallpaper daemon

Bars/panels

swaybar sway is an i3-compatible Wayland compositor.
i3status Status bar generator for i3bar, dzen2, xmobar or similar programs
i3blocks A feed generator for text based status bars (yes, it works fine with swaybar!)
waybar Highly customizable Wayland bar for Sway
yambar is a lightweight and configurable status panel
gopsuinfo prints system usage information as text for Waybar custom modules or icon/text for nwg-panel executors
i3status-rs a feature-rich and resource-friendly replacement for i3status, written in pure Rust. It provides a way to display “blocks” of system information (time, battery status, volume, etc) on the i3 bar. It is also compatible with sway.
rootbar a bar for wlroots based wayland compositors such as sway and was designed to address the lack of good bars for wayland
nwg-panel [WIP] a GTK-based panel, including best features from Waybar and tint2
wapanel Simple panel for Wayland with decent XFCE-like applets

widgets

wlclock a digital analog clock for Wayland desktops.
wlr-sunclock a desktop widget to show to the sun's shadows on earth.

Keyboard/Input

wev event debugging similar to xev for X11
wshowkeys display keypresses
ydotool Generic command-line automation tool (no X!) [like xdotool(1)]
myautotype Hot-keys using ydotool possibly looking up a key-value pair from ~/.config/myautotype
wtype xdotool type for wayland
clipman A basic clipboard manager for Wayland, with support for persisting copy buffers after an application exits.
wl-clipboard Wayland clipboard utilities, wl-copy and wl-paste, to copy data between the clipboard and Unix pipes, sockets, files etc
wl-clipboard-history Wayland clipboard history tracker
swaykbdd per-window keyboard layout for Sway
i3keys lists all the keys that are bound to some action in i3 or sway
swaynagmode programmatic control over swaynag, intended for use with keyboard bindings
sway-alttab simple daemon that keeps track of your last focused window and switches to it on receiving a SIGUSR1. Automatically binds Alt-Tab to the same action.
wlrctl command line utility for miscellaneous wlroots Wayland extensions (similar to xdotool). WARNING: requires sway-1.6+
waynergy [WIP] implementation of a synergy client for wlroots compositors

Input Method Editors

kime [WIP] Korean IME
wlanthy [WIP] simple Wayland-native Japanese input method. Born as a modification of wlhangul.
amthywl [WIP] Japanese input method for sway
wlhangul [WIP] A Hangul input method for Wayland.
wlpinyin [WIP] experimental minimal wayland IME for Chinese
wlchewing [WIP] Wayland Chinese zhuyin input method with libchewing

Locking

swayidle An idle daemon for wayland compositors
swaylock a screen locking utility for Wayland compositors
Waylock a simple screenlocker for wayland compositors.
swaylock-effects a fork of swaylock which adds built-in screenshots and image manipulation effects like blurring
mylock configure swaylock for various use-cases - safe, at-home, movie modes plus auto downloading of images

terminals

Alacritty A fast, cross-platform, OpenGL terminal emulator
foot A fast, lightweight and minimalistic Wayland terminal emulator
gnome-terminal gnome's terminal
kitty fast, featureful, GPU based terminal emulator
Konsole KDE's Terminal Emulator
sakura Simple but powerful libvte based terminal emulator
termite A keyboard-centric VTE-based terminal, aimed at use within a window manager with tiling and/or tabbing support.
roxterm terminal emulator intended to provide similar features to gnome-terminal, based on the same VTE library
wezterm GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust

Remote/recording

See also: Screencast-Compatibility

wayvnc VNC server for wlroots
wlvncc Wayland VNC Client (WIP)
waypipe waypipe is a proxy for Wayland[0] clients. This makes application forwarding similar to ssh -X [1] feasible.
wf-recorder Screen recorder for wlroots-based compositors eg swaywm
obs-studio capturing, compositing, encoding, recording, and streaming video content, efficiently (see wlrobs)
wlrobs obs-studio plugin that allows you to screen capture on wlroots based wayland compositors
obs-gnome-screencast Small source plugin to use GNOME Screen Cast functionality as a source for OBS Studio
green-recorder simple desktop recorder for Linux systems
txproto A fully scriptable and flexible multimedia streaming/handling program.
wdomirror wdomirror utilizes the wlroots dmabuf export protocol to create a mirror of an outout with as little overhead as possible

Misc. Scripts

sway-fit-floats fits floating windows into workspace
sway-focus focus an app by name (sway app_id or X11 class)
sway-prep-xwayland prepare for Xwayland
sway-prop show apps properties (similar to xprop)
sway-run-or-raise focus an existing app or run it otherwise
sway-select-window use bemenu/rofi/wofi to go to a running app
sway-start startup sway from the console
sway-track-firefox watch firefox (and other apps) and bind Shift-Ins to paste PRIMARY selection
sway-track-prev-focus mark container with _prev for rapid switching between apps
nmcli-rofi Wofi script to select wifi and VPNs with nmcli

Development

gtk-layer-shell A library to write GTK applications that use Layer Shell.

Sources

Contributing

If you have improvements, please post to r/swaywm

Criteria for inclusion (tentative):

  • it's on one of the source lists
  • it's mentioned on /r/swaywm
  • it's open source ie unencumbered by a restricted licence
  • it runs on linux
  • it adds something to the sway experience
sway/sway-apps.txt · Last modified: 2021/02/28 02:50 by admin