Hacker News new | ask | show | jobs
by acgkmopvvgvmgv 2064 days ago
Maybe I have reading comprehension problems but this article sounds so conflicting and presumptuous. Is it a sales pitch or not? If it is, even when it says it isn't, I would start by looking at Arcan's bus factor, and what refactoring and architectural changes were necessary along the years.

Having no expertise in this field I have no patience for people who write in this style but never got involved in the process. But if they did then I would be more interested in reading why their proposal was better and what can be done now in the living code. Also IIUC protocols are exactly that, places to experiment and learn from mistakes until they get stable and anyone can propose them.

There are many developers who could write a good technical solution but it's the ones who can deal with the ugly politics that make a real difference. There's a phrase about that there but as always if you don't send code your opinion won't do any good.

2 comments

> Maybe I have reading comprehension problems...

I was feeling the same! I came away from this article even more confused as to what's been going on.

I used to be a maintainer on Xfce (though it's been a decade since I was active), and I've been worried (as a user) about the "upgrade path". Porting (if you can call it that) from X11 desktop environment to Wayland compositor (etc.) is a huge step to take, it seems, and Xfce's current core team doesn't seem interested in going in that direction (I don't blame them).

As a user, I want to just keep using Xfce until the heat death of the universe. As someone who might get involved in Xfce development again, I worry that any work I'd be doing on the X11-based things might be wasted time in the long run.

I seem to recall there was some hacks to get a legacy X11 wm to manage windows for a wayland environment but they were unstable or not maintained.

Googling around: xweston and/or xwlnest ?

I wouldn't do that. Only move to Wayland when there is a real path for what you want and need. And it does it without hacks.

About porting I would look at what MATE is doing or at the code of Wayland shells, protocols or things like Waybar at GitHub. You don't have to write an entire compositor if you don't want to. Even better get in touch with the people who know what they are talking about, I think they have a wayland IRC channel.

There are a lot of unmaintained WMs that work well and are amusing for historical value or retro computing, and probably some of them have a small number of real world users too. I like the idea of a compatibilty layer for those.

Maybe not for a big project with ongoing development. But as a last resort to run some cool stuff.

It seems it would be difficult to do that without combining both protocols into one server. (This is not quite what xwayland, xweston, xwlnest do. They run the server X out of process and can't manage wayland windows because they don't know anything about the internal wayland state)

To that point, you would have to decide if it's more worth it to fork xwayland and merge with an existing wayland compositor, or to fork xfree86 and add wayland.

I bet you could achieve it with three layers. First, run a "top level" Wayland compositor. Then, use XWayland to run an X session (with your favorite window manager). Then, use Weston's X client mode to run Wayland applications inside the X session.

As silly as that sounds, it might actually be a good solution. Red Hat gets to push their shiny new display server protocol, and I still get to make screen recordings and use my favorite window manager. I wonder how well it works in practice...

Here's the thing about Xwayland: Xwayland is Xorg. If you look in the xorg code base, you will find that it's separated into components called DDX and DIX. DIX (Device-Independent X) handles protocol and server state; DDX (Device-Dependent X) does the drawing. One of the back ends in the DDX code is for Wayland; when you compile Xorg with just this back end, you get Xwayland.

So if Xorg gets abandoned -- oops! There goes Xwayland as well. I do believe that this was the plan all along: keep Xwayland around as a solution for "legacy applications" for a while, then stop supporting X altogether to make it less attractive as a back end for new applications and toolkits.

I love XFCE! Thanks for your work! I love that it gets out of the way and lets me work.
It is a compromise for how Xorg and Wayland can have a shared graphics backend that improves both sides and the part that the Xorg maintainer wants gone can go away.

Arcan has had its own fork of Xorg for many years, as well as a Wayland implementation. Nothing here will change that trajectory.

The library mentioned is about ~2kloc, decoupled from the rest of the project (100+kloc) and the relevant subset has not changed significantly for several years.