Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

1. X11 is definitely maintained, unless you are thinking of XFree86. Xorg's last release 2 weeks ago. Many LTS distros containing it are preparing releases with it _right now_ and they will also be supporting it for at least one decade, probably way more. I would bet that Wayland will become unsupported way before (at least some implementation of) X11 does.

2. This entire article is about avoiding the Gnome private API. The only other alternative, the XDG/portal API, uses Pipewire. It's literally the only alternative even if you don't use Flatpak.

EDIT: Your "2018" link is also not showing the screencast portal API. And I am not blaming Wayland; I am blaming the distros who switch to it and as a consequence BROKE user programs.



sort by: page size:

Right, and as I said elsewhere, this is a problem with the reference implementation being crusty, not X11. That seems to be the point the speaker is making as well.

Like, I'm fully supportive of having the X server simply manage DRI3 for a bunch of clients and composite the results. That's all well and good.

I'm less supportive of doing this while also removing all support for the other things that the X server provides the ecosystem:

* Unified input/event capturing and forwarding

* Unified screen capturing/recording

* Window management

* Clipboard

* Structured IPC (on top of which you get ICCCM and NetWM)

* Xrdb

* Xprops

* Notions of windows in general (everything's now client-side)

* Fonts

* Drawing APIs

These were all standardized things that users could count on always being available, regardless of which GUI programs they used. Wayland completely punts on these things and defers them to extensions.

Before you ask, I've already seen the "Wayland is a protocol; these are all extensions" song and dance routine. That's a cop-out. Dropping these things means that there will now be multiple incompatible implementations of the same concept, and no way to mix-and-match them because they now all have to be built into the same process that does your window management. Wayland implementations completely destroy this digital commons, for no apparent reason or gain for the users. The only people I see potentially benefiting from this are full-fledged DEs who can leverage their compositors' incompatible implementations to enact a form of lock-in (i.e. your GNOME programs are no longer guaranteed to run in KDE, and vice versa). So, why do this?


Also, even the limited X11 support which there currently is under Wayland will probably go the way of the dodo because it involves about the same amount of code as supporting X11 natively. For example, it requires every Wayland compositor to be a X window manager with all the complexity that implies, plus running a full hardware-accelerated X server and the OpenGL driver support for that. I can't imagine the desktop environments and distros who are so keen on dropping legacy features like X and support for 32-bit apps will keep all that code around for long.

Once the integrated X support is gone you can't just replace it with a standalone X server of the sort that's available on OSes like Windows and Mac OS X either - by design, the standard Wayland API doesn't provide the functionality required to run X (or Windows) apps. In particular, it provides no way to set or get the absolute position of top-level windows, which apps on those platforms need to support things like menus. In a few years time, I can easily see modern Linux becoming the only current desktop OS that cannot run X apps.


Wayland is still customizable, and x11 isn't going away. If you want to trade in security and maintenance for features and capabilities, nobody will try to stop you. In that sense, distributions still don't hold much power over the user besides what they present as default.

> The fact that the same organization hosts flatpack but has not vision of how to use the capability model for Wayland really poses questions on the vision.

I disagree, and I'm a staunch GNOME skeptic myself. Flatpak and Wayland were both built as extensible systems from the start, and GNOME's implementation of both technologies is just one interpretation of the protocol. KDE is a good mirror example; their Wayland implementation exposes many features completely unavailable on x11, and their Flatpak permissions are integrated right in the Settings app.

Personally I don't like GNOME's approach to the desktop anymore, and I refuse to defend most of their more opinionated decisions. Those choices have a minimal impact on desktop Linux outside of GNOME though, and it more feels like Red Hat is displacing the amount of work put into keeping legacy systems alive.


As a developer, we've had to tell users to switch to X11 to use certain features that are unsupported on Wayland (related to screensharing), so I'd disagree that these things are hidden from end users. Wayland is fine for the everyday use case but there's a lot of software out there that is built on tools like xev and xprop that have been part of the ecosystem for decades.

I used to be a Wayland maximalist and have somewhat given up. X11 works just fine. The theoretical security benefits haven't really been realized and the incompatibility inside of the ecosystem due to the aggressive "out of scope" response by the Wayland team massively killed my enthusiasm. All it has done is cement the Gnome monopoly because instead of general-purpose desktop tools, you now mostly have Gnome shell (or KDE) extensions for everything and all other desktops are left out.

X11 is actually not really difficult to maintain. There is just no corporate funding anymore. Wayland is designed to be used in car entertainment systems. At least this is where most of the funding is coming from. As such it is completely unsuitable for any desktop use and has had zero community mind share in that space for a very long time.

OK then, if Wayland is meant for closed and user-hostile platforms, why is it being marketed as a X11 replacement? Why is there a constant FUD-included push to dissmis Xorg in favor of Wayland compositors?

Wayland is at best a work in progress.

And if you consider that they made Wayland default on GNOME to force adoption and users usually go to Internet seeking for advice on how to switch back to X11 on GNOME, we will probably wait a long time for Wayland happen.


"why not let me continue to use X11?"

You CAN continue to use X11. There just isn't much point for most applications especially since XWayland lets you run X11 applications in a Wayland session. Wayland is more efficient than X11. Phoronix recently did benchmarks with games in both and Gnome's and KDE's Wayland sessions outperformed the Xorg session while using less power even though those applications were using XWayland.

"Why not just integrate Weston X11 backend into Xorg and then let application developers to drop support for X11 completely, while letting me keep using X11?"

That isn't how any of this works. Weston's X11 backend, just like the X11 backend of all DEs, relies on Xorg. There's nothing worthwhile from a Weston's X11 backend to implement into Xorg.

"Do we need an IPv4 vs IPv6 battle again?"

I mean the same people who worked on Xorg work on Wayland.They didn't come up with it for no reason. X is a protocol from 1983 and has been on version 11 since 1987. It predates GPUs, OpenGL, compositors, and multi-core desktop CPUs. They actually explain the rationale behind Wayland and what's wrong with X11 in the Wayland FAQ.

https://wayland.freedesktop.org/faq.html

If you look at the ideas that were drafted for X12, you can see that Wayland is pretty in line with it. https://www.x.org/wiki/Development/X12/?action=diff

"Moreover, those «program X uses Wayland, but bla-bla-bla... set this environment variable to use X11 backend» are frustrating."

I don't know how else you would like that work.


This was just in response to Wayland being 'bloat' which is factually wrong.

Also, X11 did not disappear over night so I don't get all that complaining. I'd wager X11 will remain a viable display server for several years. The only distro discussing removal of X11 seems to be Fedora at the moment, and they where always on the bleeding edge so no surprises there.


I use X11 because I wrote a terrible usermode hack a decade ago for a niche (<2000 units) piece of hardware that gives incorrect EDID information and needs a handshake to turn itself on, and haven't tried to port my hack to the post-kms world yet. It is the definition of a legacy hack, and one I'm hoping to rid my systems of the second I get a decent vacation.

I've used Wayland before; it's great. Most people aren't gamers; everything PCSX2 wants to do is something that 99% of people do not care about; for the majority non-gamer software, allowing a window to manage absolute position is pointless, or even bad. Apps shouldn't be able to force CSD if the user doesn't want it; GNOME is respecting user preference (and that's not a Wayland thing). Even so, it still works with XWayland. For Wayland users, there is no service disruption. Aside from people who dislike XWayland, anyway.

