Way Cooler

Gitter Crates.io Build Status License

Way Cooler is a customizable tiling window manager written in Rust for Wayland and configurable using Lua.

It is heavily inspired by the tiling and extensibility of both i3 and awesome.

While Lua is used for the configuration, like awesome, extensions for Way Cooler are implemented as totally separate client programs using D-Bus.

This means that you can use virtually any language to extend the window manager, with much better guarantees about interoperability between extensions.

Development

Way Cooler is currently in alpha. The core features have been added and it is in a usable state, but more work is needed to make it user friendly. Here's an example of what Way Cooler looks like today:

Motivation

We wanted to get experience with Rust and we found current X11 window managers to not have all the features we wanted.

Currently there are very few fully-featured tiling window managers in the Wayland ecosystem, as most of the effort has been porting Gnome and KDE over. Although Wayland is still in early-stage development and is not backwards compatible with existing X11 tools, we wanted to put our stake in and provide for current tiling window manager users in the future.

Current Features

Planned Features

Follow the development of these features in our [issues section] or checkout our contribution guidelines if you want to help out.

Installation

On the AUR

@vinipsmaker was kind enough to provide AUR packages:

way-cooler

way-cooler-git

Build from source

You will need the following dependencies installed on your machine to install Way Cooler: - Wayland * Including the server and client libraries - wlc * Installation instructions can be found on their github page - Weston (optional) * The init file defaults to using weston-terminal as the default terminal emulator - Cargo * The package manager / build system used by Rust - Cairo

Finally, to install Way Cooler simply run the following cargo command:

shell cargo install way-cooler

You can try it out while running in an X environment, or switch to a TTY and run it as a standalone

Init File

All keyboard shortcuts (except the command to exit Way Cooler) are configurable through the init file. The recommended strategy is to copy the default configuration file to $XDG_CONFIG_HOME/way-cooler/init.lua and edit from there.

Contributors

Way Cooler was started by @Timidger and @SnirkImmington, but these fine people have helped us:

And of course, thanks to the Rust community and the developers of [wlc].

Contributing

Check out Contributing for more information.

If you find bugs or have questions about the code, please [submit an issue] or ping us on gitter.