sway man page

sway — SirCmpwn's Wayland window manager


sway [options] [command]


-h, --help

Show help message and quit.

-c, --config <config>

Specifies a config file.

-C, --validate

Check the validity of the config file, then exit.

-d, --debug

Enables full logging, including debug information.

-v, --version

Show the version number and quit.

-V, --verbose

Enables more verbose logging.


Gets the IPC socket path and prints it, then exits.


sway was created to fill the need of an i3-like window manager for Wayland. The upstream i3 developers have no intention of porting i3 to Wayland, and projects proposed by others ended up as vaporware. Many thanks to the i3 folks for providing such a great piece of software, so good that your users would rather write an entirely new window manager from scratch that behaved exactly like i3 rather than switch to something else.

Launch sway directly from a tty or via your favorite Wayland-compatible login manager.

Important note for nvidia users: The proprietary nvidia driver does not have support for Wayland as of 2016-06-10. Use nouveau.


If sway is currently running, you may run sway [command] to send command to the running instance of sway. The same commands you would use in the config file are valid here (see sway(5)). For compatibility reasons, you may also issue commands with swaymsg(1) or i3-msg(1) (or even with i3(1), probably).


If -c is not specified, sway will look in several locations for your config file. The suggested location for your config file is ~/.config/sway/config. ~/.sway/config will also work, and the rest of the usual XDG config locations are supported. If no sway config is found, sway will attempt to load an i3 config from all the config locations i3 supports. Sway looks for a config file in a fallback directory as a last resort, which is /etc/sway/ by default. A standard configuration file is installed at this location. If still nothing is found, you will receive an error.

To write your own config, it’s suggested that you copy the default config file to the location of your choosing and start there.

For information on the config file format, see sway(5).


The following environment variables have an effect on sway:


Specifies the name of the cursor theme to use.


Specifies the size of the cursor to use.


Specifies the path to the sway IPC socket.


Specifies the device to use in DRM mode.


Set 1 to force EGL clients to use shared memory.


Number of fake outputs to use when running in X11 mode.


Set to 0 to disable Xwayland support.


Set to 1 to force libinput (even in X11 mode).


Configures the keyboard repeat delay.


Configures the keyboard repeat rate.


Configures the xkb keyboard settings. See xkeyboard-config(7).


Maintained by Drew DeVault <sir@cmpwn.com>, who is assisted by other open source contributors. For more information about sway development, see https://github.com/SirCmpwn/sway.

See Also

sway(5) swaymsg(1) swaygrab(1) sway-input(5) sway-bar(5)

Referenced By