Wayland compositor for AwesomeWM
There is a compliation issue with Rust 1.30+ with the aho-corasick dependency for Way Cooler that uses wlc.
This release fixes that by updating the dependencies.
init.lua
file. No longer accepts a number and instead should be a string. This is backwards incompatible.Thanks to @timo-schmid for providing the patch for this release.
This is the final release of Way Cooler that will utilize wlc. From this point forward, consider rust-wlc abandoned.
Way Cooler is switching to wlroots. You can follow the porting process on our wlroots-rs bindings repo. Once those bindings are complete, Way Cooler will switch to wlroots for v0.8.0. Once the move is complete, work will begin again on making Way Cooler function as a drop-in replacement for AwesomeWM.
To see all changes in this release, consult this milestone listing.
Note that all of the extension programs (wc-bg
, wc-lock
, and wc-grab
) have backward incompatible changes in this release. Previous versions will not work as expected!
The following changes take effect in this release:
wc-bg
(originally way-cooler-bg
).sway-bg
on Way Cooler and wc-bg
on Sway.package.path
(https://github.com/way-cooler/way-cooler/pull/352)Added the no-op command, this allows the user to register a keybinding but not yet make it do anything. #363
This version introduces two new features: The ability to unbind keybindings and to allow passthrough for keybindings. See #345 for more details.
XDG_RUNTIME_DIR
doesn't exist, an error explaining that is logged. #310Screen scraping doesn't scrape active output (needs v0.2 of wc-grab
) #349
Nested sub containers do not render borders properly when using new container command when a new container can't be spawned (e.g when there's one child) #344
Popup windows are no longer sized incorrectly #337
Popup windows should now be always centered on the screen correctly #218
Switching containers to a new workspace will no longer cause it to be invisible on a workspace that is not active. If it is moved to an inactive workspace, that one is made visible instead #333
Floating windows now update their focused colour correctly #320
Floating sub windows (e.g right click menus) no longer spawn with borders #319
Floating windows (such as dmenu) are no longer hidden when spawned in a tabbed/stacked container #317
Nested Tabbed/Stacked borders are now rendered correctly #313
This has been, by far, the biggest release for Way Cooler. I'd lie if I said this was a result of feature creep. There were actually features I removed in favour of a later release (namely #273 and #138) just so I could get this one out of the door.
Way Cooler has come a long way. If you want to learn more about what has changed please read this release, the linked issues, the up-to-date README, look at our fancy new website, and finally look at the fancy pictures I have attached that I took while developing these features.
If you'd like to download Way Cooler, the best way is through the download page on the site: http://way-cooler.org/download
Going forward, more attention is going to be paid to the Lua and D-Bus API. There's going to be some huge changes, but there will be stabilization happening not soon after that in order to encourage the development of client programs for Way Cooler. Once that is done, I will finally get started on writing the last really needed client program for Way Cooler: the top bar.
#201 #285
Contrary to popular belief, you can use Wayland with redshift :wink:. Way Cooler now works with a patched version of redshift. To specify for it to work, simply specify redshift -m wayland
and it will work just as it did before.
This is the same way Sway does it, and if you want this to become mainstream I suggest talking to the maintainers of redshift in order to get this merged into upstream.
#297 #64 Finally, finally Way Cooler now supports multiple monitors. It doesn't yet support hotplugging, due to a bug in wlc, however if you start Way Cooler with multiple monitors plugged in they will properly be assigned and used.
#171
There's a new program in the growing repository for Way Cooler, wc-grab. This is a fairly simple program that emulates scrot somewhat. It takes a screenshot of the current active output and dumps it to a file. By default, it dumps it to screenshot.png
, but that can be controlled with the -o
flag.
See wc-grab --help
for more information.
#279 Way Cooler now supports lock screens as of #279. In order to lock the screen, in the Lua file you simply specify which program should be used. When the appropriate keybinding is pressed, Way Cooler locks down and puts the client program front and center. Once the client program closes (either gracefully or not), control is returned to the user.
I have made wc-lock as a simple implementation of a lock screen for Way Cooler. It uses PAM to authenticate, so once the program is spawned the user simply has to type in their password and hit enter in order to return to the normal operation.
#299 Related to lock screen support, basic modes have been added to Way Cooler. There are three so far:
For more information, see the attached issue #299 .
#301 #163 Way Cooler now has tabbed/stacked tiling support, just like i3/sway does. This is the last i3-related feature that is plan to be added. If more would like to be added, I suggest either sending a patch or letting your voice heard why a certain feature should be ported as well.
Related to tabbed/stacked tiling, nested containers now have borders drawn around them, making it much easier to see where nested containers are without guessing from the way the windows are laid out.
mouse
. This will be expanded later to provide more options for the mouse, including libinput configuration once #189 is addressed.Sending containers across workspaces will no longer cause a duplicate active number (and a crash) #267
mpv
with the close window command.Backwards incompatible changes
spawn_dmenu
and spawn_terminal
command, please use util.program.spawn_once
instead.This release expands the graphical capabilities of Way Cooler, adding core features such as borders and bar support while also paving the way for more advanced features such as notifications.
This is also the first release with a binary attached. It is an x86_64 ready-to-run version of Way Cooler statically linked to the latest wlc release (0.0.8).
border_size
it's way_cooler.windows = { borders = { size = 20 } }
, for example).config
object has been merged into way_cooler
.polybar
and lemonbar
x11_bar
variable under the programs
category to the name of the window that the bar spawns (e.g, bar
when running lemonbar as lemonbar -n "bar"
ActiveWorkspace
command to get the name of the current workspace.mod+f
FullScreen
SetPointerPos
)GrabAtCorner
)Alt
, instead of the previous Ctrl
termite
, weston-terminal
, etc) should no longer have blurry text.StableGraph
of Petgraph, which should improve performance and reliability.