What is the best alternative to Mir?
Here’s the Deal
Slant is powered by a community that helps you make informed decisions. Tell us what you’re passionate about to get your personalized feed and help others.
X11 is so tied up with everything in the Linux Kernel and userspace that it's become for a long time now the de-facto display server for Linux. A lot of things have been tied to X for decades now and it's hard to untie even if X has a lot of glaring problems. Because of this (and despite of X's problems), everything seems to work with X, from the WMs to the graphic drivers. See More
The X stack is rather old and a lot of the things that have been added through the years feel more like hacks to make it work with newer technologies. This has made the X stack feel all over the place with bits and bobs everywhere. Making it a pain to maintain the stack in the long run. See More
When using X, you can get information on any application that is running within any other application that is currently running. Things like position, size, framebuffer, which window has focus, etc. can all be accessed by any running application. With this in mind, there are countless customizations that can be achieved, things like changing the keyboard layout depending on the window that's focused, or creating a script that gets statistics for each key typed. The possibilities are endless. See More
Most closed sourced drivers do not support the KMS/shared-GEM/shared-DRM technologies on which Wayland works. While this may be okay for open source purists, who only want to use graphic cards that have open source drivers available, it may not sit well with people who spend a lot of money for high-end graphic cards only to get some crappy 3D performance. Although it should be noted that NVIDIA has declared that they will start supporting Wayland, it may take years before Wayland fully supports most high-end drivers. See More
Wayland has no drawing APIs. Instead, a Wayland client gets a DRM buffer handle, which is practically just a pointer to a graphics memory. Practically Wayland does not care how the client draws to that buffer, it only copies the client's buffers on the screen. The removes a lot of complexity (because Wayland just pushes the complex stuff to the other layers of the stack) and by making the clients responsible for all the rendering, they can be smarter on how they do things like double-buffering for example. See More
XWayland is necessary to support the vast majority of GUIs that don't yet fully support Wayland (e.g. Firefox). Popup windows and context menus in XWayland behave badly, flickering, opening in strange sizes, and refusing to reopen within the same session. Seems to be best documented here and here. See More
Wayland is great for developers, it's both technologically and architecturally superior to X, but X is the de-facto standard display server protocol for the *nix world for so long that you can basically expect everything to work with X (user applications, graphics drivers, DEs, etc. etc.) which cannot be said for Wayland. Actually there are still too many issues with Wayland that I think it's still far from being ready for the general users/consumers today. It seems there are still years of work ahead before Wayland can fully replace X as suitable for everyday use other than running some GUI text-editors and IDEs for coding, and maybe by that time both Wayland and X will be replaced by something newer... Wayland surely has superior technology and design, but those don't necessarily mean much for the general users today (remember the RISC vs. CISC war back in the 90's, and that back when Linux kernel was first developed, it is arguably inferior to the MINIX kernel in terms of technological advance and architectural design) See More