That is the thing with Wayland, it is much harder to create a window manager for Wayland. IIRC, fvwm decided not to create a Wayland version due to the difficulty.
When Wayland replacing X, lots of cool window managers and mini applications will be gone.
XMonad is an an amazing window manager (WM) made by a bunch of nerds who care a whole lot about a niche problem. Software by caring nerds is my favorite software as a user.
I really hope it makes the jump to Wayland. I've used XMonad for more than a decade and it's still my favorite WM.
XMonad really let me forget about managing windows---I never have to resize a window or remember where I put a window. XMonad handles the arranging and resizing and floating for me. There's a nice layout for small screens that will zoom your active window[0]. You can cobble your desktop together into whatever makes you happiest: Active corners. ScratchPads. So much in XMonad Contrib[1].
Since I'm not the right person to help with porting to Wayland, I'm giving money via the GitHub sponsorship page[2].
I check in on discourse from time to time: progress looks slow. The person/people they need are hard to come by.
I used to be on XMonad years ago but the community seemed to be pigheaded about NEVER porting to Wayland so I abandoned it for Sway and never looked back. Was fun learning Haskell to write config but otherwise life is way easier with other WMs.
I'm surprised that the Xmonad project is/was willing to pay someone. Does anyone know whether there was a single benefactor, or where the money was coming from, and why?
(Incidentally, I love the way that my Xmonad setup works, even though I don't know Haskell. I tried using an i3wm setup at work for maybe a year, but every evening coming back to Xmonad on my personal laptop felt like a boost of agility. I guess, if I were wealthy and wanted to move to Wayland, I would seriously consider either doing the work myself or paying someone to.)
I know the gentleman who runs the Distrotube channel on YouTube is/was an Xmonad user and it would be great if he made the call for help on his show to reach a wider audience.
I tried a few tiling WMs over the years, but xmonad was the only one that seemed to take desktop environment support seriously. thankfully by the time the wayland switch broke xmonad I had cosmic available to move to.
Does anyone know of a Wayland WM/compositor that does multi-screen like XMonad? Preferably out of the box but I'll take configurable.
For those unaware, though I doubt you're reading this thread if so, I want n desktops that are shared between all screens, not desktops _assigned_ to particular screens. If I summon a desktop on screen 1 and it's currently displayed on screen 2, they should swap.
Ideally also does layouts kind of like xmonad too, not "here's a tiling tree structure and a bunch of commands to manually manage it".
> If I summon a desktop on screen 1 and it's currently displayed on screen 2, they should swap.
At least i3's (and I imagine sway's) config is sufficiently flexible for that. Here's a shell function that brings the workspace you specify to your current output:
> If I summon a desktop on screen 1 and it's currently displayed on screen 2, they should swap.
This is due to a limitation of X11 where a window can't be in two places at once. In theory, Wayland compositors can duplicate the desktop (at the cost of, like, not letting applications know their own window coordinates which seems pretty bad).
> paying someone to work on a port of XMonad to Wayland, since none of us is up to the task
This is such a crazy mentality to me, coming from game development, where you can just go to a random 22yo kid's desk, ask them "do you want to port this game to the Nintendo Switch?" and they'll go "hell yeah" and do it in a few months, despite never having programmed for the device before.
You can just learn to do new things. By all accounts the Wayland protocol is simpler than X11, and you've already done the majority of the work. It's just a matter of adding a new backend. People do that all the time when they port a program to the web, a game to a new platform, or when they add a new architecture to a compiler.
21 comments
[ 4.4 ms ] story [ 47.5 ms ] threadWhen Wayland replacing X, lots of cool window managers and mini applications will be gone.
See: https://gist.github.com/ThomasAdam/5377540b3025f7f04735d96ee...
I think the closest thing that could get most of the way there is https://github.com/domferr/tilingshell/
I really hope it makes the jump to Wayland. I've used XMonad for more than a decade and it's still my favorite WM.
XMonad really let me forget about managing windows---I never have to resize a window or remember where I put a window. XMonad handles the arranging and resizing and floating for me. There's a nice layout for small screens that will zoom your active window[0]. You can cobble your desktop together into whatever makes you happiest: Active corners. ScratchPads. So much in XMonad Contrib[1].
Since I'm not the right person to help with porting to Wayland, I'm giving money via the GitHub sponsorship page[2].
I check in on discourse from time to time: progress looks slow. The person/people they need are hard to come by.
[0]: <https://xmonad.github.io/xmonad-docs/xmonad-contrib/XMonad-L...>
[1]: <https://hackage.haskell.org/package/xmonad-contrib>
[2]: <https://github.com/sponsors/xmonad>
(Incidentally, I love the way that my Xmonad setup works, even though I don't know Haskell. I tried using an i3wm setup at work for maybe a year, but every evening coming back to Xmonad on my personal laptop felt like a boost of agility. I guess, if I were wealthy and wanted to move to Wayland, I would seriously consider either doing the work myself or paying someone to.)
Wouldn't be lightweight or ..say.. easily GPU accelerated, but should work with some plumbing effort.
That doesn't mean anything. xmonad is not broken afaik, still in use everywhere and wayland, which is just a protocol, has no power over it.
For those unaware, though I doubt you're reading this thread if so, I want n desktops that are shared between all screens, not desktops _assigned_ to particular screens. If I summon a desktop on screen 1 and it's currently displayed on screen 2, they should swap.
Ideally also does layouts kind of like xmonad too, not "here's a tiling tree structure and a bunch of commands to manually manage it".
At least i3's (and I imagine sway's) config is sufficiently flexible for that. Here's a shell function that brings the workspace you specify to your current output:
You can turn that into an executable and have it be called through a keybinding.https://docs.qtile.org/en/stable/manual/ref/layouts.html#mon...
I haven't managed to get it quite right though. For example Sway doesn't seem to be willing to move a workspace to a different monitor if it is empty.
This is due to a limitation of X11 where a window can't be in two places at once. In theory, Wayland compositors can duplicate the desktop (at the cost of, like, not letting applications know their own window coordinates which seems pretty bad).
This is such a crazy mentality to me, coming from game development, where you can just go to a random 22yo kid's desk, ask them "do you want to port this game to the Nintendo Switch?" and they'll go "hell yeah" and do it in a few months, despite never having programmed for the device before.
You can just learn to do new things. By all accounts the Wayland protocol is simpler than X11, and you've already done the majority of the work. It's just a matter of adding a new backend. People do that all the time when they port a program to the web, a game to a new platform, or when they add a new architecture to a compiler.