i3-compatible Wayland compositor
Go to file
S. Christoffer Eliesen 6750975b9f arrange_windows_r: Round pixels to match reality, fixes calculations.
If the width or height of a container can't be evenly distributed to its
children, then the layout algorithm still thought it got it right (due
to using decimals) which caused a gap of one or more pixels for some
window arrangements.

This is fixed by this patch by first rounding off the width and height
(so that decimals are never introduced) and then adjusting the last
view in a container to fill the remaining pixels (which now is counted
correctly due to the decimals being removed).

Also, due to the way gaps are implemented, an odd sized gap can never be
aligned properly, so just adjust to closest even number.
2015-12-28 14:58:17 +01:00
.ci make install wlc as part of the build 2015-09-04 21:08:44 +02:00
CMake make gdk-pixbuf dependency really optional 2015-12-20 17:37:52 +01:00
common swaybar: fix memory leaks 2015-12-22 17:54:47 +01:00
include swaybar: fix memory leaks 2015-12-22 17:54:47 +01:00
protocols remove archive from git, add *.a to gitignore 2015-12-03 15:52:21 +02:00
sway arrange_windows_r: Round pixels to match reality, fixes calculations. 2015-12-28 14:58:17 +01:00
swaybar Merge pull request #409 from mikkeloscar/bar-airblade-features 2015-12-27 11:10:41 -05:00
swaybg make gdk-pixbuf dependency really optional 2015-12-20 17:37:52 +01:00
swaygrab swaygrab: Fix memory leak when recording videos 2015-12-22 23:47:07 -05:00
swaylock Use SYSCONFDIR as recommended 2015-12-23 12:22:48 +01:00
swaymsg Merge pull request #292 from christophgysin/man 2015-12-05 18:16:45 -05:00
wayland make gdk-pixbuf dependency really optional 2015-12-20 17:37:52 +01:00
.gitignore remove archive from git, add *.a to gitignore 2015-12-03 15:52:21 +02:00
.travis.yml Add clang build to travis 2015-12-23 22:23:27 +01:00
CMakeLists.txt Added include(GNUInstallDirs) 2015-12-23 16:40:28 +01:00
config Add floating_modifier extension to example config 2015-12-11 18:04:27 +01:00
CONTRIBUTING.md Style fixes in swaybg 2015-11-27 16:16:54 -05:00
HACKING.md HACKING.md: Add code overview section. 2015-11-15 22:55:02 +01:00
LICENSE MIT license 2015-08-04 21:31:07 -04:00
README.md Update README 2015-12-27 11:09:28 -05:00
sway.desktop Add Wayland and Xorg session files 2015-08-20 23:12:34 +02:00

sway Donate with fosspay

"SirCmpwn's Wayland window manager" is a work in progress i3-compatible window manager for Wayland. Read the FAQ. Join the IRC channel (#sway on irc.freenode.net).

Rationale

I use i3 on xorg. Wayland is coming, and i3way still has zero lines of source code after two years.

Status

Installation

From Packages

sway is not supported by many distributions yet. Here's a list of packages available for you to install:

For other distros, see this wiki page.

Compiling from Source

Install dependencies:

  • cmake
  • wlc
  • wayland
  • xwayland
  • asciidoc
  • pcre
  • json-c
  • pango *
  • cairo *
  • gdk-pixbuf2 *
  • pam **

*Only required for swaybar, swaybg, and swaylock

**Only required for swaylock

Run these commands:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_SYSCONFDIR=/etc ..
make
sudo make install

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

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

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

Instead of running startx, run sway. You can run sway from within X as well, which is useful for testing.