i3-compatible Wayland compositor
Find a file
Hugo Osvaldo Barrera 1606311553 Don't ignore initialisation errors
server_init ignores all errors. In practice, theses result in a
segfault, potentially much later and losing any unsaved work.

Properly handle initialisation errors and bail immediately.
2026-04-10 13:13:42 +02:00
.builds build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
.github/ISSUE_TEMPLATE
assets
client
common common/pango: use pangocairo directly instead of cairo_create(NULL) 2026-03-21 11:18:26 +01:00
completions
include Don't ignore initialisation errors 2026-04-10 13:13:42 +02:00
protocols protocols: Bump vendored wlr-protocols 2026-02-24 15:34:20 +01:00
sway Don't ignore initialisation errors 2026-04-10 13:13:42 +02:00
swaybar
swaymsg
swaynag swaynag/main: free config_path 2025-11-20 12:31:30 +01:00
.editorconfig
.gitignore
.mailmap
config.in
CONTRIBUTING.md
LICENSE
meson.build build: bump version to 1.13-dev 2026-03-26 16:30:37 +01:00
meson_options.txt
README.ar.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.az.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.cs.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.de.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.dk.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.es.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.fr.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.ge.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.gr.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.hi.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.hu.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.ir.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.it.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.ja.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.ko.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.nl.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.no.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.pl.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.pt.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.ro.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.ru.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.sr.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.sv.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.tr.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.uk.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.zh-CN.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
README.zh-TW.md build: switch to explicit 'meson setup' syntax 2025-10-02 18:06:20 +02:00
release.sh
sway.desktop

sway

English - عربي - Azərbaycanca - Česky - Deutsch - Dansk - Español - Français - ქართული - Ελληνικά - हिन्दी - Magyar - فارسی - Italiano - 日本語 - 한국어 - Nederlands - Norsk - Polski - Português - Română - Русский - Српски - Svenska - 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.

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 *
  • pcre2
  • json-c
  • pango
  • cairo
  • gdk-pixbuf2 (optional: additional image formats for system tray)
  • swaybg (optional: wallpaper)
  • scdoc (optional: man pages) *
  • git (optional: version info) *

* Compile-time dep

Run these commands:

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

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 or from a display manager.