| ▲ | preisschild 4 hours ago | |||||||
You can do that already with libraries such as wlroots or Smithay | ||||||||
| ▲ | MarsIronPI 4 hours ago | parent | next [-] | |||||||
That's not the same thing. It's way easier to write an X11 window manager than to write a Wayland compositor, even with something like wlroots, because the window manager can speak the same protocol that clients speak, and it runs as a separate process. As a concrete example, Emacs' EXWM package works by implementing an X11 client library in Emacs Lisp, then using it to talk to the X server (which is a separate process, so this works fine) and telling it how to position windows. Whereas on Wayland, this is not possible without re-implementing a standalone compositor process, because otherwise architecturally it doesn't work. Emacs can't both do the drawing and be drawn. | ||||||||
| ||||||||
| ▲ | yjftsjthsd-h 4 hours ago | parent | prev | next [-] | |||||||
No, that still requires you to make the whole thing, you just get help. For instance, I've run into a problem where I try some great new compositor that uses wlroots, and even though wlroots has good support for keyboard layouts I can't actually set the layout because the compositor hasn't wired up that functionality. | ||||||||
| ▲ | jaen 4 hours ago | parent | prev | next [-] | |||||||
The article already addresses that... It's not easy and the major compositors (Gnome, KDE) are NOT wlroots based, making this point mostly moot anyway. This protocol at least has a chance of using a custom WM with an advanced compositor (which wlroots is not). | ||||||||
| ▲ | jauntywundrkind 3 hours ago | parent | prev [-] | |||||||
Especially with LLMs, the cost here is down significantly. People also drastically over-idealize what making an X window manager entailed: sure X had it's compositor, but you had to build so so much yourself. I'm glad River is trying to create a bigger base here; this is way cool. And it sort of proves the value of Wayland: someone can just go do that. Someone can just make a generic compositor/display-server now, with their own new architecture and plugin system, and it'll just work with existing apps. We were so locked in to such a narrow limited system, with it's own parallel abstraction layer to what the kernel now offers (that didn't exist when X was created). It's amazing that we have a chance for innovation and improvement now. The kernel as a stable base of the pyramid, wlroots/sway as a next layer up, and now River as a higher layer still for folks to experiment and create with. This could not be going better, and there's so much more freedom and possibility; this is such a great engine for iteration and improvement. | ||||||||