Introducing Miracle-WM: A New Tiling Wayland Compositor Built on Mir

Fans of tiling window managers like i3, Sway, and Hyprland should take note of a new option named Miracle-WM.

Created by Canonical engineer Matthew Kosarek, Miracle-WM is a Wayland compositor that finds its roots in Mir.

For those with a long memory, Mir started as an X replacement. The intention was for it to become the primary display server in Ubuntu desktop taking the place of Wayland. Nevertheless, due to controversy and a shift in Canonical’s plans for Ubuntu, the scope and purpose of Mir underwent changes.

The development of Mir persisted and throughout its targeted development for Ubuntu’s IoT customers, matured. As of today, it enjoys its role as a Wayland compositor, and Miracle-WM takes advantage of its capabilities to offer a unique tiling window manager experience on Wayland:

Miracle-WM in action on Ubuntu 23.10

Kosarek says “the goal of the project” is to provide a tiling window manager that does everything people need whilst “enabling flashier graphics for those of us who prefer a desktop full of smooth transitions and colors”, akin to swayfx somewhat.

— sounds like a dream to me!

For its first release Miracle-WM supports common tiling window placement, including resizing, gaps, and full-screen windows, keyboard shortcuts, accommodates panels with exclusion zones, workspaces, and works with multi-monitor setups.

It also supports configuration through a config file (~/.config/miracle-wm.yaml). There you can (currently) set a gap size, define the action key, specify startup apps, override default keybindings, and create your own custom shortcuts.

More configuration options and more WM features are on the roadmap.

Installing miracle-wm in Ubuntu

You can find source-code for Miracle-WM on GitHub, which provides details on how to build it from source — not that you need to.

A miracle-wm Snap package is available which makes it simple to install this window manager in any version of Ubuntu:

sudo snap install miracle-wm --classic

Once installed, logout of the current session and use the session selector (cog icon) at the login screen to select the “Miracle” session. Then proceed to login as normal.

Select ‘Miracle’ from the session menu to use it

Just do not anticipate a lot on your initial login. As with other tiling window managers, you’ll need to set up the aforementioned configuration file to specify the apps to start (e.g., waybar, wofi, swaybg).

In order to provide you with a usable experience on miracle-wm without having to log out and in multiple times, you may want to edit the configuration file and run miracle-wm in a window on your existing desktop:

WAYLAND_DISPLAY=wayland-98 miracle-wm

Miracle-WM is not yet reliable or meant for daily use. Kosarek has introduced the project with the goal of getting people to try it out, report issues, and contribute fixes. He is also open to suggestions for packaging formats other than snaps.

The first stable release, v1.0.0, is tentatively planned for July 2024.

If you give this a go be sure to come back and let me know what you think of it, how well it runs, and what kind of features you’d like to see it gain in the future.


Posted

in

, , ,

by

Tags: