7461473918
With the following config: set $abc "wayland wayland " set $def "0:0:wayland-seat0" The following command would fail to be executed: swaymsg -- output '$abc' scale 2 swaymsg -- input '$def' repeat_rate 2 The definition `$abc` is replaced with its content, including the quotes, which fails to match real output names. Same for `$def` We now strip quotes early in the output command. The behaviour was inconsistent between config_command() and execute_command(). * config_command() strips quotes before do_var_replacement() and also after, under some conditions. * execute_command() strips them only before. execute_command() is run after receiving swaymsg command hence the failing example mentioned above. Since we now strip quotes in cmd_output and cmd_input we prevent config_command() from stripping them twice. |
||
---|---|---|
.builds | ||
.github/ISSUE_TEMPLATE | ||
assets | ||
client | ||
common | ||
completions | ||
contrib | ||
include | ||
protocols | ||
sway | ||
swaybar | ||
swaymsg | ||
swaynag | ||
.clang-format | ||
.editorconfig | ||
.gitignore | ||
config.in | ||
CONTRIBUTING.md | ||
LICENSE | ||
meson.build | ||
meson_options.txt | ||
README.de.md | ||
README.dk.md | ||
README.es.md | ||
README.fr.md | ||
README.ja.md | ||
README.ko.md | ||
README.md | ||
README.nl.md | ||
README.pl.md | ||
README.pt.md | ||
README.ro.md | ||
README.ru.md | ||
README.uk.md | ||
README.zh-CN.md | ||
README.zh-TW.md | ||
sway.desktop |
sway
English - 日本語 - Français - Українська - Español - Polski - 中文-简体 - Deutsch - Nederlands - Русский - 中文-繁體 - Português - Danish - 한국어 - Română
sway is an i3-compatible Wayland compositor. Read the FAQ. Join the IRC channel (#sway on irc.freenode.net).
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).