A response to the "Boycott Wayland" article

Link to article: gist.github.com/…/9feb7c20257af5dd915e3a9f2d1f227…

This OUTDATED article gets posted all the time. The full story is the guy is a massive FreeBSD fan so he is trying to convince more people to keep on using Xorg because he wants to make sure it isn’t abandoned. Reason for that being that Wayland is built with Linux in mind and would not work under FreeBSD without a lot of effort bwing put in as it uses some Linux-specific components or libraries.

Let’s go through the article point by point:

Wayland is broken by design:
  • A crash in the window manager takes down all running applications: Yes, because the compositor IS the server, window manager AND compositor at the same time.
  • You cannot do a lot of things: What, like allowing Windows to see your keystrokes, which makes developing a keylogger absolutely trivial?
  • There is not /usr/bin/wayland: Yes, because Wayland is a set of protocols, which a bunch of projects can implement as few or as many of, as they see fit, thus avoiding the issue of “unmaintainable mess” that has plagued Xorg for years.
  • It offloads work to the window manager: Again, yes, that’s a part of its structure: do the protocols, then let the compositor implement them. That way, you have multiple implementations running simultaneously that are well integrated with their window managers and thus more efficient and performant. It also means that when a compositor suffers from too much cruft, we can just make a new one, while application developers wouldn’t really have anything to change because if their application works on Wayland, then it works on different compositors (unless it is made specifically for GNOME, or specifically for wlroots, like wlr-randr)