Proprietary NVIDIA drivers being broken is an NVIDIA thing. Swapchains causing segfaults happened any time you used direct rendering from like 470 to 525, even on X11. They don't make great Linux drivers.


The fundamental problem is this kind of stuff is hard work and to a first approximation, nobody wants to do it. So if the X11 core developers and the Wayland developers (who are generally the same people) want to do it their way, and their way is better than nothing, we kind of have to deal with their way, don't we?

I mean, I can run X11 as long as possible, but sooner or later, I'm probably going to have to deal with Wayland. Especially since I'm also not willing to consider Mac because I've suffered enough, and Windows 11 looks like it might piss me off enough to go back to an opensource desktop.

Alternatives probably look like borrowing from other projects that have managed to wrangle things. Android doesn't use X or Wayland, afaik, but I don't know that it makes a good base for a desktop. I believe ChromeOS uses X11 (EDIT: I'm probably wrong, looks like they use Wayland) and their own window management etc, that doesn't help if you don't like X11/Wayland.

Otherwise, maybe it's possible to build on top of Windows apis. There's NDISWrapper, maybe someome crazy could build something to use GPU drivers for Windows, and run wine or something. If you look around, you'll see articles about how the portable executable file format for Linux GUIs is windows PE, and it sort of makes sense, a little. That'd be a big transition in expectations though.


My problem with Wayland is that it is (or at least seem to be) so much close in respect to X11. Linux is not just great because the code is open source, but also because the whole ecosystem is open.

This meant that X11 was open to applications to interact with it and implement functionalities that otherwise X11 didn't offer. Also, X11 allowed functionality to be implemented by multiple, small programs with one purpose: window manager, compositor, screen recorder, screen locker, screensaver daemon, clipboard manager, etc.

Wayland is closed in the sense that all the functionality needs to be incorporated in the compositor, since otherwise the protocol lacks of the required interfaces for other applications to communicate.

Sure, from a security/privacy prospective it's good that any application can't see or interact with the content of other windows. But, we are not on macOS or Windows! Us, and with us I mean us Linux users, trust 100% the software that we run on our machine, because we trust the open source community! Thus I don't care if any application may access the screen, because I only run trusted software.

I prefer that an application may do so, since by doing so it can implement functionalities that are not possible on proprietary operating systems! This to me means being open, not just having the code available, but also being open for interaction between any piece of software on the computer.

To me it seems that Linux is going into a wrong direction because it makes assumptions that make sense only in the context of proprietary operating systems like macOS/Windows. We choose to ditch these systems for an open OS not to have these issues! I don't want to have the stupidity of these OS ported on Linux...


X11 will stop working if things stop supporting it.

Stuff might eventually decide to render directly to Wayland only APIs or something.

I'm actually not a very big Wayland fan, I prefer the single implementation model rather than all the different implementations of Wayland.

But I'd rather have just only the Wayland fragmentation mess, instead of the Wayland mess plus also X11, so I'm glad Pi OS and Ubuntu(Right now the only distros I pay much attention to) have switched.


It's going to be a pain-point for a while. I invite you to look on the bright side, though; the past 10 years of Wayland was as bad as it will ever get. We live in wonderful times, where Nvidia/Wayland setups are actually stable; this is stuff people thought would never get fixed 10 years ago, but now we're starting to see the light at the end of the tunnel. There's still work to do, but I think we're passing the point where Wayland has more features than it lacks.

x11 has a place in my heart, I loved many of it's apps (shoutouts to xsnow) and cherished the wildly bloated featureset. But damn, it was broken. MacOS had a pretty terrible compositor for a while, but once you booted up Quartz with double-buffer V-sync (imagine, back in 2005) you would already know x11 was finished. Wayland was the inevitably long-winded response from the Open Source community, and while it languished for a long time it's finally quite usable.

Nobody is going to stop you from using x11, or maintaining it yourself if it comes down to it. The philosophy of the matter is decided, though; smaller featuresets are more secure and easier to implement. Especially since the advent of smartphones, I feel like the idea of an x11-native desktop metaphor has been nonsense. Yes, the GNOME pundits push this point pretty extremely, but there's a kernel of truth to it. We really do need more flexible desktop architectures if we want Linux to be a commercial-quality product. x11 is holding it back.


No one wants to. Wayland is the successor to X11, X devs now work on Wayland. Gnome has first party support for Wayland because the same devs also work on Gnome and Red hat.

The inconvenient truth is they are working towards a cohesive desktop experience, even supporting mobile. X11 will still be here, but you can't blame the devs for wanting to move on.

Operating systems should be designed for all humans, not just programmers. Gnome seems to be the only DE that cares about accessibility. All of your settings and extensions mean nothing to someone who needs all of their apps to work with a screen reader.

This article and these comments suck. No one wants to contribute code, just opinions. Reminds me of the systemd FUD.

You can fork, hack, make your case with Wayland, maybe it gets merged, maybe you just maintain your own fork. These criticisms by people who aren't going to contribute anyway are getting tired.


Fact is that Xorg is more or less effectively abandoned, so yes, while distributions don't deprecate them yet because there's still a lot of places where X11 is required this is where it is going.

Hmm, I guess you should let Fedora know that GTK+ and Qt don't support Wayland given they ship with Wayland by default and these... just work.


>The Wayland architecture does not give me a choice in my screenshot, video recording, and remote desktop tool

Yes it does. Use the screenshot, screencast and remote desktop XDG portals for that. It's understandable you're confused because the X11 way was to try to jam everything into X extensions whether it made sense or not. The overall trend lately is to move APIs into other components (XDG portals, pipewire, DBus, systemd, etc.)


>Does Wayland do anything better than Xorg?

Nitpick: This is not a meaningful comparison. Wayland is a wire protocol. Xorg is a display server, and the wire protocol it implements is called X11. There are several other display servers that implement the Wayland protocol. Some of these display servers do support those core features, and some of them don't (yet). It depends on which one you're using. The display server used by GNOME should support those features.

>What is Wayland's reason for existing?

From the website [0]:

>Wayland is intended as a simpler replacement for X, easier to develop and maintain.

[0] https://wayland.freedesktop.org/

next

Legal | privacy