this post was submitted on 28 Aug 2024
17 points (90.5% liked)

Linux

48129 readers
427 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Okay, Wayland is the future, blah blah.

Would it be possible/make sense to make a Wayland compositor that would emulate a X11 server so a X11 WM could talk to it and be used to manage windows?

I'm just thinking about how we could make sure that the tons of obscure but cool WMs survive the waypocalypse.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 2 months ago (1 children)

We have kind of something like that with XWayland.

Interesting read at topic https://wayland.freedesktop.org/docs/html/ch05.html

An X11 application connects to Xwayland just like it would connect to any X server. Xwayland processes all the X11 requests. On the other end, Xwayland is a Wayland client that connects to the Wayland compositor.

The X11 window manager (XWM) is an integral part of the Wayland compositor. XWM uses the usual X11 window management protocol to manage all X11 windows in Xwayland. Most importantly, XWM acts as a bridge between Xwayland window state and the Wayland compositor's window manager (WWM). This way WWM can manage all windows, both native Wayland and X11 (Xwayland) windows. This is very important for a coherent user experience.

There is also rootless mode.

In rootless mode, each foreign window is a first-class resident among the native windows. Foreign windows are not confined inside a native window but act as if they were native windows. The advantage is that one can freely stack and mix native and foreign windows, which is not possible in rootful mode. The disadvantage is that this mode is harder to implement and fundamental differences in window systems may prevent some things from working. With rootless Xwayland, the Wayland compositor must take the role as the X11 window manager, and one cannot use any other X11 window manager in its place.

That's the toolbox we have right now. To make existing X11 window manager work exactly as before on Wayland would be another level. And why we? It would make Wayland way more complex than it is and if we want to use old software anyway, why do we develop Wayland at all? (The "WE" is not me, i'm speaking for devs.)

Some existing X11 window manager are already working on XWayland (think of Qtile) or are ported over right now. The simple ones could be rewritten from scratch, even if its not exactly the same (think of Sway). There will be some left. But that's okay. Window manager itself are not hugely complex and different from each other, only a few logic and the language differs greatly. We have already lot of variety. It's not like we would leave KDE or Gnome behind.

My opinion: We don't need to make Wayland even more complicated (for Wayland devs and for compositor and app devs), just for a few legacy tools.

[–] [email protected] 3 points 2 months ago

I don't think Qtile works off XWayland. IIRC, it's a proper rewrite using pywlroots.