Way Cooler is a customizable tiling window manager written in Rust for Wayland.
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:
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.
We take a lot of inspiration from current window managers (namely i3 and awesome) but our goal is to exist as a unique alternative.
Follow the development of these features in our [issues section] or checkout our contribution guidelines if you want to help out.
If you would like to try out Way Cooler before properly installing it, then you can use the following docker command:
bash
docker run --net=host --env="DISPLAY" --volume="$HOME/.Xauthority:/root/.Xauthority:rw" timidger/way-cooler
This allows you try out the window manager without having to install anything except Docker.
@vinipsmaker was kind enough to provide AUR packages:
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
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
All keyboard shortcuts (except the command to exit Way Cooler) are configurable through the init file. The recommended strategy is to copy config/init.lua
to $HOME/.config/way-cooler/init.lua
and edit from there. The default keybindings are:
Alt+Enter
Launches a terminal defined by the way_cooler.terminal
Alt+d
Opens dmenu
to launch a programAlt+p
Sends expressions to be executed directly by the Lua threadAlt+Shift+Esc
Closes Way CoolerAlt+v
Makes a new sub-container with a vertical layoutAlt+h
Makes a new sub-container with a horizontal layoutAlt+<arrow-key>
Switches focus to a window in that directionAlt+Shift+<arrow-key>
Moves active container in that directionAlt+<number-key>
Switches the current workspaceAlt+shift+<number-key>
Moves the focused container to another workspaceAlt+shift+space
Make a window floatingAlt+space
Change focus between tiled and floating windowsWay Cooler was started by @Timidger and @SnirkImmington, but these fine people have helped us:
PetGraph
to use StableGraph
And of course, thanks to the Rust community and the developers of [wlc].
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.