37 ms·
An X11 apologist tries Wayland
- Lio 4y agoWayland seems pretty good to me now. There are still the odd issues with HiDPI but I think that's mainly down to XWayland support in apps that don't support Wayland natively yet. e.g. If I'm running VLC and I move it from a 1:1 screen to a HiDPI screen then my mouse pointer goes tiny as it passes over it. It's a similar situation for some older Electron based apps too. Support for XWayland is OKish but not seamless. Hopefully time will solve that, for VLC I think that should happen in version 4.
- Gigachad 4y agoMixed DPI is basically unusable on Wayland due to X11 apps but last I checked, X doesn't even support this at all. I gave up waiting because years later still almost every non Gnome app is electron or otherwise running in XWayland. Just changed my monitors to have the same dpi scale.
- harshitaneja 4y agoBeen away from linux GUI systems for some time but isn't that resolved now with ozone in chromium which brings wayland support. I remember using electron beta with ozone and building vscode with it for proper wayland support. It worked quite well then.
- Gigachad 4y agoI saw that it was supposedly fixed a while ago but as of this year I can confirm that Steam, Spotify, Telegram, Discord, and VS code do not DPI scale properly. The most offensive one is that Telegram _used_ to scale properly and somehow they broke it about a year ago. GTK also still does not support fractional scailing despite the majority of monitors being sold right now are optimal at 125% or 150%.
- deleted 4y ago[deleted]
- ryandrake 4y agoI have had a set up with a “retina” iMac (5120 × 2880) surrounded by two Thunderbolt displays (2560 × 1440) for close to a decade. No Linux distribution I’ve tried has managed to handle the different DPIs properly during this entire time period. There may be a way to cobble it together but I gave up many times. Neither the display layer, the window manager, nor the apps seem to be able to take full responsibility for figuring it out. Windows (through Bootcamp) barely understands the setup and even still, dragging windows across the DPI borders results in horrible jank and artifacts. Only macOS has this “multiple DPI monitors wizardry” figured out, and it worked from day one.
- Gigachad 4y agoThese days the distros themselves all support it fine and the built in programs all work correct. But any program which relies on the XWayland compatibility layer does not work as X11 has no support for live switching dpi without killing the window and recreating it. Apple has the advantage of forcing programs to use new apis while on the Linux side you have boomers insisting on using obsolete tech until they die because it lets them use gimp over telnet.
- Nursie 4y agoIt is a pain in Xorg, and a manual process, but doable with xrandr. Effectively you can over-render and scale to make things consistent. But it is a pain in the ass and I have to run the script every session.
- badsectoracula 4y ago> Mixed DPI is basically unusable on Wayland due to X11 apps but last I checked, X doesn't even support this at all. Xorg/RandR provides the necessary info, but it is up to the apps (really, toolkits) to work with that and to do it properly it needs the cooperation of both window managers and applications(toolkits) to define some messages/events for scaling, etc. It shouldn't be any different than the other common stuff between X clients, like ICCCM and EWMH (if anything, it should be part of a new version of EWMH), but nobody has bothered so far. Also there is the -separate- issue where under XWayland, Wayland is lying to X about DPI so apps cannot scale themselves if needed. E.g. Lazarus/LCL has its own scaling logic which works even with the Gtk2 backend (Gtk2 has no scaling logic itself) under Xorg but under XWayland the compositor is lying to the program that is running at 96 (or whatever "non-hidpi") DPI and does bitmap scaling instead (so applications appear blurry). Or at least this is how it is under KDE (which is the only DE i have installed on my PC to use as a secondary environment for testing out stuff - i mainly use Window Maker myself as my main environment).
- AstralStorm 4y agoHow is the multi monitor story? Especially when the resolutions or refresh rates do not match?
- mroche 4y agoIf you have mixed resolution, mix refresh rate, and mixed DPI setups, anything Wayland native will be just fine. XWayland can still have some quirks, but I'm not sure if that's an easily solvable problem (or at all). Though I don't have HiDPI displays, I have a triple monitor setup with NVIDIA (2x 1920x1200@75Hz~96ppi and 1x 2560x1440@60Hz~108ppi) and though I use Xorg due to some specific applications, the Wayland session is completely usable and fine otherwise for 99% of my use cases. I actually wish I could use it full time. This is on Fedora 36 Workstation.
- Gigachad 4y agoBy "have some quirks" you mean windows will either show as 200% or 50% size on one monitor which is usually unusable. But you're right, its not anything the Wayland side can control, but as a user, you are better off just getting your monitors to have the same DPI than to wait for every single electron app to update it's base electron version.
- christophilus 4y agoI have a 5k monitor and a 4K laptop screen that I run simultaneously. It all works seamlessly in my experience (Fedora 36, vanilla Gnome).
- ranger207 4y agoI have two 1920x1080 60fps screens and one 2560x1440 120fps screen and they work perfectly in sway. The DPI between them is different but it's minor enough that I haven't bothered fixing it
- akdor1154 4y agoBetter than X but still not perfect. If you have neat monitors where the difference in pixel dpi is simply an integer multiple (1×, 2×, etc) it's really good, no issues at all. If you need fractional diff in pixel dpi (e.g. you want one screen at 1× and the other at 1.5×) it can kind of work, but dodgy - the 1.5× screen will have its windows rendered at 2× then downscaled, so won't be pixel crisp (and the unnecessary 2× render can push limits on old integrated graphics cards) If you need diff in text dpi, e.g. like setting Xrdb.dpi or gnome's Scaling Factor, then you're up shit creek (but with X11 to keep you company)
- Teknoman117 4y agoJust wanted to point out that rendering right before vblank has been in Weston (the Wayland reference compositor) for at least 6 years now. Even if Wayland was never fully adopted, I'm thankful for the work that was done to allow usage of GPUs outside of X11...
- emidoots 4y agoI recently tried switching to Linux with a few different distro's (Ubuntu, Elementary OS, etc.) and use Wayland. The thing that sticks out like a sore thumb to me, and which I've been unable to solve, is that apparently it's not possible to configure trackpad scroll speed. At all. From what I was able to gather, Wayland/libinput say they shouldn't be responsible for handling it and instead window managers should[0][1], meanwhile gnome says wayland/libinput should handle it[2] and ultimately - several years later - it's still not possible to in pretty much any Linux distro that uses Wayland(?) When I switch to my Linux laptop to test things, my trackpad is bonkers and I have to move my finger in like 1mm increments because otherwise I'd scroll like 10 pages in Firefox. It's infuriatingly frustrating. [0] https://gitlab.freedesktop.org/libinput/libinput/-/issues/185 https://gitlab.freedesktop.org/libinput/libinput/-/issues/18... [1] https://gitlab.freedesktop.org/wayland/wayland/-/issues/87 https://gitlab.freedesktop.org/wayland/wayland/-/issues/87 [2] https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/379 https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues...
- treffer 4y agoHuh, I am on Ubuntu 22.10 (current dev) and changed the track pad speed yesterday. I think it was part of the regular mouse settings in gnome.
- mort96 4y agoScroll speed, not cursor speed.
- commoner 4y agoI'm able to set the trackpad speed in both GNOME and KDE on Wayland with libinput. In GNOME, it is under Settings > Mouse & Touchpad > Touchpad Speed. In KDE, it is under Settings > Input Devices > Touchpad > Pointer speed. Do these settings not show up for you?
- mort96 4y agoThey're talking about scroll speed, not cursor speed. When using those high precision touchpads where you can scroll pixel by pixel (so not line by line scroll wheel emulation), it's impossible to configure the speed of that scrolling in GNOME, and on a whole lot of systems, it's insanely sensitive.
- giantdude 4y agoFrom https://wiki.ubuntu.com/Wayland https://wiki.ubuntu.com/Wayland "The X11 protocol was designed around running graphical apps across the network. While some people use this feature, it's far from common. Wayland drops this requirement as a way to greatly simplify its architecture." X client and server are usually the same machine, but they don't have to be. While on the road, you can use your notebook to open a Gimp session on your home machine and edit an image stored there. That is, the Gimp runs on your home machine while your notebook has the GUI. This is a lot to give up for cool compositing effects...
- mkl 4y agohttps://arewewaylandyet.com/ https://arewewaylandyet.com/ lists Waypipe as a kind of equivalent for that. I haven't tried it; does anyone know how well it works? It also lists FreeRDP and wayvnc.
- kirbyfan64sos 4y agoI've used it successfully several years ago, it was a bit rough around the edges but already worked well; I'd imagine that's only improved since.
- mccorrinall 4y agoI actually still use this feature a lot. I run some linux software on a server and can see the window on my main desktop without any need for rdp, vnc or similar. It’s really great!
- tryauuum 4y ago...and it's usually extremely slow, even if you are connected via 1Gbit wire. Edit: replaced 10Gbit with 1Gbit. And also I love using this feature even with all its slowness
- skykooler 4y agoOn the other hand, this works increasingly poorly as most desktop environments and software assumes there is no network involved (for example, last time I tried running Firefox over a forwarded X session I got a bunch of errors about a broken GL context). And you can do the same thing, with usually better results, by using VNC instead (and there are indeed VNC servers for Wayland, for example wayvnc).
- mkl 4y ago> KDE, I have heard mixed things about, but can’t speak to. Does anyone here use KDE on Wayland currently? How well does it run? What are the pain points?
- smoldesu 4y agoI'm using it right now on Nvidia. It 'works' for most Wayland/Nvidia things, but there are still a few things to note. The Good: - No weird xWayland flickering like GNOME - Desktop transitions never drop a frame, even with 1:1 trackpad gestures on my Magic Trackpad - The kwin implementation seems to be less picky/buggy than Mutter? Might just be my hardware config, but Wayland/Nvidia/GNOME would crash constantly for a number of reasons. It all came down to random gnome-shell segfaults that I couldn't debug. The Bad: - Compositing/alpha effects are somewhat broken (on GTK and Qt) - Sometimes a panel will stop responding or fail to render (or both) - krunner seems entirely broken Overall, I'd say it's running pretty well, and is probably better than GNOME for Nvidia users. Their work is cut out for them, and the Wayland-specific bugfixes are starting to roll in on a weekly basis. You'll probably have an even better experience if you aren't using Nvidia hardware.
- shmerl 4y agoI'd say for smooth desktop experience, Nvidia is a bad option in general (at least yet). They only very recently started caring about addressing Wayland support and a lot of things are rough becasue of that. Plus it will be a long time before their kernel driver is upstreamed, and a lot of the above depends on that. So I strongly recommend AMD for good modern Linux desktop experience.
- smoldesu 4y agoI agree, but that doesn't make it any less valuable of a metric. Nvidia cards are extremely widespread, reporting the performance on Nvidia hardware does a good job of representing what a lot of people will experience. Furthermore, Nvidia made inroads for Wayland support years ago, GNOME just refused to adopt it. Nvidia's terms were always that Wayland implimentations could adopt EGLstreams whenever they wanted, and that GBM would not be considered an acceptable alternative until it was faster. Their so-called hostility towards the Linux desktop mostly amounts to not contributing to GNOME and making their drivers proprietary for so long. In that sense, they're about as evil as webkit contributors who don't fix x86-linux bugs.
- kelnos 4y agoAs a fellow X11 apologist, this was pretty cool to read. It's nice to see that things are shaping up, even if there are still quite a few rough edges. Having said that, I'm still a die-hard Xfce user, and until someone makes an xfwm4-like Wayland compositor, and ports (at least) xfce4-panel and xfdesktop to Wayland, I'm not gonna switch. Edit: ok, looks like there's Hopalong (https://github.com/iridescent-desktop/hopalong https://github.com/iridescent-desktop/hopalong), so we're part of the way there, even if it's pretty new.
- bxparks 4y agoEvery 2 years I take Xfce (Xubuntu, Mint Xfce) for a test drive. It seems light and fast, I want to like it. Then every 2 years, I rediscover that the resize border on each window is 1px wide, which is completely unusable. When I google for a solution, the answer seems to be use Alt-Left-Mouse. I don't understand how that is a solution. I don't want to use 2 hands to resize a window.
- abdullahkhalids 4y agoUsed Xfce for a decade. I have never had trouble using the mouse to resize windows. I use 1080p screen, maybe you use a higher resolution and 1px is too small on that. If you right click the title bar of any window, to open a menu, from which you can select resize.
- kelnos 4y agoYeah, that's frustrating sometimes, and I don't even have a super hi-res screen. But I just live with it. Honestly I don't resize windows that often. I either use the window's natural size, or maximize. In the 18 years I've used Xfce it hasn't been a big issue for me.
- MichaelCollins 4y ago> When I google for a solution, the answer seems to be use Alt-Left-Mouse. I don't understand how that is a solution. I don't want to use 2 hands to resize a window. For what it's worth, it works very well one-handed on laptops, this is how I've used it for years and I greatly prefer it. The click target, that is the area you have to aim for with the mouse cursor, is much bigger than even the most absurdly thick window borders, so I find it much easier to use.
- shmerl 4y ago> Wayland wants every frame to be perfect. That means no screen tearing Such idea was quite central, but it still ignored some uses cases where tearing is acceptable for lowest perceived latency possible (competitive gaming and such). There is a current effort to address that: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/65 https://gitlab.freedesktop.org/wayland/wayland-protocols/-/m...
- rcarmo 4y agoI would love to see a minimalist Linux distro for ARM SBCs that shipped Wayland, river (or Sway) and foot as its default environment. I guess the interest just isn’t there.
- capableweb 4y ago> If you’re into Gnome, Wayland is probably a good experience today out of the box, even if you aren’t a power user. I'm not sure this is true, yet. I recently tried Wayland together with Gnome on a Arch installation, and seemingly applications need specific fixes otherwise they are kind of buggy. Firefox had bunch of issues out-of-the-box, that required some incarnation of right environment variables to work properly with Wayland, and seemed the same thing applied to other software as well. If I recall correctly, some other application was also behaving buggy/with artifacts, think it was maybe DaVinci Resolve but not 100% sure... For now, I'll just stick with Xorg that Just Works(TM), but I'll be back to try Wayland every now and then until it works perfectly.
- betwixthewires 4y agoI've been using Wayland with sway for about a year as my daily driver. I have xwayland also and a few applications use it, specifically I'm using dmenu because all the wlroots native menus are missing some features I need (why is there no text based menu in the world that can read from bash aliases and PATH at the same time?) and I've got to say, it runs perfect for me. Granted, my machine is mainly a workstation and I don't game really, the most I do is watch a video with vlc. But I have run into problems with game emulation, specifically running retroarch/libretro just doesnt work for me, I haven't dug into it yet. I have run Minetest and several quake 3 engine based games on it with no trouble. I'm probably going to build an Alpine or NixOS based workstation from scratch using Wayland and Sway at some point in the near future, this was an experiment with Debian I did that worked out so well I just kept using it.
- calvinmorrison 4y agoMostly, I just hate the treadmill. Over the last decade and a half I've written dozens of small tools, applets, etc to hone my desktop environment I use. Half of those have required patching, some don't work at all (like a nifty oneliner I used to kill of hung ssh connections by targeting the ssh process name, that no longer includes the ip or domain). I will use X11 until I can't - simply because I do not want to rewrite my tooling.
- capitainenemo 4y agoAgreed. I use xdotool heavily, ssh -YC quite a lot. underpowered devices... I'm going to stay on X11 as long as there are options. Thankfully, there are still plenty of options, FOSS seems good at that long tail. Just like MATE still offers me a nice simple desktop that doesn't even force compositing for the particularly wimpy laptop.
- vidarh 4y agoSame here. Nothing provided by Wayland gives me a compelling reason to switch as long as X11 keeps working for me.
- jgb1984 4y ago+1, I'll stick to X and openbox as long as I can
- mftb 4y agoThis is a good article, one of the best in this vein that I've seen. The author clearly had some features that he really needs from X and has been tracking their progress under Wayland. If you find yourself in a similar circumstance, I think it's a good read. My own experience was different. I came back to Linux as a daily driver after years away. I bought a machine expressly to be a good Linux workstation and set it up from scratch. So for me the new stuff (Wayland (via Sway), Pipewire, etc..) has simply been excellent. I just didn't have the legacy issues to deal with that other people have.
- Cloudef 4y ago>Most of the compositing logic is actually handled by a library called wlroots, a project that spawned from sway wlroots is actually fork of wlc, but i dont think theres any original wlc code anymore, but my name seems to be in the LICENSE file still :)
- DC-3 4y agoHey, I recognise you! You're the bemenu guy! I must admit I recently swapped `bemenu` out for `tofi` but I did use it for several years and it worked well, so thanks for that.
- marcodiego 4y ago> Part of why I’m feeling the urge to transition to wayland is performance benefits Great. I don't think I'll miss any X11 feature. I'll probably update my 9 year old laptop to something with wayland next year.
- zeotroph 4y agoCan someone address various criticism, possibly slander of Wayland, along the lines of "well it works now, but it is already outdated"? I can't remember were I read it, but among the claims were that it is too closely coupled to GNOME, and various things like fractional scaling, apps having to provide min/max/close buttons/decorations, or window shading not being in the core protocol because of that. Also - and more seriously - the rendering was claimed to be based an outdated/wrong model meaning GUI applications can't detect and optimize for things like when to render or not, e.g. make decisions based on refresh rates or not being focused, resulting in performance or battery life problems. The other point about missing native network support I can dismiss myself, but for the others I am not knowledgeable enough.
- necovek 4y agoThe pet peeve of mine is lack of subpixel rendering: if you move from X to Wayland, it's hard to get used to fuzzy fonts. Then again, recent MacOS versions have also dropped it, and I couldn't stand fuzzy fonts either (and so much for their screens being "retina" screens). At least this is coming to Wayland :)
- jrm4 4y agoWait, what? Longtime Wayland hater here and I literally thought this was one of the things I could expect Wayland to be better at.
- csande17 4y agoIn order to do subpixel font rendering correctly, the application needs to know about the subpixel arrangement of the display hardware. So it falls under the same category as things like color management, which Wayland also doesn't support; they just didn't standardize an API to provide that information.
- ddevault 4y agoWayland has definitely provided subpixel layouts to applications for years: https://gitlab.freedesktop.org/wayland/wayland/-/blob/main/protocol/wayland.xml#L2564 https://gitlab.freedesktop.org/wayland/wayland/-/blob/main/p... Whether or not applications are making use of it might be a different story.
- csande17 4y agoAh, thanks! I was more familiar with the color management situation than the subpixel anti-aliasing situation.
- emersion 4y agoWayland does send subpixel info to clients for thus purpose. See wl_output.
- thristian 4y agoI've tried to use Sway a number of times, and the biggest reason I keep bouncing off it is environment variables. There's a bunch of environment variables I want set for every process in my desktop session, from basic things like $EDITOR and $LD_LIBRARY_PATH to more complex things like $MOZ_USE_XINPUT2 or $SSH_AUTH_SOCK. When I use i3 under X11, gdm runs my ~/.profile script so I get all my standard login environment variables, then it runs ~/.xsession so I get all my GUI-specific settings. There's also some integration with systemd so that the SSH agent can set $SSH_AUTH_SOCK and have it show up in my terminals. With Wayland/Sway, none of this works. gdm does not execute ~/.profile, and there's no equivalent to ~/.xsession. Something starts a user-level systemd instance, but its environment variables aren't synced to the compositor, and the compositor doesn't use it to start apps, so $SSH_AUTH_SOCK isn't available in anything I care about. Having an SSH agent seems like such a basic feature, but it doesn't work for me and I can't even imagine where I'd begin to look for the problem, or for documentation to learn more about it.
- noahtallen 4y agoDefinitely agree. It took several days to figure out the exact environment variables needed to get basic applications working and scaling properly. For example, if you want “click link and open it in default browser” to work in, say, Slack, you need environment variables to get it working. And since (like you say) basic profiles are not executed on startup, it’s very difficult to fix anything. I completely disagree with the Sway author’s approach to go batteries excluded for the project. It means that next to nothing works out of the box, and that you either have to put in hours of work to fix undocumented things, or rely on a distro to package everything exactly right. And there really aren’t any distros packaging Sway right now. Sway would benefit from integrating more of these things out of the box and it should rely much less on end-user configuration and other software to accomplish basic desktop behavior. One excellent example is that you need a separate Lock Screen app like swaylock to lock your computer. And since you’re in charge of configuring all its settings, it’s difficult to know if you’ve done something insecure. Otherwise, I really enjoyed using it.
- rogers18445 4y ago
- mberning 4y agoI do appreciate this stuff and actually enjoyed doing it as a teenager. But reading this made me realize why a macbook pro is so very worth the money.
- jonas-w 4y agoUsing sway on archlinux, the only problem with wayland i have is Java/Jetbrains Products and the lacking support for native wayland. The rest works the same as on x11 for me (or better).
- vlovich123 4y ago> So what you do is, you keep stepping this number up 1 millisecond at a time while playing a smooth animation, until you’ve eliminated any stuttering in the animation. And now you have done something X11 cannot do- eliminated screen tearing with the absolute minimum latency cost possible. This should be a debugging tool, not something and users should have to do. The system should have a software PLL control system to make sure the rendering starts at the last possible second and not later. Also, it should be using current mouse pose + velocity to predict where your mouse will be at display time although that may be harder with generic x86 architecture - not sure there’s any software knowledge of what the display scan out time is as it can depend on the physical properties of the display.
- pGuitar 4y agohaven't had issues with Wayland in a while... my last issue was with my screenshot app Flameshot... but it has been fixed... my only two problems now is that I wish that Flameshot would support some other service besides IMGUR and I also wish that it could record animations/videos ;)
- throwaway892238 4y agoIs there a single Wayland supporter who finds the user experience to be better than X11? Because my understanding of Wayland is that the only people who want it are gui devs.
- klysm 4y agoThere seems to be an effect here where if GUI devs are developing new stuff on Wayland, eventually it will be the better UX.
- deleted 4y ago[deleted]
- mannykannot 4y agoI don't know whether you would call the author a supporter yet, but from the article, with respect to an issue that matters for gamers: "And now you have done something X11 cannot do - eliminated screen tearing with the absolute minimum latency cost possible. "This [is] fantastic.... And like, this is the first time I’ve ever seen the vsync setting in a game actually sync the game up with the vblank interval in a way that matters. It works for games in wine. It’s amazing. I have never experienced gaming on Linux that looked this smooth in my life."
- bubblethink 4y ago>Is there a single Wayland supporter who finds the user experience to be better than X11? The immediately noticeable improvement with wayland is with respect to screen tearing, especially in multi-monitor rotated configurations. Screen tearing has always been an issue on x11, and while intel/amd drivers do a decent job in basic cases, things that don't work will likely never work given that x11 is mostly deprecated.
- kelnos 4y ago> Screen tearing has always been an issue on x11 Screen tearing has not been an issue on X11 for like... a decade? Granted, that's after development on Wayland started. Also I just don't get this obsession with screen tearing. I've experienced it on occasion in other context and I... just kinda don't care about it? Certainly if you're a video editing/creating/whatever professional, it actually matters for your job, but otherwise it's just cosmetic, and often hardly noticeable at all.
- TheDesolate0 4y ago
- bsder 4y agoFor starters, I do agree that the X11 model is fundamentally broken on the modern computing platform. However, sadly, I'm beginning to think that Wayland has made some fundamental architectural choices that are not fixable and are also broken on the modern computing platform. The biggest problem is that Wayland takes the "compositor" route and turns it up to 11. Unfortunately, nobody does multi-window compositor to application integration well--Apple is the best, but by no means good. Even Windows drops to software rendering on resizes and actually integrating with the compositor needs a whole host of new Windows calls that nobody ever uses. The whole "You need link a library and draw your own decorations" is, put simply, ludicrous. You don't draw them on Windows, macOS, iOS, or Android. Yes, that means you can't change your window manager, so be it. Look at the contortions and dependency chain that the winit package on Rust has to keep in order to communicate with Wayland. The fact that I need 50,000 lines of code called wlroots is nothing short of a travesty. Even if I use a language which is much better for security, that 50,000 lines of code is a shambling security disaster that will bite me in the ass. And that's before we start talking about some of the architectural design decisions made in wlroots. The design decisions are so anathema to something like Rust that people have given up and been forced back to C: http://way-cooler.org/blog/2019/04/29/rewriting-way-cooler-in-c.html http://way-cooler.org/blog/2019/04/29/rewriting-way-cooler-i... (Side note: this is one of my perennial hot buttons, and Wayland isn't the only guilty party. "Everybody Wants To Rule the Event Loop" by "Tears for Engineers" has become ingrained in programmers, and it's a BAD thing. Event loops don't compose and you wind up with callback hell trying to put two of them together. Polling does compose (ie. “readiness” rather than the “completion”), but it's a lot more work on both sides of the programming equation--the application and the library--to get it right.) There's also some strangeness about hiDPI and scaling in Wayland that just seems to be wrong. But maybe my brain's just too small, and I don't have enough context--it wouldn't be the first time. Of course, it's easy to armchair quarterback and difficult to construct. This is hard, grungy work and the Wayland guys are putting in the elbow grease. Until I'm willing to pick up an editor, my opinions aren't worth much. Overall, though, I see myself staying on X11 until I simply can't anymore.
- kouteiheika 4y ago> The whole "You need link a library and draw your own decorations" is, put simply, ludicrous. Isn't that simply because of GNOME, where they refuse to support server side decorations[1]? [1] -- https://gitlab.gnome.org/GNOME/mutter/-/issues/217 https://gitlab.gnome.org/GNOME/mutter/-/issues/217
- jrm4 4y agoFor me, further confirming at how badly planned Wayland was/is. I keep hearing that there was no way forward other than "scrapping X and starting over" but given the extent to which X still works just as good, if not better -- I just don't believe it. Someone forgot "never break backwards compatibility" and it CONTINUES to show.
- bhedgeoser 4y agoThe problem with wayland is that it doesn't have a killer feature and a lot of anti features (performance). I couldn't care less about this X11/wayland debate as a user.
- cesarb 4y ago> The effort you need to go through to actually use these depends on how your distribution handles the file permissions of /dev/uinput. Some of them have it as root:input, in which case you just need to usermod -a -G input <yourusername> and then relog to get it working. Others have it as root:root so you either need to go do some reconfigurations to change its permissions or live with running the software using it as root. There's a trick to that. The TL;DR is "install the steam-devices package or similar" (https://github.com/ValveSoftware/steam-devices/ https://github.com/ValveSoftware/steam-devices/), which adds the following udev rule (and others, but this is the relevant one): # Steam Controller udev write access KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput" This does some udev magic to add an ACL to /dev/uinput allowing the currently logged in user to write to it. Its effect will be something like: $ getfacl /dev/uinput getfacl: Removing leading '/' from absolute path names # file: dev/uinput # owner: root # group: root user::rw- user:cesarb:rw- group::--- mask::rw- other::--- The reason Steam has that udev rule is for something really cool called Steam Link, which allows you to use your Android phone, through your local network, as if it were a joystick for your computer. For some games (and its own user interface, which switches to a simplified "big picture" mode when you connect that emulated joystick) it does it directly without going through /dev/uinput, but for other games (which read the joystick input directly, without going through the Steam libraries) it sends the emulated input through /dev/uinput.
- kxyvr 4y agoI'll ask here in case anyone knows: I actually needed to move from Wayland to X11 on the new Framework laptop because of problems with the touchpad, which I believe uses libinput in Wayland. It appeared as though small motions of the touchpad weren't registering and seemingly no amount of fiddling with the libinput parameters helped. I moved to X11 and the synaptics driver and have had zero issues. I'm not really looking for tech support, but I am curious if anyone else has had similar experiences. This was the final issue that pushed me off of Wayland and back onto X11.
- stagas 4y agoYes, that's the only reason I can't use Wayland as well. The touchpad becomes unusable and as I'm only using that for my work, it's extremely frustrating. Can't seem to be able to aim at anything, tried any configuration possible. Wheel momentum is gone also and doesn't pick up micro motions as synaptics + X11 do. The screen looks great though, graphics and motions feel much better, it's amazing to look at, but it's unusable.
- kelnos 4y agoOdd, I was just playing around with Wayland today on my new (12th-gen) Framework laptop, and I didn't see the issue you describe. I also use the libinput driver on X11 without issue.
- Shorel 4y agoThe thing I dislike about Wayland is: Sometimes the server will crash. Video drivers or something. Hasn't happened much with 22.04, but used to happen more frequently before. Both with Intel and AMD. When this happens in X11, the server restarts, I see the screen go black for an instant, that's it. When this happens in Wayland, all my open programs are killed. No save prompts or anything, just insta-killed. This makes Wayland unusable unless they can guarantee no crashes, ever.
- foxhill 4y agoi really want to support Wayland. X has done us well, but it's about time a protocol based around more modern situations supplants it. Wayland has a myriad of these sharp-edge cases which i also find each time i try it out. what worries me a little is that some of them are clearly design decisions with no simple remidiation, your crashing example (which i have also witnessed first hand) is one of them.
- thrwawy74 4y agoI think currently we have compositors that are monolithic and due "it all". Sounds like we'd need a separate process to maintain window state, that the compositor interfaces with. is this recreating some of the problems of X11?
- account42 4y agoPerhaps a better approach would be to make sure that clients can wait for the server to restart and reconnect. Then you don't need any crash-proof server part.
- rhn_mk1 4y agoTo be nitpicky, if the X server crashes, you're just as hosed with X as with Wayland. The difference is that X survives a window manager crash, whereas Wayland typically does not, because on Wayland it's usually the same process as the server.
- shmerl 4y agoIf you have a GPU hang and reset, X11 isn't going to be any better. There is some WIP to make recovery from GPU hangs more robust. It's not there yet. * https://www.youtube.com/watch?v=fRdnRwPBFBk https://www.youtube.com/watch?v=fRdnRwPBFBk * https://invent.kde.org/plasma/kwin/-/wikis/Restarting https://invent.kde.org/plasma/kwin/-/wikis/Restarting Though I'm not sure what's the current status of that is or how actively it's progressing. Hopefully it will turn into something usable, it's important.
- foxhill 4y agoi agree with a lot of this; > I was not happy so see that my mouse felt laggy i also noticed this immediately and it was infuriating. my display runs at 240hz, so there must be at least 2, maybe even 3 frames of latency for it to be noticeable. it's made more perplexing that wayland was supposed to represent a reduction in latency. > Out of the box, there’s a bit of that in wayland too, but sway has a way out: max_render_time. this is possibly the worst way you could reduce input latency - mostly because of the tail-end of render times will be the most noticeable and the worst performing - please never do this unless you're trying to make your users inexplicably angry :) > when really, other X servers exist, and have varying degrees of support for the extensions Xorg supports a non-point here from me but i only know of XOrg and Xfree86, and i think the last time i tried that, linux kernels started with a two.. :)
- chrismorgan 4y agoYou’ve got ones like VcXsrv on Windows, which was particularly handy for running GUI stuff in WSL a few years back (before Microsoft provided a first-party solution in WSLg).
- badsectoracula 4y ago> a non-point here from me but i only know of XOrg and Xfree86, and i think the last time i tried that, linux kernels started with a two.. :) There is also Xenocara, but that is OpenBSD's Xorg almost-fork (they do track updates but also apply their own modifications).
- viraptor 4y ago> arewewaylandyet is a good starting point Annoyingly, they're out of date and ignore PRs, so not the best source of info.
- rawoke083600 4y agoTL;DR of comments X works 6 out of 7 days of the week. Wayland works 4-5 days of the week. My 2c I still use X/i3 most things works without too much fiddle, whenever i try wayland less stuff works.
- jcynix 4y agoOne upon a time (or long forgotten concepts?) there did exist a window system with full client-side scriptability, .i.e. it implemented what nowadays is "the browser as a thin client" with Javascript for client-side rendering: Gosling, James; Rosenthal, David S.H.; Arden, Michelle J.: The NeWS Book: An Introduction to the Network/extensible Window System NeWS used Postscript as the language for client-side tasks. Seems it was way too early for this good idea at that time. https://books.google.de/books/about/The_NeWS_Book.html?id=DdbvBwAAQBAJ https://books.google.de/books/about/The_NeWS_Book.html?id=Dd...
- teddyh 4y agoNeWS was also proprietary to Sun Microsystems, unlike X11, which was free software.
- themoonisachees 4y agoI'm an obligate kwayland user because x11 apparently cannot keep up with both gaming and having 2 monitors. When playing tf2, a game that came out in 2004, i used to get very hard stutters on x11 that i never managed to exactly track down (ie not immediately visible in whatever monitoring tool you can think of) but on wayland i have no such issue, with everything else the same. Apparently this is an x11 problem som users encounter with multiple screens, i just happen to have a gpu powerful enough to not see the stutters until a game is using all the bandwidth.
- agumonkey 4y agoPardon the question, but won't http/html/css/js (or whatever set of things replaces that) be the new network transparent graphical programming now ?
- sph 4y agoOnly for programs written in http/html/css/js.
- jillesvangurp 4y agoManjaro uses Wayland with Gnome out of the box and I've been using it for nearly a year on and off. I have a cheap Samsung laptop that I bought to run it which replaced a broken macbook that I've since replaced. I used Manjaro as my daily driver until recently. Mostly I'm pretty happy with it. Gnome isn't perfect but it is widely used. With at least some distributions now defaulting to Wayland (usually with Gnome), things are getting usable. So, I just went with path of the least resistance and ended up with a usable laptop. The touchpad configuration is indeed a bit sucky in Gnome. I actually connected an Apple magic touchpad at some point (version 2). Aside from the bluetooth support in Linux (which is pretty terrible and seems to not work reliably), it worked really nice with this setup once I plugged it in with the usb cable. That made me realize an important thing: most non Apple touchpads are pretty terrible and need extensive software hackery to compensate for just how terrible they are. The quality of that hackery varies widely between different drivers and hardware suppliers. The Apple touchpads are great on Linux; on par with the experience on MacOS (aside from bluetooth, which is nowhere close to that). In the end, I bought a wireless mouse and problem solved (after jumping through some hoops to get that working). But technically these are not Wayland issues. And things like screen sharing in various video call tools needed a bit of work before they started working. This too is technically not a Wayland problem but it is bloody inconvenient if you are trying to attend meetings for work. I eventually managed to sort these issues out and have used meets, ms teams, slack, cisco webex, zoom and probably a few others. I struggled with Discord. Generally the biggest issue in this space is just the wide variety of independent and poorly integrated stuff that all needs to come together for things to work flawlessly. You need a login thingy, a window management thingy and a compositor. And then you need various cruft for making the sound work, Bluetooth, and all the rest. And they all point fingers at each other when things don't work. Getting recent versions of these things definitely helps though. So use a Linux distribution with rolling updates. And use something more mainstream. With X windows this is actually the same deal except the dust has kind of settled after a few decades to the point where it mostly just works or fails in ways that can be fixed with a few text file tweaks. So, Wayland has probably gotten to the point that with the right hardware, things mostly just work. But your mileage may vary. But that has always been that way with Linux.
- WastingMyTime89 4y agoCan someone explain to me why Linux users seem to like arguing about purely technical pieces of their system like the init manager or the compositor as if it significantly affected them? It’s something I have always found strange.
- bowsamic 4y agoBecause the draw of the system is the technical setup even more so than the end user experience. For a lot of Linux users, liking how the system is constructed technically is more important than actually doing stuff on it
- onli 4y agoPlus, it affects them significantly. The switch to pulseaudio meant the support forums were filled with people that had no sound. Because the newest ubuntu activated wayland, Teams could not share the desktop anymore, the web app. So it is necessary to know about the technical details to fix the problem (switch back to alsa and X, for example)
- itvision 4y agoIt's far from purely technical. Wayland destroys backward compatibility, destroys everything we knew about the graphics subsystem, offers to work with graphics in a different totally new way which results in a ton of concessions. A lot of Linux users do not use either Gnome or KDE and outside these two DEs, Wayland is a total PITA to use. I'd say it's just broken.
- kaba0 4y agoThis is the extremist take without any nuance that causes these flamewars without any good reason. Nothing factual, just hearsay dramatized to the max. Wayland is backwards compatible, it literally has XWayland which is a completely transparent way of running any X application (with the caveat that these X apps can see each other, so not all of the positives of wayland apply). Wtf, graphics subsystem? Wayland implementations use the standard kernel DRM interface - if anything xserver was always a red herring here with proprietary blobs for nvidia being part of the program itself, instead of being a separate driver.
- maayank 4y agoAnything like regolith desktop for sway?
- sampa 4y agoWayland on Gnome is no-go for me. My desktop runs for weeks and I often Alt+F2: r[estart] Gnome, cause of memory leaks and sluggishness. On X11 it is painless, since it doesn't affect my running GUI programs. On Wayland it kills everything. Too bad.
- greatquux 4y agoSame here. I need to restart gnome shell everytime I update an extension for some stupid reason, but it's easy and I don't lose any work. This is a sucky design decision that is just a showstopper for me. I wish it the best I guess...
- AltruisticGapHN 4y agoI am one of those people that has been watching Valve's support of Proton and Steamdeck, and already familiar with Ubuntu for development... and now considering leaving Windows behind for good. So far my experience with both development and gaming is good, however I find that in order to control the NVIDIA GPU (a GTX 1080) - I need software like GWE to set the power limit, and fan curve... and for whatever reason these do not work in Wayland. I wish I could use Wayland though - I did notice the desktop feels smoother. Can we switch now? Are there forks of GWE for Wayland? Or do we still need to wait months/years until these tools show up? PS: if I upgraded my GTX 1080 to an AMD card, would I have apps to control power limit / fans on Wayland?
- karma_fountain 4y agoI have a GTX 970 and the Wayland experience was full of stuttering and glitchy windows. Had to install x11.
- Ridir 4y agoExperiences vary. Without having to do any extra hacks Wayland has run flawlessly on my ancient GTX660Ti for years.
- bloopernova 4y agoI left windows behind when my preview program instance was upgraded to windows 11. I loathed the advertising that was encroaching into what felt like every aspect of the GUI. I moved to Fedora and haven't looked back. This coincided with me no longer playing a lot of PC/Windows games, so I haven't missed many of them, and there's a great many that work great in Steam/Proton.
- AltruisticGapHN 4y agoWhat tool could you use in Wayland to move and resize windows around, but custom? Sort of like a simple autohotkey script? I don't like tiling apps. But I'd like something where I can press a key to have my current app window moved to exactly where I want it x1, y1, x2, y2, and then that way I can stack all of them in the center of my screen. It helps me focus.
- vegai_ 4y agoNot sure how people use X11 anymore. Every time I try it, it seems to be horribly broken in some small ways, whereas Wayland just works. Could be that my hardware is too new or weird.
- eternityforest 4y agoI probably won't care about Wayland till it has full parity with X11. And that includes global keylogging and screenshotting. Obviously some kind of security mechanism would be needed so not just any program can do it, since that seems to be the point of Wayland, but I'm not a fan of just killing use cases and creating a mess of incompatible servers and optional features.
- moffkalast 4y agoThey still need to merge with Yuteni to achieve their full potential.
- Hitton 4y agoI stopped reading at the suggestion that ydotool "provides xdotool functionality in a more generic way". Seems like author uses "x11 apologist" epithet just for the sake of catchy article title without recognizing any areas where wayland lacks basic functionality.
- qwerty456127 4y agoWe have X11 apologists but no X11 developers. We have Wayland enthusiasts, Wayland is backed by major players but still won't just work nearly as nicely as X11 does. Isn't it already well over a decade that we are stuck in this situation?
- sylware 4y agoFrom a programming point of view, do not make one of the biggest mistakes of x11: keep wayland code statically linked, do not create zillions of client libraries and then depends on their ABI. Wayland is so simple anyway, that would be kind of ... The only "fake" exception is xkb, since it is not part of wayland, client-side keyboard key symbol resolution has to go thru libxbkcommon ABI because you don't know where the data files are, unless a standard environment variable is defined, and you cannot be sure the format of those data files would be working with your code, unless the format and file hierarchy of those data files is simplified and posix-ized/iso-ified for forever namely _without_ versioning. Since I play games on elf/linux, my main issue is the steam client without wayland support, not even a wayland->x11 fallback (they don't even have a vulkan->GL->CPU fallback, not to mention the 32bits code...)
- snarfy 4y agoDoes anyone run SteamOS as their primary desktop? It runs wayland and am curious how polished it is.
- reisse 4y agoPerhaps a minor nitpick for most of the people, but for me a big problem with X11 was that hotkeys fire on key-down, not on key-up. Because of this, you cannot really use Ctrl+Shift to change input languages - it interferes with another hotkeys which start with Ctrl+Shift+... The response on X11 bugtracker from ~2007 was "xkb is old, we don't want to touch it, let's see if any alternatives will fix it in the future". I hoped so much that Wayland would fix that... but no.
- checkyoursudo 4y agoI just tried using Wayland/Sway an hour ago. I guess you still cannot really use proprietary drivers? It wouldn't work for me, anyway; not even with the command line option to ignore my heresy. I'd like to use Wayland. I have used it with Gnome on Fedora on my wife's Surface Pro 8, and it was really nice. Maybe sometime in the future.
- ElCapitanMarkla 4y agoI don’t mind Wayland but one of my key tools is the virtual KVM Synergy/Barrier which doesn’t have Wayland support yet - https://github.com/debauchee/barrier/issues/109 https://github.com/debauchee/barrier/issues/109
- fnordpiglet 4y agoVery informative