5 ms·
Not sure what have I missed but how is X window system a "friendly design"?
by anhanhanh 5y ago
Not sure what have I missed but how is X window system a "friendly design"?
- nsajko 5y agoFriendly compared to Wayland. X Windows offers many features that the designers of Wayland decided to exclude to keep their protocol simple, and for some security theatre reasons. But this simplicity is deceptive, as it means that implementing all the excluded features, and deciding on relevant interfaces, is left to the Wayland compositors. This is the reason "Wayland" (or, more correctly, Wayland compositors) still miss many important features that are * expected by users of X11, Windows, or Mac * expected by power users * needed by the visually impaired And it is also the reason why the Wayland ecosystem is destined for horrible fragmentation of interfaces, features and implementations. Another consequence is that the X11 model of having the possibility of easily making a window manager to one's liking is not possible with Wayland, as compositors are monstrous beasts compared to window managers. I also wrote about all this in some of my previous comments, e.g. there was a large thread here: https://news.ycombinator.com/item?id=24886074 https://news.ycombinator.com/item?id=24886074 EDIT: there's another perspective to this that I didn't express very well, so here are some quotes from Arch BBS: By user neosix: > You can't send keystrokes, move mouse, move windows, you can't even get active window. And all that because of security? > But guess what it's not safe walking down the street, something can kill you, so let's just stay in the house and never go out again :) By user Trilby: > While I place a very high value on security and well designed software, the strategy of saying "you shouldn't want to do that" is not a sane policy. Yet this has been the approach of wayland from the start. Can you have a system panel? No, you should not want to have one. Can you have one client talk to another client? No, you should not want to do this. Can you turn on your computer and do anything even remotely productive with it? No, you should not want to be productive: here, watch a cat video. Emphasis mine.
- taway098123 5y agoThat's not a Wayland problem. The features you're asking for are probably still there but they're implemented at a different spot in the stack instead of trying to stuff everything into the same protocol like in X11. This is actually done to reduce fragmentation. Make a service its own daemon with a dbus interface or something like that, and then it can run the same on X or on any Wayland compositor. In my experience it's actually the simplicity of building window managers in X11 that's misleading. It's easy to get something up and running that lets you move windows around, but to build a full desktop that does everything you'd expect is a giant task, and X11 only really gets in the way of that.
- nsajko 5y ago> That's not a Wayland problem. Exactly, "not a Wayland problem". That's the problem with Wayland, nothing is a Wayland problem. > Make a service its own daemon with a dbus interface or something like that I don't know if I should cry or laugh at this.
- taway098123 5y agoNot sure why you'd laugh or cry. Dbus is just an example. You can use another mechanism to build another daemon, it doesn't have to be built on anything in particular. I'm just saying, if you expect that Wayland is going to solve every problem you had with your desktop, you're setting yourself up to be disappointed. It solves a few specific problems. You can solve the other problems in ways that reduce fragmentation, but you'll have to look in other places.
- nsajko 5y ago> solve the other problems in ways that reduce fragmentation > look in other places There's a contradiction here. How do you expect to avoid fragmentation if adding additional protocols alongside Wayland is required? I mean, obviously there won't be just one protocol. This idea is actually a common joke, there's even an XKCD on the topic.
- taway098123 5y agoYou misunderstand. In both situations, you're making a new protocol. The only difference is you'd be making your own thing instead of adding new packet types to Wayland. And why add new packet types to Wayland if the thing you're trying to do can be done outside the Wayland socket? Best example is Pipewire and screensharing. People ask for screensharing in Wayland but it makes a lot more sense to have it in Pipewire because it can handle all the other tasks related to video streaming like format negotiation and compression. It works headless and independent of any compositor, the fact that it can also be used to do screensharing is a benefit of its design.
- kaba0 5y ago> Can you have a system panel? No, you should not want to have one. Yes you can, wlroots has an extension for that, that will work on every “niche” wm based on it. You could not really get a system panel to work on plasma and gnome as well on X. > Can you have one client talk to another client? It is way too vague (generally, what does it have to do with the display manager? Pipes, IPC, dbus), but if it means something like drag’n’drop, it is supported. > Can you turn on your computer and do anything even remotely productive with it? No, you should not want to be productive This is just utterly stupid.
- kllrnohj 5y ago> Wayland compositors) still miss many important features that are > * expected by users of X11, Windows, or Mac Windows & Mac have been in a compositor-only world for over a decade now. They are firmly in a wayland-style world, not an X11-style one. Android, too, has only ever had a wayland-style world. The only thing that exists like X11 is X11. So nobody on Windows or Mac will be expecting anything like it.
- edflsafoiewq 5y agoIt's certainly much friendlier to write programs for.
- oalae5niMiel7qu 5y agoYeah, but why would anyone want to write programs? Oh, wait...