> Wayland may well replace X in the future, but at the time of writing X is still the de-facto standard for a window system
Is it? The article was written end of last year. I believe the most widespread DEs on the most widespread distros now use Wayland by default, don't they?
There's now stuff that just works better on Wayland today. I've kept X11 for a very long time, probably until 2023, because of little annoying details, but now it just works. I think the only remaming thing that annoys me is some apps like Kate not coming to the to the foreground when invoked.
Things are slowly going to stop working on X11. Perhaps not today, but we are talking about setting up a new Linux install.
Especially something like Arch that has all the recent versions.
Wayland users seems very happy with it and it is great. I don't understand the animosity toward X. Why do wish X to die so hard? I am using X for twenty years. It works great. It is stable and well documented. Is wayland a better option? Could be. But since when cannot there be 2 good options? Why does it bother there is an alternative to wayland?
I'm not specifically happy with Wayland, I don't care much actually. And I don't have any animosity against X neither. X is an iconic project, and inspiring too. I also spent almost 20 years using it.
But it is dying. Its design doesn't correspond to the way things work anymore. It is a nightmare to maintain because its (old) code is incredibly complex, because it is full of features, and these features need to be kept for backward compatibility but aren't used much anymore. Modern toolkits actually bypass its features when they can: instead of drawing using X directives, they stream huge pictures they draw themselves. X wasn't designed like this, but it was getting in the way so this was shoehorned into it. It's now common to have two screens with different dpis, which X doesn't handle. With X, drivers are provided with X, but it is now normal to have the drivers in the kernel instead.
The X developers went away to design and develop Wayland to start from a clean slate, with all the insight gathered all these years. Drivers and apps are now developed against Wayland and are less and less tested on X. Things are going to startup breaking, I suspect librairies will startup removing X support at dôme point, etc.
X is not an alternative to Wayland. It is its past. I don't wish X to die at all. I have no feelings here. But that's what's happening.
I don't mind someone using X knowing all this. But we are commenting on a guide directed towards newcomers. Because all these reasons, making them use X is bad advice.
If you have a working install using X, there's no urge to switch. Don't fix it if it ain't broken. It might even be clever to follow the upgrade path of your distro if you didn't customize anything.
Apart from that, I don't see any reason today to use X instead of Wayland unless specifically something doesn't work. And if it is the case, I hope you reported the issue, because one day you might be forced to switch and if the bug is still there, you will have to live with it.
We are not in a situation where we have two competing alternatives between which you can freely chose. Both involve the same developers, and one of them is considered obsolete and isn't developed anymore.
It's not that we are Wayland fans (at least I'm not). It's just that Wayland is all we have going forward.
It's not because it's just a different alternative. The problem is that X11 is not pushing the graphics stack forward while at the same time dragging down on projects that feel they need to support it because some users don't want to let go of X11.
How long until running software designed in 1987 is reserved for retro-computing? The graphics stack has changed way too much since then.
(damn, the X protocol v11 is even older than I thought, but I guess Wikipedia's entry is not considering minor revisions to X11)
I wouldn't says "push forward the graphic stack" as much as fitting current hardware and architectures that are already there, and being able to apply the insight gathered on X all these years.
Writing code and doing spreadsheet was already possible on the Atari ST but you wouldn't use its software stack today.
What does X offer for new users that Wayland doesn't? Alternatives are great but they have to be different in some way. I moved to Wayland more than 6 years ago (hardly an early adopter) and the only difference is less pain. Why would a new user choose that pain and learn archaic X tools? As an existing user it's different and you would only move it Wayland offered you something, but for new users Wayland should be the default now.
>What does X offer for new users that Wayland doesn't?
(Besides stability) it offers more options. The PineNote is an e-ink stylus tablet that only supports Wayland, and I've been looking for a dead-simple mouse-driven compositor (because tablet). X had bucketloads of WMs, most of them long-since stabilized and featured complete. Wayland has nothing. Nothing in the Debian-stable (which comes shipped on the PineNote and is stable) repo, at least.
Is this somewhat niche? Sure! Is it a huge fucking pain in the ass? Also sure!
I'm not against Wayland, in premise - it supports process isolation (potentially useful for KDE Activities in some amazing ways) in a way that X just can't and never will. X is not the future. But frankly, neither is Wayland. It's barely even the present (ask wacom/Krita users, or anyone with accessibility needs, what they think of Wayland devs), and actually loses some features (multi-window stuff is impossible-by-design on Wayland, which means entire swathes of software will just literally never switch to Wayland), and while Wayland does gain features and possibilities, they're niche features just like the X features that Wayland broke.
The "X is a clusterfuck" argument becomes increasingly weak, since Wayland is more and more clearly a clusterfuck itself.
At this point, I think Arcan is the future (www.arcan-fe.com), although please note the main dev is specifically avoiding the limelight before v1.0 and thus writes in a deliberately dense and unapproachable fashion. It's super elegant and a genuinely groundbreaking project.
I haven't touched Wayland because of a lack of window control tools, but don't know if the landscape has changed. Specifically to replace autokey, xdotool, wmctrl. I know kdotool exists for kde only which would cover most of xdotool, but I don't know about text expansion (autokey). Isn't most of Wayland's keybindings just remapping and not macros? I've written my own code to read dev files with elevated permissions so I think I'm fine with macros, but that might be too much work for other people. Would appreciate some Wayland users experience.
For text expansion, I'm using Espanso on KDE Wayland. The text expansion works fine, but its ability to paste image files only works in certain apps for reasons I haven't gotten to the bottom of yet.
A couple of years ago (2-3), I had a fully functioning Linux desktop with Wayland and SwayWM. Even automation worked, key rebinds worked, touchpad (approx like it works on macOS). Lots of software with great performance, too. Like Alacritty, for example. I could even run apps remotely over Waypipe (I ran Android emulator remotely). I did have to run a Windows application in XWayland IIRC. Was on Arch, too. This was after I had been running dual-boot on my PC at home, running Ubuntu with GNOME with Wayland as default. But what I do not use, is Nvidia GPUs!
I recently got a good laptop with great hardware, so I opted for Wayland (with hyprland). It is still finniky. One main issue is Xwayland dependency that feels a bit warped. Another one is gaming support (Wine still heavily depends on X11). Then you got nvidia. It's a lot of small things. Overall, big improvement since I gave it a try 2 years ago, it's evolving fast, and I would argue nearly "there". But not yet.
> One main issue is Xwayland dependency that feels a bit warped.
I believe XWayland is there to stay for retro compatibility. That seems fine to me, retro-compatibility seems like a good thing. That would not be unlike XQuartz on Mac, which doesn't make us question Mac's own display server.
> I would argue nearly "there". But not yet.
I fully believe there are use case that are not fully covered indeed.
Gaming would be one (I don't know whether gaming on Linux, outside the Steam Deck, is actually niche). But doesn't Wine work well with XWayland? (until they fully move to Wayland, which I think I've read they are in the process of doing)
I would guess NVidia would concern mainly gamers and people working with ML (maybe those people don't actually need NVidia to display stuff though, and are actually fully covered by the iGPU - I don't know).
It seems to me running an actual X11 session is now needed for niche things, but I might be wrong.
> I believe XWayland is there to stay for retro compatibility. That seems fine to me, retro-compatibility seems like a good thing. That would not be unlike XQuartz on Mac, which doesn't make us question Mac's own display server.
Yes but if more than 50% of the GUI softwares you run fallback to XWayland (including terminals), it makes no sense.
> But doesn't Wine work well with XWayland? (until they fully move to Wayland, which I think I've read they are in the process of doing).
Wine is already a compatibility layer, so adding XWayland on top of it introduces overheads and additional lags and visual artifacts in some games. There is an experimental version of wine 9.22+ that should theoretically run natively on Wayland, but it still crashes 100% of the time for me. Nvidia drivers were also notorious with Wayland, but they are getting better progressively.
I think the meme is nearly here: this might be the year of the Linux gaming desktop.
> Yes but if more than 50% of the GUI softwares you run fallback to XWayland (including terminals), it makes no sense.
For an Arch user, that 50% may be valid since the distribution encourages the use of an eclectic mix of software. On the other hand, most Linux users will be using distributions based upon Gnome or KDE. In those cases The majority of software will run under Wayland.
It's also kind of weird to dismiss Xwayland due to it adding overhead. Traditionally, X applications could be displayed upon a completely different machine from what they were running on. This could be a dedicated X terminal, and even a Windows or Macintosh computer. I would suggest the only reason why X is thought of as a native graphics stack is due to the rise of Linux (and, to a lesser degree, BSD) on inexpensive personal computers.
> Yes but if more than 50% of the GUI softwares you run fallback to XWayland (including terminals), it makes no sense.
That just seems wrong. Default terminal apps like gnome-terminal and konsole are probably the first apps that have worked (well) on Wayland (as soon as select paste started working, which it has for years). If you are using a terminal that doesn't support Wayland, that's a choice you are making.
Nothing uses XWayland on my setup except IntelliJ (and they are working on a native Wayland support, it might actually be working well right now but I also happen to run it in a local container though ssh and I haven't yet looked into the Wayland alternative of ssh -X). And that was not even a criterion to choose my apps.
That's just not 50% for most people I think. And even if it were, running the DE in Wayland and all the apps in XWayland already brings benefits in comparison to running a full X11 session, at least for setups with multi screens with different DPIs. So yes, it would still make sense.
> Wine is already a compatibility layer
.. That doesn't introduce any lag because it's not an emulator, it's a reimplementation of Windows APIs, with native speeds, so it doesn't matter at all that it's a compatibility layer in this discussion. Okay, there is dxvk, wined3d and things like this, but apparently they can be better than the original under certain conditions [2].
> adding XWayland on top of it introduces overheads
It's not supposed to, your game renders directly anyway [1]:
> What about the overhead of running X on wayland?
> Most modern desktops already use an external compositing manager: when the X server decides it needs to update content, it informs this external process (usually your window manager), and allows it to control the rendering entirely. Using Xwayland is just the same as this, but more efficient because the compositing manager doesn't have to go back through the X server to display the content it rendered.
I'm eager to believe that nvidia has bugs with Wayland (they've been given the middle finger for a reason), and that there are Wayland-specific bugs in some apps, especially games.
> I think the meme is nearly here: this might be the year of the Linux gaming desktop.
Aren't we already there actually? Isn't it like 90%+ of games that just work now? Isn't the Steam Deck a success?
I have friends that were stuck on Windows because of games until recently but finally switched to Linux last year or the year before.
> Aren't we already there actually? Isn't it like 90%+ of games that just work now? Isn't the Steam Deck a success?
This has been my experience. The only games that give me grief are either just a badly supported on Windows or use some ring0 anticheat bullshit. Thankfully, I don't even like most of the sorts of games that rely on ring0 anticheat, so nothing of value was lost for me.
The only remaining games that have papercuts are caused by garden-variety Wine/Proton support that usually get patched in a matter of weeks. I honestly haven't seen a Wayland-caused game issue since the release of KDE 6.0.1, and even the general Nvidia driver issues have mostly evaporated since then.
The good thing about Wayland is that security is much better. In X, a compromised application can easily steal information. Sandboxing is hard. The bad thing about Wayland is that changes to the architecture are incompatible with window managers, which require a rewrite.
Things like XMonad or StumpWM are relatively popular among Arch users so that is why X is still featured prominently in the Wiki. I use those two, but on NixOS, and I find it annoying there is no simple migration route. Waymonad never took off. StumpWM/Mahogany seems to be getting there, but AFAIK there is no release in the horizon yet.
I thought the same until I tried to migrate. The hardest part is figuring out how to achieve the same thing in Wayland (idle control, window automation, clipboard, etc.). The one thing I haven't figured out, which prevents me from switching over is getting "urgency" to work in Sway.
Of course if something you need doesn't work under Wayland, you will need to use X and you can for as long as it still works, and that's actually about the only good reason I see to pick X. But make sure issues are reported!
(Now, I'm curious, what breaks CJK under Wayland?)
As far as I understand, wayland doesn't have any common provisions for input methods whatsoever. (There is something recent and experimental, but I'm not sure.)
So far, every toolkit would implement it's own way of inputting CJK, independently. So input would work in kde and gtk programs, but not in foot or alacritty.
I still use X11 because it just works. I understand that Wayland is the "latest and greatest", but I genuinely do not understand why I need to upgrade yet. Could someone provide an actual tangible example as to why Wayland is "better" than X11? I've only ever heard hand-wavy explanations.
Appart from security when using jailed applications for me it is the smoothness.
It is something I didn't really care that much when using X11 or that I tolerated because the alternatives (win and macos) were worse for me from an usability standpoint but once you are used to wayland it is hard to go back to x11 and its occasional tearing.
I guess it is like a lot of things ignorance is bliss. Appart from my smartphone I have never used a screen with a high dpi display so I am fine with 1080p on my computers but it may change the day I switch at least one screen for a 4K display.
IME Wayland handles mixed DPI, fractional scaling, and mixed scaling far better than X did, which is important for me since I have a couple of differently sized and different resolution monitors
security:
you can think of x11 as being similar to how memory worked back in the dos world. any x11 client can look at the screen content of any other client, can steal/monitor inputs, etc. in wayland you have a framework called Portals that allows you to grant this access on a limited basis and ensure an indicator is displayed when the screen is being recorded/shared
performance:
holy shit it's so buttery smooth, especially if you're on an intel or amd graphics stack. under x11, it felt like it was impossible to actually eliminate tearing everywhere. under wayland (my experience is limited to sway, gnome, and most recently kde) tearing just ceases to be a thing.
Any process you run can already access the memory and files of everything else as the same user.
Wayland's security properties are over-sold and practically irrelevant, and it doesn't help that it breaks a ton of functionality that people need in the name of this "security", like screen readers.
>Any process you run can already access the memory and files of everything else as the same user.
*When the applications themselves aren't properly sandboxed. If they are with for example firejail, flatpak or snap. Then x11 is a gaping hole like having proper doors in a house but broken windows.
It's not the job of the compositor to sandbox applications.
Not a criticism of the article / documents but an observation that aligns with others comments. For new users it is probably not going to be an issue to select a different window manager / desktop experience.
Boot Arch ISO
Run archinstall
select desktop / window manager you wish to install
No requirement to manually setup X or Wayland, as the scripts / install will take care of it for you. I also understand that this is not 100% in the ethos of using Arch (where you should really understand all the packages going into your system and how all the configuration is done).
I would also include that the following is also a good resource for learning Arch. https://arcolinux.com/ (although is is a derivative of Arch this site has alot of documentation that users can learn from)
I applaud the effort but honestly think if I was a new Linux user, this guide would be relatively useless.
It lists what to do but gives no hints where to look for these settings.
Unfortunately, sway is a rather poor tiling wm, no offense to i3 fans.
IMO the point of a tiling wm is to make it easier to manage windows, so something that requires manual splitting and rearranging is unacceptable (I may as well manually drag around windows!). Proper automatic tiling wms like dwm and awesome are missing in Wayland.
Or, "were" missing, there are now some promising ones like Hyprland but they still have rough edges.
Written for laptop users. I'd raise an eyebrow at going with i3 rather than... I don't know... Gnome or KDE or MATE or Cinnamon or Xfce or, well, anything a little more user-friendly.
Unfortunately KDE is currently broken on Arch. The screen locker freezes when you wake the screen back up (see https://bugs.kde.org/show_bug.cgi?id=483094). Hopefully they fix the bug soon but it's been almost a year so I don't have a ton of hope.
Not using Arch anymore, but I did have this issue recently on OpenSUSE Tumbleweed. I switched KDE to Wayland (defaulted to X11 for some reason) and the issue went away. Worth a try if you haven't already.
Thank you for the tip! Unfortunately I can't use Wayland because it breaks the AFK detection in Discord. I would actually prefer to use Wayland, but Discord Linux support is real bad. That said I'll have to take a look because maybe there's a solution that didn't exist last time I tried. And worst case scenario, I can at least decide which bug is less bad.
While I can't personally understand why you'd want to give Discord and its advertisers free information about your application usage habits, issues like these are endemic to rather a large number of Electron apps whose developers refuse to keep the framework up-to-date. Supposedly the issues will go away when they upgrade to modern Electron, and then I'll know for sure just how good the Flatpak jails are at blocking that nonsense.
An off the wall solution might be to bridge Discord to Matrix with https://docs.mau.fi/bridges/go/discord/index.html and then use a Matrix client, but no idea how well the bridge supports AFK detection as I haven't used the Discord one. Generally the other bridges to Matrix I have used support status and presence pretty seamlessly, though. Don't think any of the bridges support voice chat, however, so depends on what you use Discord for.
Also perhaps try Discord in the browser instead of the desktop app?
Dunno about the opensuse variant of rolling release distro (tumbleweed?), but usually You'd want Arch to avoid the 6 month "upgrade to the new version of the distro and find the ppa/user repos for the software i couldn't find in official repos" headaches.
Also Arch KDE is more or less upstream, while i remember Suse polishing the theme etc .. Back when i tried it 15 years ago
Tumbleweed is really close to upstream and doesn't need extra repos to stay on the latest versions. They do ship their own theme, but vanilla breeze is only a few clicks away. Tumbleweed is mostly tied with Arch in my book for favorite distro. They both have papercuts and things that work better than the other in different areas, but on the whole are very close.
They don't want you to use the full Ubuntu package repos nor any PPAs, though. They expect you to be content with just KDE apps and Flatpak. Flatpak in no way covers my needs on its own, and I got tired of fighting with 3rd-party repos on it. If I have to run Ubuntu and want up-to-date KDE, I run Tuxedo OS. That's what my work laptop is on, and has been pretty great overall. The rest of my machines are on one rolling release or another (Debian Testing, OpenSUSE Tumbleweed, or Arch).
> Wayland may well replace X in the future, but at the time of writing X is still the de-facto standard for a window system
Is it? The article was written end of last year. I believe the most widespread DEs on the most widespread distros now use Wayland by default, don't they?
There's now stuff that just works better on Wayland today. I've kept X11 for a very long time, probably until 2023, because of little annoying details, but now it just works. I think the only remaming thing that annoys me is some apps like Kate not coming to the to the foreground when invoked.
Things are slowly going to stop working on X11. Perhaps not today, but we are talking about setting up a new Linux install.
Especially something like Arch that has all the recent versions.
Wayland users seems very happy with it and it is great. I don't understand the animosity toward X. Why do wish X to die so hard? I am using X for twenty years. It works great. It is stable and well documented. Is wayland a better option? Could be. But since when cannot there be 2 good options? Why does it bother there is an alternative to wayland?
I'm not specifically happy with Wayland, I don't care much actually. And I don't have any animosity against X neither. X is an iconic project, and inspiring too. I also spent almost 20 years using it.
But it is dying. Its design doesn't correspond to the way things work anymore. It is a nightmare to maintain because its (old) code is incredibly complex, because it is full of features, and these features need to be kept for backward compatibility but aren't used much anymore. Modern toolkits actually bypass its features when they can: instead of drawing using X directives, they stream huge pictures they draw themselves. X wasn't designed like this, but it was getting in the way so this was shoehorned into it. It's now common to have two screens with different dpis, which X doesn't handle. With X, drivers are provided with X, but it is now normal to have the drivers in the kernel instead.
The X developers went away to design and develop Wayland to start from a clean slate, with all the insight gathered all these years. Drivers and apps are now developed against Wayland and are less and less tested on X. Things are going to startup breaking, I suspect librairies will startup removing X support at dôme point, etc.
X is not an alternative to Wayland. It is its past. I don't wish X to die at all. I have no feelings here. But that's what's happening.
I don't mind someone using X knowing all this. But we are commenting on a guide directed towards newcomers. Because all these reasons, making them use X is bad advice.
If you have a working install using X, there's no urge to switch. Don't fix it if it ain't broken. It might even be clever to follow the upgrade path of your distro if you didn't customize anything.
Apart from that, I don't see any reason today to use X instead of Wayland unless specifically something doesn't work. And if it is the case, I hope you reported the issue, because one day you might be forced to switch and if the bug is still there, you will have to live with it.
We are not in a situation where we have two competing alternatives between which you can freely chose. Both involve the same developers, and one of them is considered obsolete and isn't developed anymore.
It's not that we are Wayland fans (at least I'm not). It's just that Wayland is all we have going forward.
It's not because it's just a different alternative. The problem is that X11 is not pushing the graphics stack forward while at the same time dragging down on projects that feel they need to support it because some users don't want to let go of X11.
How long until running software designed in 1987 is reserved for retro-computing? The graphics stack has changed way too much since then.
(damn, the X protocol v11 is even older than I thought, but I guess Wikipedia's entry is not considering minor revisions to X11)
---
https://en.wikipedia.org/wiki/X_Window_System
The graphics stack doesn't need to be pushed forward for, what?, 99% of computing use cases? 99.9%?
What graphics stack pushing forward is needed to write documents, spreadsheets, view charts, write code, edit video/images, do data analysis, etc?
I wouldn't says "push forward the graphic stack" as much as fitting current hardware and architectures that are already there, and being able to apply the insight gathered on X all these years.
Writing code and doing spreadsheet was already possible on the Atari ST but you wouldn't use its software stack today.
> The graphics stack doesn't need to be pushed forward for
Hardware evolves and software should either grab its magic ball and plan for that, or adapt to changes to avoid dragging hardware evolution back.
What does X offer for new users that Wayland doesn't? Alternatives are great but they have to be different in some way. I moved to Wayland more than 6 years ago (hardly an early adopter) and the only difference is less pain. Why would a new user choose that pain and learn archaic X tools? As an existing user it's different and you would only move it Wayland offered you something, but for new users Wayland should be the default now.
>What does X offer for new users that Wayland doesn't?
(Besides stability) it offers more options. The PineNote is an e-ink stylus tablet that only supports Wayland, and I've been looking for a dead-simple mouse-driven compositor (because tablet). X had bucketloads of WMs, most of them long-since stabilized and featured complete. Wayland has nothing. Nothing in the Debian-stable (which comes shipped on the PineNote and is stable) repo, at least.
Is this somewhat niche? Sure! Is it a huge fucking pain in the ass? Also sure!
I'm not against Wayland, in premise - it supports process isolation (potentially useful for KDE Activities in some amazing ways) in a way that X just can't and never will. X is not the future. But frankly, neither is Wayland. It's barely even the present (ask wacom/Krita users, or anyone with accessibility needs, what they think of Wayland devs), and actually loses some features (multi-window stuff is impossible-by-design on Wayland, which means entire swathes of software will just literally never switch to Wayland), and while Wayland does gain features and possibilities, they're niche features just like the X features that Wayland broke.
The "X is a clusterfuck" argument becomes increasingly weak, since Wayland is more and more clearly a clusterfuck itself.
At this point, I think Arcan is the future (www.arcan-fe.com), although please note the main dev is specifically avoiding the limelight before v1.0 and thus writes in a deliberately dense and unapproachable fashion. It's super elegant and a genuinely groundbreaking project.
I haven't touched Wayland because of a lack of window control tools, but don't know if the landscape has changed. Specifically to replace autokey, xdotool, wmctrl. I know kdotool exists for kde only which would cover most of xdotool, but I don't know about text expansion (autokey). Isn't most of Wayland's keybindings just remapping and not macros? I've written my own code to read dev files with elevated permissions so I think I'm fine with macros, but that might be too much work for other people. Would appreciate some Wayland users experience.
For text expansion, I'm using Espanso on KDE Wayland. The text expansion works fine, but its ability to paste image files only works in certain apps for reasons I haven't gotten to the bottom of yet.
A couple of years ago (2-3), I had a fully functioning Linux desktop with Wayland and SwayWM. Even automation worked, key rebinds worked, touchpad (approx like it works on macOS). Lots of software with great performance, too. Like Alacritty, for example. I could even run apps remotely over Waypipe (I ran Android emulator remotely). I did have to run a Windows application in XWayland IIRC. Was on Arch, too. This was after I had been running dual-boot on my PC at home, running Ubuntu with GNOME with Wayland as default. But what I do not use, is Nvidia GPUs!
I recently got a good laptop with great hardware, so I opted for Wayland (with hyprland). It is still finniky. One main issue is Xwayland dependency that feels a bit warped. Another one is gaming support (Wine still heavily depends on X11). Then you got nvidia. It's a lot of small things. Overall, big improvement since I gave it a try 2 years ago, it's evolving fast, and I would argue nearly "there". But not yet.
> One main issue is Xwayland dependency that feels a bit warped.
I believe XWayland is there to stay for retro compatibility. That seems fine to me, retro-compatibility seems like a good thing. That would not be unlike XQuartz on Mac, which doesn't make us question Mac's own display server.
> I would argue nearly "there". But not yet.
I fully believe there are use case that are not fully covered indeed.
Gaming would be one (I don't know whether gaming on Linux, outside the Steam Deck, is actually niche). But doesn't Wine work well with XWayland? (until they fully move to Wayland, which I think I've read they are in the process of doing)
I would guess NVidia would concern mainly gamers and people working with ML (maybe those people don't actually need NVidia to display stuff though, and are actually fully covered by the iGPU - I don't know).
It seems to me running an actual X11 session is now needed for niche things, but I might be wrong.
> I believe XWayland is there to stay for retro compatibility. That seems fine to me, retro-compatibility seems like a good thing. That would not be unlike XQuartz on Mac, which doesn't make us question Mac's own display server.
Yes but if more than 50% of the GUI softwares you run fallback to XWayland (including terminals), it makes no sense.
> But doesn't Wine work well with XWayland? (until they fully move to Wayland, which I think I've read they are in the process of doing).
Wine is already a compatibility layer, so adding XWayland on top of it introduces overheads and additional lags and visual artifacts in some games. There is an experimental version of wine 9.22+ that should theoretically run natively on Wayland, but it still crashes 100% of the time for me. Nvidia drivers were also notorious with Wayland, but they are getting better progressively.
I think the meme is nearly here: this might be the year of the Linux gaming desktop.
> Yes but if more than 50% of the GUI softwares you run fallback to XWayland (including terminals), it makes no sense.
For an Arch user, that 50% may be valid since the distribution encourages the use of an eclectic mix of software. On the other hand, most Linux users will be using distributions based upon Gnome or KDE. In those cases The majority of software will run under Wayland.
It's also kind of weird to dismiss Xwayland due to it adding overhead. Traditionally, X applications could be displayed upon a completely different machine from what they were running on. This could be a dedicated X terminal, and even a Windows or Macintosh computer. I would suggest the only reason why X is thought of as a native graphics stack is due to the rise of Linux (and, to a lesser degree, BSD) on inexpensive personal computers.
> Yes but if more than 50% of the GUI softwares you run fallback to XWayland (including terminals), it makes no sense.
Konsole: 24.12.1
KDE Frameworks: 6.10.0
Qt: Using 6.8.1 and built against 6.8.1
Arch Linux (Wayland)
Build ABI: x86_64-little_endian-lp64
Kernel: linux 6.12.10-arch1-1
> Yes but if more than 50% of the GUI softwares you run fallback to XWayland (including terminals), it makes no sense.
That just seems wrong. Default terminal apps like gnome-terminal and konsole are probably the first apps that have worked (well) on Wayland (as soon as select paste started working, which it has for years). If you are using a terminal that doesn't support Wayland, that's a choice you are making.
Nothing uses XWayland on my setup except IntelliJ (and they are working on a native Wayland support, it might actually be working well right now but I also happen to run it in a local container though ssh and I haven't yet looked into the Wayland alternative of ssh -X). And that was not even a criterion to choose my apps.
That's just not 50% for most people I think. And even if it were, running the DE in Wayland and all the apps in XWayland already brings benefits in comparison to running a full X11 session, at least for setups with multi screens with different DPIs. So yes, it would still make sense.
> Wine is already a compatibility layer
.. That doesn't introduce any lag because it's not an emulator, it's a reimplementation of Windows APIs, with native speeds, so it doesn't matter at all that it's a compatibility layer in this discussion. Okay, there is dxvk, wined3d and things like this, but apparently they can be better than the original under certain conditions [2].
> adding XWayland on top of it introduces overheads
It's not supposed to, your game renders directly anyway [1]:
> What about the overhead of running X on wayland?
> Most modern desktops already use an external compositing manager: when the X server decides it needs to update content, it informs this external process (usually your window manager), and allows it to control the rendering entirely. Using Xwayland is just the same as this, but more efficient because the compositing manager doesn't have to go back through the X server to display the content it rendered.
I'm eager to believe that nvidia has bugs with Wayland (they've been given the middle finger for a reason), and that there are Wayland-specific bugs in some apps, especially games.
> I think the meme is nearly here: this might be the year of the Linux gaming desktop.
Aren't we already there actually? Isn't it like 90%+ of games that just work now? Isn't the Steam Deck a success?
I have friends that were stuck on Windows because of games until recently but finally switched to Linux last year or the year before.
[1] https://wayland.freedesktop.org/faq.html
[2] https://www.reddit.com/r/linux_gaming/comments/nyuqou/what_m...
> Aren't we already there actually? Isn't it like 90%+ of games that just work now? Isn't the Steam Deck a success?
This has been my experience. The only games that give me grief are either just a badly supported on Windows or use some ring0 anticheat bullshit. Thankfully, I don't even like most of the sorts of games that rely on ring0 anticheat, so nothing of value was lost for me.
The only remaining games that have papercuts are caused by garden-variety Wine/Proton support that usually get patched in a matter of weeks. I honestly haven't seen a Wayland-caused game issue since the release of KDE 6.0.1, and even the general Nvidia driver issues have mostly evaporated since then.
Wine just released in the last days a new version with excellent Wayland support.
The good thing about Wayland is that security is much better. In X, a compromised application can easily steal information. Sandboxing is hard. The bad thing about Wayland is that changes to the architecture are incompatible with window managers, which require a rewrite.
Things like XMonad or StumpWM are relatively popular among Arch users so that is why X is still featured prominently in the Wiki. I use those two, but on NixOS, and I find it annoying there is no simple migration route. Waymonad never took off. StumpWM/Mahogany seems to be getting there, but AFAIK there is no release in the horizon yet.
I thought the same until I tried to migrate. The hardest part is figuring out how to achieve the same thing in Wayland (idle control, window automation, clipboard, etc.). The one thing I haven't figured out, which prevents me from switching over is getting "urgency" to work in Sway.
Does CJK input work for you in each and every program?
I don't do CJK.
Of course if something you need doesn't work under Wayland, you will need to use X and you can for as long as it still works, and that's actually about the only good reason I see to pick X. But make sure issues are reported!
(Now, I'm curious, what breaks CJK under Wayland?)
I don't know, I'm not a guru in that domain.
As far as I understand, wayland doesn't have any common provisions for input methods whatsoever. (There is something recent and experimental, but I'm not sure.)
So far, every toolkit would implement it's own way of inputting CJK, independently. So input would work in kde and gtk programs, but not in foot or alacritty.
I still use X11 because it just works. I understand that Wayland is the "latest and greatest", but I genuinely do not understand why I need to upgrade yet. Could someone provide an actual tangible example as to why Wayland is "better" than X11? I've only ever heard hand-wavy explanations.
Appart from security when using jailed applications for me it is the smoothness.
It is something I didn't really care that much when using X11 or that I tolerated because the alternatives (win and macos) were worse for me from an usability standpoint but once you are used to wayland it is hard to go back to x11 and its occasional tearing.
I guess it is like a lot of things ignorance is bliss. Appart from my smartphone I have never used a screen with a high dpi display so I am fine with 1080p on my computers but it may change the day I switch at least one screen for a 4K display.
IME Wayland handles mixed DPI, fractional scaling, and mixed scaling far better than X did, which is important for me since I have a couple of differently sized and different resolution monitors
security: you can think of x11 as being similar to how memory worked back in the dos world. any x11 client can look at the screen content of any other client, can steal/monitor inputs, etc. in wayland you have a framework called Portals that allows you to grant this access on a limited basis and ensure an indicator is displayed when the screen is being recorded/shared
performance: holy shit it's so buttery smooth, especially if you're on an intel or amd graphics stack. under x11, it felt like it was impossible to actually eliminate tearing everywhere. under wayland (my experience is limited to sway, gnome, and most recently kde) tearing just ceases to be a thing.
> security
Any process you run can already access the memory and files of everything else as the same user.
Wayland's security properties are over-sold and practically irrelevant, and it doesn't help that it breaks a ton of functionality that people need in the name of this "security", like screen readers.
>Any process you run can already access the memory and files of everything else as the same user.
*When the applications themselves aren't properly sandboxed. If they are with for example firejail, flatpak or snap. Then x11 is a gaping hole like having proper doors in a house but broken windows.
It's not the job of the compositor to sandbox applications.
Performance, security, and ease of configuration
Not a criticism of the article / documents but an observation that aligns with others comments. For new users it is probably not going to be an issue to select a different window manager / desktop experience.
Boot Arch ISO
Run archinstall
select desktop / window manager you wish to install
No requirement to manually setup X or Wayland, as the scripts / install will take care of it for you. I also understand that this is not 100% in the ethos of using Arch (where you should really understand all the packages going into your system and how all the configuration is done).
I would also include that the following is also a good resource for learning Arch. https://arcolinux.com/ (although is is a derivative of Arch this site has alot of documentation that users can learn from)
I applaud the effort but honestly think if I was a new Linux user, this guide would be relatively useless. It lists what to do but gives no hints where to look for these settings.
I think new users to linux should skip x11 entirely as it is out of fashion and only adds friction.
sway instead of i3 if you insist on tiling wm (i do, but it is a fringe option and another pain point for newbies)
Unfortunately, sway is a rather poor tiling wm, no offense to i3 fans.
IMO the point of a tiling wm is to make it easier to manage windows, so something that requires manual splitting and rearranging is unacceptable (I may as well manually drag around windows!). Proper automatic tiling wms like dwm and awesome are missing in Wayland.
Or, "were" missing, there are now some promising ones like Hyprland but they still have rough edges.
Not perfect but enough for basics
https://archlinux.org/packages/extra/any/autotiling/
Written for laptop users. I'd raise an eyebrow at going with i3 rather than... I don't know... Gnome or KDE or MATE or Cinnamon or Xfce or, well, anything a little more user-friendly.
FWIW, the author explains his reasoning about desktop environments in the middle of this page: https://ejmastnak.com/tutorials/arch/startx/
Basically recommending to start minimal, with the freedom to configure/add things afterwards.
Agreed, I would never recommend i3 for someone new to arch...
Arch Linux is the best distro for KDE enjoyers. I recommend going all in on KDE, especially with its companion app "KDE Connect" on your smartphone
No need to use KDE to use KDE Connect. Gsconnect works well on ubuntu/gnome and integrates like you'd expect it to.
https://extensions.gnome.org/extension/1319/gsconnect/
Unfortunately KDE is currently broken on Arch. The screen locker freezes when you wake the screen back up (see https://bugs.kde.org/show_bug.cgi?id=483094). Hopefully they fix the bug soon but it's been almost a year so I don't have a ton of hope.
Not using Arch anymore, but I did have this issue recently on OpenSUSE Tumbleweed. I switched KDE to Wayland (defaulted to X11 for some reason) and the issue went away. Worth a try if you haven't already.
Thank you for the tip! Unfortunately I can't use Wayland because it breaks the AFK detection in Discord. I would actually prefer to use Wayland, but Discord Linux support is real bad. That said I'll have to take a look because maybe there's a solution that didn't exist last time I tried. And worst case scenario, I can at least decide which bug is less bad.
While I can't personally understand why you'd want to give Discord and its advertisers free information about your application usage habits, issues like these are endemic to rather a large number of Electron apps whose developers refuse to keep the framework up-to-date. Supposedly the issues will go away when they upgrade to modern Electron, and then I'll know for sure just how good the Flatpak jails are at blocking that nonsense.
An off the wall solution might be to bridge Discord to Matrix with https://docs.mau.fi/bridges/go/discord/index.html and then use a Matrix client, but no idea how well the bridge supports AFK detection as I haven't used the Discord one. Generally the other bridges to Matrix I have used support status and presence pretty seamlessly, though. Don't think any of the bridges support voice chat, however, so depends on what you use Discord for.
Also perhaps try Discord in the browser instead of the desktop app?
Just some random thoughts to try.
openSUSE is quite good as well, any specific reason Arch would be better for KDE than openSUSE?
Dunno about the opensuse variant of rolling release distro (tumbleweed?), but usually You'd want Arch to avoid the 6 month "upgrade to the new version of the distro and find the ppa/user repos for the software i couldn't find in official repos" headaches.
Also Arch KDE is more or less upstream, while i remember Suse polishing the theme etc .. Back when i tried it 15 years ago
Tumbleweed is really close to upstream and doesn't need extra repos to stay on the latest versions. They do ship their own theme, but vanilla breeze is only a few clicks away. Tumbleweed is mostly tied with Arch in my book for favorite distro. They both have papercuts and things that work better than the other in different areas, but on the whole are very close.
In my opinion the best KDE experience would be KDE neon by the KDE developers.
https://neon.kde.org/
They don't want you to use the full Ubuntu package repos nor any PPAs, though. They expect you to be content with just KDE apps and Flatpak. Flatpak in no way covers my needs on its own, and I got tired of fighting with 3rd-party repos on it. If I have to run Ubuntu and want up-to-date KDE, I run Tuxedo OS. That's what my work laptop is on, and has been pretty great overall. The rest of my machines are on one rolling release or another (Debian Testing, OpenSUSE Tumbleweed, or Arch).
I switched to Wayland (hyprland) last year and have never regretted it, until I need to load up an Electron app. What a shit framework.