News for hackers. Stuff that matters.
Re:RubyWM – an X11 window manager in pure Ruby by zokier on Monday January 22, 2024 @01:30PM (#39093291)
> I think if I was to do a Waylabd compositor, a first step would be to put things like window management beyond an IPC boundary, just like with X.

Afaik river does something in that direction https://github.com/riverwm/river

> Dynamic layouts generated by external, user-written executables. A default rivertile layout generator is provided.

> Scriptable configuration and control through a custom Wayland protocol and separate riverctl binary implementing it.

Re:RubyWM – an X11 window manager in pure Ruby by vidarh on Monday January 22, 2024 @02:59PM (#39094583)
i3wm, bspwm, etc, and many others have provided APIs like that "forever". The problem is that they're async and sit "besides" or "after" the actual window management.

E.g. one of the things I disliked about bspwm was that while I could get a feed of events and act on them, I couldn't intercept and modify or reject requests, so e.g. when a new window opened, bspwm would place it, and issue an event, and before my script could reconfigure the window it'd already be visible, so to get a floating desktop the way I wanted I ended up with windows flashing up in one location and then moving.

Put another way: The plethora of Wayland compositors is a strong demonstration of how these compositors don't give sufficient control via their external APIs, or people would write window managers for one or more of those compositors instead of writing more compositors.