Sway常用软件和脚本#
这里列出了一些关于swaywm(或者其他基于wlroots的窗口管理器)的有用的脚本和软件。
注意,几乎所有的GTK和KDE应用程序,如firefox、thunderbird、chromium,甚至emacs(带有puregtk/emacs-28分支)都可以作为本地wayland在sway下运行,所以它们不在这里专门列出。
登录管理器#
:警告: 注意: developers.Sway开发人员并不正式支持登录管理器
- greetd - 一个轻巧且灵活的登录管理器守护程序
- emptty - 基于TTY的简单的要死的CLI显示管理器
- Ly - 一个轻量级的TUI(类ncurses)显示管理器
- autologin - 自动登录到配置的用户;非常适合单用户计算机以及采用其他启动身份验证方式(如加密硬盘)的计算机。
应用程序启动器#
如xfce4-appfinder和krunner类似的GTK或KDE通用启动程序可以正常运行,但下面这些更适合于Sway:
- kickoff - 专注于性能和低延迟的应用程序启动器
- lavalauncher - 适用于Wayland的简易启动器
- nwg-launchers - 一组启动器:应用程序网格、动态菜单、按钮栏
- Ulauncher - 应用程序启动器
- wldash - 适用于Wayland的仪表板/启动器/控制面板工具
- yofi - 适用于Wayland的极简主义应用程序启动器
- gmenu - 桌面应用程序启动器
- mauncher - Mauncher是一款基于GTK的工具,可作为Wayland环境下dmenu的替代方案,它支持显示缩放功能。
- fuzzel - 应用程序启动器,类似于rofi的drun模式
- term-dmenu - 用浮动终端和FZF替换dmenu
- sirula - 用Rust编写的适用于Wayland的简易应用程序启动器
- wlaunchpad - 适用于基于wlroots的合成器的极简类Mac启动台应用
菜单#
- wofi - 受rofi启发、适用于wlroots合成器的菜单及启动器
- bemenu - 支持Wayland的dmenu替代方案
- tofi - 适用于wlroots合成器的极快速的rofi/dmenu替代工具
- wlogout - 基于Wayland的注销菜单程序。
- wayland fork of rofi - Rofi的分支版本,增加了对Wayland的支持
- dmenu-wl - 适用于Wayland(wlroots)的高效动态菜单。
- sway-launcher-desktop - 基于终端用户界面(TUI)的启动器菜单,用Bash和出色的fzf工具制作而成。
- sway-menu - 该菜单由“bindsym”生成,用于学习Sway的按键操作并记住那些不太常用的按键。
- wlogoutbar - 适用于基于wlroots的合成器的极简注销菜单
- sway-fzfify - 一系列让你的Sway桌面用上FZF的脚本。
- waylogout - 图形化的注销/睡眠/重启/关机对话框,灵感源自oblogout,基于swaylock-effects开发。
显示/输出#
- wob - 适用于Wayland的轻量级覆盖式音量/背光/进度/任意显示条。
- mywob - 自动启动wob
- wdisplays - 适用于wlroots合成器的图形用户界面(GUI)显示配置器,类似arandr。
- wlr-randr - 管理Wayland合成器的输出。
- wlay - Wayland的图形化输出管理
- kanshi - 定义输出配置文件,使其在热插拔时自动启用和禁用。例如,这可用于在笔记本电脑连接扩展坞时关闭其内置屏幕。
- persway - 简单的Sway进程间通信(IPC)守护程序
- fade - 让新窗口逐渐淡入显示。这个脚本还处于初步阶段,你可能会遇到各种问题。
- way-displays - 管理你的Wayland显示器
- nwg-displays - 受wdisplays和wlay启发,为Sway Wayland合成器打造的输出管理工具。
图片浏览#
- imv -imv 是一个命令行图像查看器,适用于平铺窗口管理器。
- mvi - 一个使用 mpv 的命令行图像查看器
- ucollage - 一个受 vim 启发的可扩展命令行图像查看器。
- swayimg - 适用于 Sway/Wayland 的图像查看器
- vimiv - 一个具有类似 Vim 键绑定的图像查看器。
视频播放#
- mpv - 命令行视频播放器
通知#
- mako - 一个适用于 Wayland 的轻量级通知守护进程。
- fnott - 键盘驱动且轻量的Wayland通知守护进程
- dunst - 一个高度可配置且轻量的通知守护程序。
- wayherb - Wayland 版本的 herbe 通知——无需守护进程和 D-Bus 的通知。简洁轻量。
- swaync - 一个使用 GTK 构建的带有通知中心的简单通知守护程序
- salut - 以鼠标为中心的动画通知守护程序
工作区#
- workstyle - dynamically rename your workspaces to indicate which programs are running in each one.
- sworkstyle - The main difference between this and workstyle is that this supports exact app names instead of only generic titles.
- wsdnames.py - automatically renames workspace title
- swaysome - manage workspaces namespaced on a per-screen basis, like awesome wm.
概览#
- sov - 类似i3-overview: 这是一个覆盖层,可显示所有工作区的布局图,让在Sway中导航变得更加便捷。
布局#
- autotiling - switch the layout splith/splitv depending on the currently focused window dimensions.
- swaymonad - an auto-tiler that implements Xmonad-like layouts.
截图#
- grim - 从Wayland合成器获取图像
- grimshot - 用于截取屏幕截图的脚本
- slurp - 在Wayland合成器中选择一个区域
- screenshot-bash - 截图 - 上传 - 复制链接
- snag - 使用Rofi截取屏幕截图和录制屏幕视频。
- swappy - 屏幕截图与编辑器
- swayshot - 适用于Sway的打印屏幕助手,为截图添加了键盘快捷键。
- shotman - 用于处理截图的简易用户界面。
- taiga - 一款动态截图程序
- wayshot - 一款为基于wlroots的合成器(如sway和river)打造的原生截图工具,使用Rust编写。
- flameshot - 功能强大且易于使用的截图软件
亮度调节#
- brightnessctl - 控制设备亮度
- light - 控制背光
- clight - a C user daemon utility that aims to fully manage your display (And a GUI for it clight-gui )
- 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
- wl-gammarelay - a daemon with D-Bus interface to control display color temperature and brightness
- wl-gammarelay-rs - a daemon with D-Bus interface to control display color temperature and brightness written in Rust
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
- wl-gammarelay - a daemon with D-Bus interface to control display color temperature and brightness
- wl-gammarelay-rs - a daemon with D-Bus interface to control display color temperature and brightness written in Rust
配色方案#
- darkman framework for dark-mode and light-mode transitions, implementing org.freedesktop.appearance.color-scheme
壁纸#
- 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
- sunpaper - a linux utility to change wallpaper based on local sunrise and sunset times.
- wpaperd - Wallpaper daemon for Wayland that can change the wallpaper after a fixed time.
- swww - A Solution to your Wayland Wallpaper Woes.
状态栏与面板#
- swaybar - sway默认状态栏
- waybar - 适用于Sway的高度可定制的Wayland栏
- yambar - 一个轻量级且可配置的状态面板。
- rootbar - a bar for wlroots based wayland compositors such as sway
- rwaybar - a bar with configurable widgets and transparent overlay support
- wapanel - Simple panel for Wayland with decent XFCE-like applets
- sfwbar - Sway Floating Window Bar is a taskbar for Sway, focused on a stacking layout workflow
- nwg-shell - a ‘shell’ for wl-roots including various other nwg-* components listed here
- nwg-panel - GTK-based panel, inspired by Waybar and tint2
- nwg-dock - Fully configurable dock featuring pinned buttons, task buttons, the workspace switcher and the launcher button.
- nwg-menu - Menu for nwg-shell
- nwg-drawer - a launcher for nwg-shell
- nwg-bar - a simple button bar for nwg-shell
- nwg-wrapper - display text or images on any layer (eg root)
状态栏内容生成器#
- swayrbar - swayrbar is a status command for sway’s swaybar implementing the swaybar-protocol
- 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!)
- luastatus - Universal status bar content generator
- 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.
- gopsuinfo - prints system usage information as text for Waybar custom modules or icon/text for nwg-panel executors
组件#
- Gsimplecal - a lightweight calendar applet written in C++ using GTK.
- wlclock - a digital analog clock for Wayland desktops.
- wlr-sunclock - a desktop widget to show to the sun’s shadows on earth.
键盘/输入#
- wev - event debugging similar to xev for X11
- wshowkeys - display keypresses (fork with fixes for recent wlroots versions, original here)
- 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.
- copyq - full function clipboard manager (but requires the full KDE/Qt stack)
- cliphist - clipboard history “manager” for wayland (including images) - requires golang-1.16 to build
- 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
- clipmon - preserves the clipboard and notifies when an application pastes (for security)
- 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
- swayr - A urgent-first/LRU window and workspace switcher usable with launcher/menu programs such as wofi.
- wl-clip-persist - Keep Wayland clipboard even after programs close
输入法引擎#
- 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
On-screen快捷键#
- squeekboard - Librem5 keyboard
- wvkbd - On-screen keyboard for wlroots that sucks less
锁屏#
- 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
终端#
- 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
- 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
- Ate - Awesome terminal emulator
- Germinal - Minimalist vte-based terminal emulator
- Havoc - A minimal terminal emulator for Wayland
- wterm - An st fork for wayland
VNC/RDP/SPICE#
- wayvnc - VNC server for wlroots
- wlvncc - Wayland VNC Client (WIP)
- connections - Wayland VNC/RDP client - not quite feature complete in released version 3.38 eg no full-screen, buggy config GUI. 3.40 may fix that when released.
- remotely - wayland VNC client - abandoned by author in favour of connections.
- vncviewer - VNC client - fast, full featured, stable - but uses XWayland.
- vinagre - Wayland VNC/RDP client. VNC support is rather slow.
- remmina - Wayland VNC/RDP/SPICE client. VNC support is rather slow.
- krdc - Wayland VNC/RDP client. AVOID - does not support sway workspaces and took my session down!! Version 20.08.1
- freerdp - Wayland RDP client (wlfreerdp) which is pretty fast (but needs the -grab-keyboard option to work with sway). Also xfreerdp, a fast XWayland RDP client. Tested against xrdp X11 server. Is there a ‘wayrdp’ server out there?
远程/录制#
See also: Screencast-Compatibility