You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Simon Ser daf9ad1af7 swaybar: log Wayland display errors 3 weeks ago
.builds ci: make Meson warnings fatal 4 weeks ago
.github/ISSUE_TEMPLATE Fix IRC links in READMEs and templates 2 months ago
assets License wallpapers as CC-0 2 years ago
client cairo: Replace <cairo/cairo.h> by <cairo.h> 3 months ago
common input: Move get_current_time_msec in from util 1 month ago
completions i3-compat: add GET_BINDING_STATE IPC command 1 year ago
contrib grimshot: Exit 1 on cancellation 2 weeks ago
include Fix wl_pointer.frame not sent on touch emulation 8 hours ago
protocols build: use Dependency.get_variable instead of get_pkgconfig_variable 4 weeks ago
sway Fix wl_pointer.frame not sent on touch emulation 8 hours ago
swaybar swaybar: log Wayland display errors 8 hours ago
swaymsg Make command line option lists const 6 months ago
swaynag swaynag: adds option to set wayland shell layer 1 month ago
.clang-format Update clang format to better match existing code 1 month ago
.editorconfig Create .editorconfig 5 years ago
.gitignore Allocate minimum size necessary in pango text functions. (#3473) 3 years ago
CONTRIBUTING.md Fix IRC links in READMEs and templates 2 months ago
LICENSE MIT license 5 years ago
README.de.md readme: switch back to IRC web client 2 months ago
README.dk.md readme: switch back to IRC web client 2 months ago
README.es.md readme: switch back to IRC web client 2 months ago
README.fr.md readme: switch back to IRC web client 2 months ago
README.hu.md readme: switch back to IRC web client 2 months ago
README.ja.md readme: switch back to IRC web client 2 months ago
README.ko.md readme: switch back to IRC web client 2 months ago
README.md Change 'Danish' to 'Dansk' in README 4 weeks ago
README.nl.md readme: switch back to IRC web client 2 months ago
README.pl.md readme: switch back to IRC web client 2 months ago
README.pt.md readme: switch back to IRC web client 2 months ago
README.ro.md readme: switch back to IRC web client 2 months ago
README.ru.md readme: switch back to IRC web client 2 months ago
README.tr.md readme: switch back to IRC web client 2 months ago
README.uk.md readme: switch back to IRC web client 2 months ago
README.zh-CN.md readme: switch back to IRC web client 2 months ago
README.zh-TW.md readme: switch back to IRC web client 2 months ago
config.in config.in: change terminal emulator to foot 3 months ago
meson.build Add meson options to enable/disable swaybar and swaynag 5 days ago
meson_options.txt Add meson options to enable/disable swaybar and swaynag 5 days ago
sway.desktop Update language in sway.desktop & sway(1) 2 years ago

README.md

sway

English - 日本語 - Français - Українська - Español - Polski - 中文-简体 - Deutsch - Nederlands - Русский - 中文-繁體 - Português - Dansk - 한국어 - Română - Magyar - Türkçe

sway is an i3-compatible Wayland compositor. Read the FAQ. Join the IRC channel (#sway on irc.libera.chat).

Release Signatures

Releases are signed with E88F5E48 and published on GitHub.

Installation

From Packages

Sway is available in many distributions. Try installing the "sway" package for yours.

If you're interested in packaging sway for your distribution, stop by the IRC channel or shoot an email to sir@cmpwn.com for advice.

Compiling from Source

Check out this wiki page if you want to build the HEAD of sway and wlroots for testing or development.

Install dependencies:

  • meson *
  • wlroots
  • wayland
  • wayland-protocols *
  • pcre
  • json-c
  • pango
  • cairo
  • gdk-pixbuf2 (optional: system tray)
  • scdoc (optional: man pages) *
  • git (optional: version info) *

*Compile-time dep

Run these commands:

meson build/
ninja -C build/
sudo ninja -C build/ install

On systems without logind, you need to suid the sway binary:

sudo chmod a+s /usr/local/bin/sway

Sway will drop root permissions shortly after startup.

Configuration

If you already use i3, then copy your i3 config to ~/.config/sway/config and it'll work out of the box. Otherwise, copy the sample configuration file to ~/.config/sway/config. It is usually located at /etc/sway/config. Run man 5 sway for information on the configuration.

Running

Run sway from a TTY. Some display managers may work but are not supported by sway (gdm is known to work fairly well).