If you are coming from i3 the move to sway is a no-brainer and works great (sway is wayland only). Firefox, thunderbird, Libreoffice all work great and look great, i.e. sharp when you need scaling for example. Sway is to thank for base work they did for other distros like a wayland clipboard protocol all the others are using.
Second comes Gnome. No issues. Gnome laid the gruntwork of porting gtk3 to wayland which works great.
Third maybe KDE. Still two years to come. KDE plasma is suffering from arguably better design decisions like client side decorations vs. Gnome serverside decorations but as many users use GTK based apps those GTK apps do not yet play nicely with the KDE design decisions. As such the brave KDE folks have to implement things themselves while those relying on GTK are done. QT is fine with wayland but not everything is QT.
That's all only true if you are not using NVidia hardware.
It may work great, but it's not as well packaged by/for upstream as i3.
I recently started running wayland+gnome (rather than i3) on my Ubuntu 18.04 at work - because less bad support for fractional scaling looks a bit better on my two 24" with different dpi.
But there didn't appear to be a "no effort" way to install sway (yet). Especially not with automatic (security) patches.
I'm hopeful it'll be in 20.04?
They'll generally be frozen at the point 18.04 was frozen - so api and versions from 2017 or so. With 20.04 around the corner, I'd rather wait than faff around.
I was thinking of waiting another year to jump as I'm having no issues with i3, what are the advantages?
Then there are the wayland advantages: very little screen tearing if any, no blanking the screen when connecting to a new display, better security properties.
There's disadvantages as well. There's no xdotool support, and if you want to use any sophisticated keybindings or remapping keys, you'll be forced to rely on Sway's configuration language to do that for you. On i3 I was able to bind ctrl_r to right click, but that is — as far as I know — not possible on sway without rewriting the libinput event stream, which is very painful.
There's no xdotool support
Have you looked at ydotool?https://github.com/ReimuNotMoe/ydotool
Also, do you know about the "i3 Migration guide"?
Also not exactly maintained
>Since Jun, 2019, I have little time to maintain this project because I'm striving to start an undertaking (instead of working 996).
Personally, the one real gain I've read about previously is no tearing when watching videos or scrolling fast and security improvements. Also now these Firefox performance improvements. But that's about it.
Are there any other benefits that a normal user would see?
Finally, my Ubuntu box has screen tearing all the time. I'm on good hardware with pretty standard 1080p monitors so I've been absolutely baffled that screen tearing is so frequent in standard desktop use.
I think Wayland is supposed to have better support for various DPI settings and mixed DPI settings.
I would be surprised if this weren't as true in 2030 as it is in 2020.
The OS with the best isolation primitives is probably Solaris. It would be hilarious if 2020 Solaris was still better than 2020 Linux.
Sure, if your adversary is some literal hacker. But you also have to worry about legit companies that use aggressive "analytics". VSCode most likely logs keystrokes. It would suck if it also logs keystrokes that you type into other applications.
Your point still stands, though.
* Fractional scaling of monitor outputs
* Multi-touch gestures for e.g. switching desktops
* Security sand-boxing of apps
* Tear-free video
As the original link shows, though, the architecture has much better abstractions for software engineers to work with so developer quality-of-life is improved, too.Because X is deprecated. The question isn't Why switch to Wayland, but When. You have mentioned some benefits too.
About shorcuts, I also like having the GUI there to configure the keyboard layout (like set capslook as Escape) rather then edit xorg configs. Also it makes sense to have a section for Global shortcuts and a section for regular shortcuts. If you do not know what Global shortcuts are maybe you don't need them.
Probably GHOME users complain about Firefox's "about:config" because it has too many options and their brain can't fit that many options. The point is the distro gives you some defaults and if you are competent(you know to read and use google) you can change the distro defaults. if you are not competent you find the distro that looks cool and use it as the developers intended and adapt to it not it to you.
Anything hidden in Tweaks or about:config like settings can be classed as "here be dragons".
That's one reason GNOME has less settings (not the main one). Less Settings = less to test, less to support.
I am a developer and I understand the part of more coptions and more code paths means more things to test, but with robust code it is not a big deal. Imagine the wallpaper would be hard coded because the developers are lazzy and won't test with a different wallpaper. As a person with dsabilities I contributed a few patches and it would suck to have them rejected because I would need to bring a proof that there is a majority of users that need those things addressed.
Anyway i was not complaining about GNOME removing options or hidding them but complaining that some insecure person for some reason had to complain about KDE into a topic about Wayland support.
I don’t think it’s supposed to be an upgrade from the users perspective, just a new display driver. Maybe a few new native things like rotatable windows etc which if exist in X11 are probably emulated.
X11 by modern standards is a shitshow of dirty hacks, I spent the weekend researching ‘how can I not have notifications pop over my lock screen using openbox and any composite manager’ and it ended up in the top hard basket. Also repeat this story for screen tearing, DPI, acceleration, weird bugs, etc etc.
Wayland is maturing which is nice, but you really won’t notice many changes, but youll be much cleaner / less buggy in the long run.
Edit: to me, it seems like wayland isn't fundamentally better. It's just a "new and improved" version of the same system architecture paradigm X is built with. I'd be more interested in something that follows the 'everything is a file' paradigm that made Unix so great to begin with.
This isn't true.
Current downsides: worse support for screen recording/sharing (e.g. not supported in Skype), a bug in the compositor (e.g. GNOME Mutter) can bring your whole session down, not-as-good NVIDIA support (also depending on the compositor).
I have been using Wayland for two years or so an wouldn't want to go back. I do miss wide screen sharing support, because I am working remotely and Skype is the primary means of communication.
permit setenv { HOME LC_ALL TERM XDG_RUNTIME_DIR WAYLAND_DISPLAY } greg as root
and I can just run 'doas wireshark'.
Eg previously I would execute DISPLAY=:0 mplayer foo.avi to play remotely or ssh -X root@foo xcalc to display xcalc on my local monitor but execute on rhost
What if i want this as a feature? Does wayland allow this per app?
A malicious application on your host can still do anything at the executing privilege level (read .ssh, inject malware into .bashrc) but can’t sniff your gksudo password
I know this is not how security works (a theoretical hole is often as bad as a practical one) but it's a bit like saying you should have antivirus software, to which I might say: where are the viruses?
People care about docker escapes so they’re getting more difficult, at least.
Edit: Plus, I’d rather $app_i_dont_fully_trust be sitting in a container rather than on my host. And no, not running apps i don’t fully trust is not something which is at all viable for me.
True for Gnome, no issue for KDE. Their arguably better design decisions led them to proceed slower though.
I hear other configurations have more issues.
1.:https://www.phoronix.com/scan.php?page=article&item=gnome-32...
In fact Weston since 2015 has had a clever delay algorithm that allows clients to hit the very next frame if they sync to presentation-time feedback:
https://ppaalanen.blogspot.com/2015/02/weston-repaint-schedu...
(And Sway has a configurable delay; since Sway is so simple to render, the recommended max_frame_time value is 1ms — i.e. the compositor has the very last millisecond before vblank to composite, and everything before that is for the apps.)
Not really fair to compare with non-vsync systems — tearing is completely unacceptable ;)
I still don't understand why I need Wayland.
So, if you think about what the tearing is it makes sense, your getting a partially drawn frame because the application didn't provide the full frame in time for the vsync, waiting to display the update for and additional one or two frames simply to assure a complete frame can only slow things down.
Core Xlib is entirely ignorant of vsync or anything relating to completed frames. It's an immediate mode rendering model in that everything you draw just gets thrown on-screen by the display server whenever.
Compositors were then bolted on w/redirect and damage extensions and basically randomly snapshot the client window contents before compositing a desktop frame, within that snapshot you can easily have tearing of half-drawn updates.
Further extensions and hacks have tried to fix this like Present and frame clocks from the gtk/gnome folks, but it's all opt-in by X clients and non-uniformly supported by compositing WMs or not at all in classical non-compositing WMs where the X server just draws things directly on-screen as the protocol requests arrive from clients.
You clearly don't know what you're talking about.
I tried using it over a decade ago on XOrg and it didn't seem to do anything useful...
[0] https://www.x.org/releases/X11R7.6/doc/libXext/dbelib.html
Edit:
It's definitely there in the Xorg xserver [1]. My memory is fuzzy as it was a long time ago but I distinctly remember wasting a day trying to use this extension and becoming frustrated with its ineffectiveness. Maybe it was just for lack of any vsync mechanism to schedule the swap?
[1] https://gitlab.freedesktop.org/xorg/xserver/-/tree/master/db...
This is kind of a joke answer but the real answer is: This depends on the compositor you're using. So Wayland may not be network transparent, but it's possible to implement equivalent functionality on another layer of the stack.
On the other hand it turns out streaming video is super easy, entirely agnostic of the actual rendering stack in use, and not really that expensive in terms of bandwidth anymore.
regarding the video streaming: meh, i can do X forwarding out of the box with just ssh, mostly out of the box, no other software required.
If you use Nvidia gpus don't bother.
- Apps which use toolkits like GTK and QT will “just work” since they did the porting grunt work.
- X11 apps can run unmodified using XWayland but this just runs an X.org server and directs the output.
But the literal answer is “no”. Wayland and X11 are incompatible and apps will need to port.