so what works on DE 1, doesn’t necessarily work on DE 2: True, because oftentimes, it doesn’t need to. Not implementing features can lead to a more lean and streamlined software solution. However, sometimes features are necessary and only implemented in some compositors. This usually happens because the universal solution is not ready. KDE are often known to do this with Plasma and KWin.

  • Wayland breaks screen recording applications: Correction: The following screen recording applications were not built to support Wayland (because Wayland is new to them or they just decided not to, or they were either too busy or too irresponsible enough to realise Wayland is coming, and has been for over 10 years. In defence of the devs, they probably wanted to make sure Wayland will become stable enough, but it has been the default even on Debian for many years now, so…

In terms of the applications, I’m not aware of many of them, and for this sort of application, I’m sire alot of work is required to change the graphical backend, so I understood that some smaller projects gave up, but OBS has been working on Wayland for quite a while. Is it perfect? I don’t think so, but back when Brodie Robertson was using Hyprland, he was recording his videos using OBS. This article is quite outdated.

  • Wayland breaks screen sharing applications:

As the update shows, Jitsi now does work on Wayland.

Zoom only seemed to work on gnome, BUT if you open up the Link to the zoom issue and read through the comments, there is clearly a person that clearly states that they changed /etc/os-release from PureOS to debian and it worked for them, all because of some pointless limitations enforced by the Zoom developers. As the person posting the issue states “Currently, the zoom application has put an arbirtrary restriction on screensharing so it ONLY works on GNOME, when the api being used works on all wayland desktops.” Read that again. It’s a pointless restriction put there by the Zoom team because they couldn’t be bothered to test anything non-GNOME.

And the last issue is a problem with the article writer’s own appimage. I don’t know about that one.

  • Wayland breaks automation software

As stated IN YOUR FACE, it is an application that works on X11 only. Yes, Wayland is not made to use such applications, but it doesn’t mean they can’t exist. Every heard of ydotool (remember that name)? Now you have.

Next up, we have 3 issues about GNOME and KDE global menus (1 for GNOME, 2 for KDE). From the little I know about global menus and using these projects, as well as considering that they are both incredibly stable on Wayland and Fedora KDE will be dropping Xorg completely, I think it’s safe to assume these issues have probably been fixed. Please correct me if I’m wrong.

  • Wayland breaks AppImages that don’t ship a special QT plugin: Great! Just ship the plugins then! Problem solved! Also, quote from the article: “However, there is a workaround: “AppImages which ship just the XCB plugin will automatically fallback to running in xwayland mode” (see below).”
  • Wayland breaks Redshift: Once again, a program built for Xorg doesn’t always work on Wayland. Especially if it works with the compositor, like a colour temperature control application, or a wallpaper setter. The article quotes that “Redshift does not support Wayland since it offers no way to adjust the color temperature” which is not true, as proven by Redshift alternatives like Gammastep.
  • Wayland breaks global hotkeys: I present to you: Hyprland (where you can get global hotkeys). Now, it is normally not allowed by design, as a security measure, but Hyprland has not allowed that to stop them from implementing a solution where you can choose keys that will be passed on to the application. Boom, problem solved. Unfortunately, it doesn’t seem to be implemented anywhere else, as far as I know.
  • Wayland does not work for XFCE: Come back to me in late 2024 after XFCE 4.20, which will introduce Wayland support, has been released. Also, wiki.xfce.org/releng/wayland_roadmap
  • Wayland does not work properly on Nvidia Hardware: It keeps on getting closer but is not there yet, or so I’ve heard. Apparently, the issue is with the proprietary drivers, as noveau works well. But I use AMD, so I’m only working off rumours and opinions here.
  • Wayland does not work properly on Intel hardware: Again, I’m using AMD, so I can’t confirm or deny this, but considering the Intel drivers are open source, and I’ve heard about many, many improvements made on the Intel side of things, I think it would be reasonable to assume it has been fixed.

Edit: As multiple Intel users have pointed out in the comments, there seem to be no issues on Wayland with Intel hardware.

  • Wayland prevents GUI applications from running as root: This one has been crossed out as the article writer admits there is a solution
  • Wayland is biased towards Linux and breaks BSD: Arguments seem valid, and I’m guessing, are correct. This one is likely true and will remain so for the foreseeable future.

Edit: And yet, it seems that there are Wayland compositors for FreeBSD, so the above might only be true for OpenBSD and others.

  • Wayland complicates server side decorations: From what I’ve heard, this is true, mainly something to do with some GNOME agenda, as the article states. I think that one is true.
  • Wayland breaks windows raising/activating themselves: The linked issue is closed and seems to be resolved. There is a mention of a WIP protocol at the time (2019) that woukd fix this. I had difficulty following the discussion, but I think this has been fixed.
  • Wayland breaks RescueTime: Because RescueTime depends on X11-only tools like xprop.
  • Wayland breaks window manager: What you’re describing is Wayland breaking X11-only tools for doing various tasks in a window manager. They are X11 tools, so of course they don’t work on Wayland. I’m not sure if there are alternatives, but I’d guess there probably are. I know for a fact that Xrandr has alternatives like wlr-randr and kanshi for wlroots.
  • Wayland requires {instert WM here} to implement Xorg-like functionality:Yes, it does.

Quote from article: "As it currently stands minor WMs and DEs do not even intend to support Wayland given the sheer complexity of writing all the code required to support the above features. "

DEs: GNOME, KDE, MATE, XFCE, Cinnamon, Budgie, Enlightenment, and recently even Pantheon have either announced to start work on, have started work on, or already support Wayland.

Window managers: Qtile is doing it. Xmonad wants to hire a dev to do it. Dwm has a spiritual successor called dwl. i3 has a drop-in replacement called sway. Openbox has 2 spiritual successors called labwc and waybox. Now you might notice one of the biggest WMs is missing on here: AwesomeWM, which is such a shame. The Awesome devs have said they would be okay with someone taking on that challenge (which has already been attempted, as evidenced by the existence of way-cooler), but it seems that they wouldn’t do it themselves.

As for the projects mentioned in the article, (JWM, TWM, XDM, IceWM) they are too small and obscure, and will likely fade away with Xorg.

  • Wayland breaks _NET_WM_STATE_SKIP_TASKBAR protocol I don’t know about that one, ao I’ll assume it is still the case. Edit: Ignoring the fact that the link is broken, it basically just links to a docs change where skipTaskbar is marked as unsupported on Linux. Link: github.com/electron/electron/pull/33226
  • Wayland breaks NoMachine NX The link points to a page that has this marked as “SOLVED, Released in version 8” so I’m guessing it has been solved.
  • Wayland breaks Xclip: As you said it yourself, Xclip is an X11 application, so it doesn’t work on Wayland. Of course it wouldn’t work on Wayland. With Wayland, we’re trying to prevent what happened with Xorg from happening again, or am I wrong?

Edit: As pointed out by some people in the comments, there are also alternatives to xclip like wl-clipboard.

  • Wayland breaks SUDO_ASKPASS: That link seems to point to the way this issue has been resolved so I don’t see your point.
  • Wayland breaks X11 atoms: I lack knowledge on the topic so will assume this to be a valid argument
  • Wayland break games: I’m 99% sure you can disable Vsync??? But I’m not a gamer. Also, WINE on Wayland is getting better and better. Soon enough, I hope the subpar performance will become better performance (when compared to Xorg)
  • Wayland breaks xdotool: Well, yes. There is ydotool, but you’re looking for a 1-to-1 replacement and I’m not sure if ydotool fits the bill for that.
  • Wayland breaks xkill: Well, yes. Again. It is an X application, so of course it does. Though for some reason I remember it working once on wayland. Must have been an xwayland app, or maybe I’m just misremembering this.
  • Wayland breaks screensavers: Yeah, that seems to be the case.
  • Wayland breaks setting the window position: That is a WIP for Plasma, not sure about any other projects, so assume true for anything else.
  • Wayland breaks color management: Not anymore. That is being actively worked on.
  • Wayland breaks DRM leasing: While not rhat familiar with the issue, my understanding of the topic is the article is correct: not all compositors support it.
  • Wayland breaks in-home streaming: Not familiar with this, so will assume true.
  • Wayland breaks NetWM/EWMH: Yeah, that seems to be the case.
  • Wayland breaks window icons: Yeah, that seems to be the case, as said in the article, when no .desktop files are used.

And that concludes my response to this article based on my fairly limited knowledge on the topic. If I got anything wrong, please, please let me know. As you can see my knowledge is quite limited, and as such, any corrections (preferably backed up with evidence) would be appreciated

grue,

Do the Wayland devs care about implementing network transparency yet?

LeFantome,

No, and I do not expect that they will. They consider it a feature independent of the window server. To them, it is a feature, not a bug.

grue,

It’s hardly worthy of being called a “window server” if it isn’t network transparent…

Ullebe1,

I doubt it’s ever going to be a part of the core protocols, but it doesn’t have to be, you can just use Waypipe.

waspentalive, (edited )
@waspentalive@lemmy.one avatar

Does Wayland allow for the running of a program on a big powerful server (where many users live) and display on a smaller desktop machine that is only providing a screen and keyboard? If not, are they working on that? If it does not and they are not working on it, is it even possible under the way that Wayland works?

ShittyKopper,
FooBarrington,

Beautiful! Makes much more sense to implement this separately.

joyjoy,

I believe they explicitly don’t support network transparency. The suggested alternative is to use a VNC client to connect remotely to the desktop.

Communist,
@Communist@lemmy.ml avatar

no, it’s waypipe.

loutr,
@loutr@sh.itjust.works avatar

Yes, with waypipe.

PseudoSpock,
@PseudoSpock@lemmy.dbzer0.com avatar

Waypipe is not Wayland. Wayland does not natively support this workflow, which is why Waypipe was created. Please don’t confuse the two as being one thing.

theshatterstone54,

Xrandr is not Xorg. Xorg does not support an easy way to set screen resolutions. That’s why Xrandr was created.

PseudoSpock,
@PseudoSpock@lemmy.dbzer0.com avatar

And we don’t run around calling Xrandr Xorg, do we? No. So we seem to agree.

smpl,
@smpl@discuss.tchncs.de avatar

You are giving me the impression that Waypipe is an extension to Wayland like XRANDR is to the X11 protocol. I didn’t get that impression from the blogpost. I’m not trying to place value on them being an extension or a separate tool. I’m just trying to figure out if it was a shortheaded response or if Waypipe is an extension to the Wayland protocol.

waspentalive,
@waspentalive@lemmy.one avatar

This may be “moving the goal posts”, if so I apologize in advance. With Waypipe can I have local windows and remote windows on my laptop? Will Waypipe work over a VPN (Tailscale is a VPN right?)

PseudoSpock,
@PseudoSpock@lemmy.dbzer0.com avatar

Yes.

PseudoSpock,
@PseudoSpock@lemmy.dbzer0.com avatar

No. Wayland does not. That’s why Waypipe was made to address that shortcoming.

waspentalive,
@waspentalive@lemmy.one avatar

Waypipe - Thanks I will look into that. Thanks to the others who also added their opinions promoting waypipe.

PseudoSpock,
@PseudoSpock@lemmy.dbzer0.com avatar

I’m pretty sure any distro setting up Wayland will be including Waypipe for you so your experience should be transparent.

Tau,

The only thing to boycott are GNOME dev’s mentality when it comes to things outside their DE (especially Wayland protocol adoption). It’s slowing Wayland development a lot

theshatterstone54,

I agree. I am personally a fan of server side decorations. I use tiling Window managers which means I do not need to have extra buttons (browsers) or bars (looking at you, thunar) to close, minimise of fullscreen an app. Heck, one of the reasons to use a tiling wm is to maximise the usage of screen real estate and with these extra bars and buttons you’re taking some of that away!

InstallGentoo,

…gitlab.io/…/on-the-gnome-project-and-my-way-or-t…

They have no intention of sparing a thought for anything that isn’t gnome. It’s a shame considering their corporate funding and influence over the linux desktop.

snor10,

I’ll switch to Wayland when XFCE makes the switch. For now, X is sufficient for me.

MonkderZweite, (edited )

A crash in the window manager takes down all running applications: Yes, because the compositor IS the server, window manager AND compositor at the same time.

I still would have preffered a modular approach, where compositor, window manager, server/mouse+keyboard are plugable. Well, it’s probably possible with Wayland, but the ecosystem is not there yet.

Presi300,
@Presi300@lemmy.world avatar

Wayland on intel is the same as it is on AMD, and has been for years now… I don’t really get why they would say that it’s broken…

Holzkohlen,

I now have perfect wayland setup with a Nvidia GPU. I just use my AMD Apu as main gpu and the nvidia one as secondary GPU. The DE runs on Amd and games run on Nvidia. Thanks for nothing Nvidia, making me work around your bs.

michaelmrose,

Doesn’t that drastically limit your monitor support like to ONE?

dan,
@dan@upvote.au avatar

I’m pretty familiar with Linux server management, but haven’t ran Linux on the desktop in a very long time (I still remember the days of XFree86, which was the predecessor to X.org). If I install a mainstream desktop distro today (Ubuntu, Mint, whatever is popular now), does it come with X11 or Wayland out-of-the-box?

eskimofry,

Depends on which out-of-the-box DE support it

Ullebe1,

Depends on which DE in which version it is using, but anything with recent Gnome (Fedora, Ubuntu) will. Not sure if KDE distros generally default to it, and for more niche DEs the answer is probably “no”, unless it was explicitly made for Wayland.

LeFantome,

I think GNOME is the only Wayland-first DE at the moment. KDE may go Wayland-only with Plasma 6 next year.

Most other environments are still X for the moment though most of the major ones are starting to at least implement Wayland.

There are Wayland only options like Hyperland, Sway, and Velox now too.

MigratingtoLemmy,

I’m very new to the Wayland vs Xorg: could someone tell me why having a compositor work as a compositor, server and client (window manager) is a good idea? Doesn’t this limit customisation? If someone wants to create a window manager, they’re going to have to implement a lot more software than just their product. I thought abstracted software with stable interfaces was king in software, other than having performance issues (I believe Wayland solves some of these problems).

So, if I’m on IceWM/Ratpoison and want to switch, do I manually convert my config, or do I have equivalent WMs in Wayland?

theshatterstone54,

I think Ratpoison had an alternative. According to wiki.archlinux.org/title/wayland there is Cagebreak, which is inspired by Ratpoison.

MigratingtoLemmy,

Thanks, had a look. Seems fantastic, I’ll keep this in mind!

axelf, (edited )
@axelf@lemmy.ml avatar

There is nothing stopping a Wayland compositor from exposing an interface that would allow for a choice of “window manager”. In fact, wlroots could almost count as such a compositor - it implements the bulk of a compositor, but none of the bits of a window manager. Of course, Plasma and Gnome also allow window managers to be integrated as plugins, but I presume that is not what you want.

It is not like the X window manager idea is impeccable either: To name one thing, picom or other compositors could display much nicer and context aware animations if only the window manager interface was not like it is.

buzz, (edited )
@buzz@lemmy.world avatar

Screenshotting apps and screen sharing still doesnt work on Wayland, I’m beginning to worry the rumours on Wayland inadequacy maybe real.

crypto,

@theshatterstone54 @buzz The rumors are real. I've tested Wayland on several distros on several machines and it has always been a disaster. On Debian Bookworm KDE on a FRESH install, the first thing I did was open the Discover app and it crashed. Every time I opened it the compositor took a dump.

Wayland is garbage and its apologists have an agenda. Their agenda does not include working software.

gustulus,

Skill issue

crypto,

@theshatterstone54 > "Reason for that being that Wayland is built with Linux in mind and would not work under FreeBSD without a lot of effort bwing put in as it uses some Linux-specific components or libraries."

Not so. FreeBSD is 100% Linux compatible and has Linux Kernel emulation built in. Wayland support is also built in to FreeBSD. FreeBSD is a much superior operating system compared to Linux. But the FreeBSD team only cares about the server aspects and really does not care about a graphical desktop. They tend to use Macs.

FreeBSD Documentation Portal

The state of Linux Desktop interface is a schizophrenic flustercuck with far too many cooks spoiling the stew. They're not just spoiling the stew; they're pooping in it. And a bunch of noveu-riche trust-fund baby nerds think this is cool. They don't give a rat's ass about the end user being able to get work done. They would rather we all waste our time filing bug reports rather than getting things done.

weketi6945,

hurr durr its le x11 only application

Then why is this piece of shit called x11’s successor or even x12? Why do you want to force adoption of this 2 decade long unfinished beta software when it can’t even run most applications?

weketi6945,

Also, the red hat moderators have banned my previous account as expected. They are literally moderating many forums like reddit’s linux subreddit and this place, and enforce censorship. They banned my account for posting the github gist posted in the OP. I didn’t even break any rules, they indiscriminately banned me just because i posted one post portraying wayland in a negative light.

theshatterstone54,

Because it is the replacement for Xorg and X11 as a whole. This is like expecting all Unix applications to work on Linux. No, some things need to be ported or rewritten. I don’t want to force adoption of Wayland. Heck, I’m on Xorg because Qtile’s Wayland session is missing a thing or two I need (they’re in development but not there yet). I’m just tired of people pretending this article is accurate and up to date so I wanted to set some things clear. Granted, I didn’t do it that well, but I tried.

Also, whoever calls Wayland X12 is lying to themselves and everyone else. The only way in which such naming would make sense is if you consider the fact that the X11 maintainers (pretty much all of them RedHat employees) were sick and tired of maintaining it, so they started Wayland to replace X11 (NOT as a drop in replacement, mind you). So the only way such naming wpuld make sense is if you consoder the fact that Wayland developers and maintainers were the same people that were maintaining Xorg until they just gave up.

lukas, (edited )
@lukas@lemmy.haigner.me avatar

Some people including myself call Wayland X12 because Wayland is a subset of the X12 protocol made by the X11 maintainers, and as such is as close to an X11 successor as you can get.

bluGill,

Because the people who developed X11 (that is Xorg) haven declared that. Maybe they should have named it X12, but they didn't for whatever reason. However the people doing the work have already given up on working on X11 they gave up on X11 beyond the bare minimum almost 10 years ago because some real issues with X11 as a protocol are not fixable.

There were other attempts to a successor to X11, but they never got the support of people doing the work on X11 (in part because they didn't understand the problem with X11 and so kept many bad things while 'fixing' things that were not broken)

Which is to say: you have two choices: get involved with continuing X11 development, or jump to Wayland. Throw a couple million $$$ per year at X11 (either pay developers, or convince a dozen developers to maintain X11) and I'll retract my statement, until then X11 is dead. If you cannot do that then Wayland is your only option.

superminerJG,

From a developer’s standpoint, one of the bigger pain points of Wayland is window embedding.

If you want to embed from an external process, the only way to do this is to have your application expose its own Wayland compositor and then have the embedded process use that Wayland compositor. No one has made a library for this as of yet.

If you want to embed from the same process, it shouldn’t be too difficult; you just need a wl_subsurface. However, this doesn’t work too well with most GUI toolkits.

Wayland is just radically different from every other windowing API, and I’m hoping that the GUI toolkits can adapt.

Metatronz,

I just got one question. What is cruft?

LeFantome,

Old and useless stuff that builds up over time

ssokolow, (edited )
@ssokolow@lemmy.ml avatar

Lemmy hangs whenever I try to post my response (I suspect it doesn’t like the length), so here’s a link to it on Github Gist:

gist.github.com/…/16c9311573eabc7343ff7ff2cc3513b…

It begins as follows and I’ve tried to hyperlink my sources as often as possible:

I’ll try to fill in some of the knowledge gaps and respond to some of your answers from a more user-centric perspective.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #