Does Wayland Server Still Exist

*** We are no longer moving to Mir and now switching back to Gnome-Shell which already has a wayland implementation in it. This section likely needs a lot of review. It was originally written for moving Unity to Wayland ***

  1. Does Wayland Server Still Exist Youtube
  2. Does Wayland Server Still Exist Today
  3. Does Wayland Server Still Exist

And yet all of those old features are still there, weighing down on all of these applications, hurting performance and security. Wayland, the next-generation display server. Wayland was begun by Kristian Hogsberg, an X.Org developer, as a personal project in 2008. You could do that but such an X server would not really be any practically different from Wayland. Not quite - the X server would still provide all the device-independent IPC, input, and screen multiplexing facilities and APIs.

Wayland and Ubuntu

Does Wayland Server Still Exist

What is Wayland?

Wayland is a new protocol that enables 3D compositors to be used as primary display servers, instead of running the 3D compositor as an extension under the (2D) X.org display server.

Does Wayland Server Still Exist Youtube

Or, in layman's terms, it assumes you're using a 3D desktop from the start, instead of bolting on 3D capabilities to an 2D framework.

See the Wayland website for more details.

Is Ubuntu dropping X?

Does Wayland Server Still Exist Today

No, X will be retained for backwards compatibility. It will be run inside the Wayland/Unity instance when needed.

When will Wayland become the default on Ubuntu?

Does

This has not been decided. This decision will be made at a future Ubuntu Developer Summit (UDS).

It's possible we'll roll it out for some limited scope initially, since it may take time before it's adequately supported across a broad enough range of hardware.

What is the reason for making Wayland? Why does X have to be replaced?

These days we only use a fraction of what X was originally designed to do. X11, by definition, is a big protocol of rendering primitives and font management and lots of other stuff. Most of that stuff we don't really need or use in modern desktops.

At the same time, with today's 3D-centric desktops, toolkits, and window managers, the compositor is a critically important piece and in the future will likely become a hard requirement, yet in X11 it is limited to being merely an out-of-process extension to the X server.

Thus Wayland, from a high-level view, is about making the compositor the central process and the X server the optional add-on you can activate for legacy X applications.

Will video drivers need to be rewritten for Wayland?

No. Most of the open source drivers have been undergoing rewrites in recent years to support KMS, GEM, and other modern graphics technologies which move more of the graphical functionality into the Linux kernel. Wayland leverages (and requires) these technologies; indeed the whole reason Wayland can exist is because of these changes. But those changes were underway for X in general. In the future Wayland and X will both be using the same graphics drivers.

What about the graphics drivers still in X?

Graphics drivers such as Intel, Nouveau, and Radeon include both kernel drivers and an X driver. With Wayland we only need the kernel drivers. Under the KMS/DRM/GEM architecture, that's where most of the real functionality is, such as modesetting, memory management, and graphics rendering. The remaining bits on the X side of things are used just to interface with the X server and aren't needed by Wayland.

Can Wayland be used with the closed source proprietary graphics drivers?

No, not at this time. fglrx, nvidia, psb, and other closed source drivers are developed externally to X.org and externally to Ubuntu. As far as we know, work to update them to conform to the new KMS/GEM/etc. architecture is not planned (at least, not publicly) and would need to be done before they could be used under Wayland.

Does Wayland Server Still Exist

According to Kristian closed drivers need 2 things:

  • A way to set the graphics mode (like KMS, but it could also be a standalone library)
  • A way to share video memory buffers (for example an EGLImage) between processes

psb already is capable of mode setting. I (adamw) don't know if it can share buffers.

What about network transparency?

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.

There are other ways to share graphical sessions and applications across a network. Wayland also permits running an X11 server inside itself, so you also always have the option of just running X11 clients on top of the server.

Another possible idea is discussed here: NetworkTransparency.

Will toolkits (Qt, GTK+, etc.) need to be ported to work on Wayland?

Yes. This is an area of heavy development currently. The toolkits must be ported as one of the pre-requisites to getting existing applications running on Wayland. Much progress has been made on Qt, GTK+, Clutter, SDL, and EFL.

Will applications need to be rewritten or modified to work on Wayland?

Yes, due to the technical design differences of the Wayland protocol compared with X11, changes need to be made to client applications. In some cases, a simple recompilation using Wayland-enabled GTK+/Qt will be enough; in other cases minor changes are needed; in a few cases where extensive X11 functionality is used directly in the app, it will necessitate more extensive porting work.

Elevated (sudo -H, gksudo) permissions with GUI application programs on Wayland

Wayland is designed to not allow elevated (sudo -H, gksu ...) permissions with GUI application programs. It is a good idea to do such tasks with command line tools. But there are work-arounds, that are described at the link /gks

I have more questions not answered here

You might also like this FAQ: https://groups.google.com/forum/?fromgroups#!forum/wayland-display-server

Does Wayland Server Still Exist

In case you still have questions after that, this is a wiki, so add your questions above this one.

Wayland (last edited 2017-10-31 20:24:59 by nio-wiklund)

As many Linux (and Unix) users know, the graphical user interface (GUI) is made up of many parts. There is the window manager, widget-toolkits, input devices (mouse and touchscreen), output devices (for graphics like the monitor), and many other GUI components. But how does all this seamlessly work together? Well, there is what is called a display server or window system. The display server controls and manages the low-level features to help integrate the parts of the GUI. For instance, display servers manage the mouse and help match the mouse movements with the cursor and GUI events caused by the cursor. The display server also provides various protocols and communicates with the kernel directly. There are different sets of display server protocols and different display servers that implement a specific protocol.
NOTE: Display servers do not draw anything. They just manage the interface. Libraries, toolkits, and other software perform the drawing.
Protocols
X11 (X window system version 11) is a set of protocols. Often times, users may say they have X11 on their computer. They are referring to the fact that they have a display server installed on their computer that uses the X11 protocol. When a user installs an X11 library, they are installing a binding for the X11 protocol or some extension for X11-compatible software. X11 itself is not a program. However, many display servers use the X11 protocol. An X server is a display server that uses the X11 protocol. X11 client libraries provide applications a way to interact with the X server without the programmer needing to know the X11 protocol. Xlib (libx11) and XCB are two examples of X11 client libraries. However, many applications use widget-toolkits which function as a client library for the application. Toolkits can do this since they contain a client library themselves. X11R* is a naming scheme that specifies a release, so X11R7.7 denotes a specific release.
FUN FACT: The X window system uses an 'X' because it is the successor of the W window system.
Wayland is another display server protocol. A 'Wayland Compositor' is a display server that uses the Wayland protocol. GTK+, Clutter, and QT5 have full support for Wayland. Wayland compositors also function as window managers.
Mir is the only display server that uses the Mir protocol, so in this case, the display server and protocol are referred to by the same name. Mir is developed by Canonical Ltd. and is intended to become the default display server for Ubuntu. The SDL toolkit supports Mir, but the support feature is disabled by default.
SurfaceFlinger is the display server typically used by Android. SurfaceFlinger uses EGL for 3D rendering.
Compatibility
Not all window managers and widget-toolkits are compatible with all of the display servers. So, when installing display servers, window managers, or toolkits, make sure the desired GUI components are all compatible.
Also, keep in mind that display servers communicate directly with the kernel. Since display servers are so close to the kernel, this means display servers are operating system specific. For example, Xorg is a native X11 display servers for Linux. However, FreeBSD also uses Xorg, but it is a ported package. Display servers that were designed for the Linux kernel will very likely work on Android as long as the ARM architecture and libhydris are supported. The Mir, Wayland, and X11 protocols are Android compatible. Display servers using these protocols are available for Android. MeeGo also uses the Linux kernel, so developers could also port display servers to MeeGo.
NOTE: A window manager is the part of the GUI that controls the way windows appear as well as perform other functions.
Differing Roles
The roles that a display server plays (or the functions it performs) can be different for each display server. Some display servers can take over the job of window managers. For example, the Quartz compositor used by OS X (the Unix OS made by Apple) functions as both a display manager and window manager. Wayland compositors are another example.
Display Servers
X.Org or Xorg is a very popular X server made by the X.Org Foundation. Xorg is used by many Linux distros and other Unix systems. Xorg is the reference implementation for the X11 protocol. XWayland is a series of patches to help give Xorg the ability to run on top of a Wayland server. Some special ports of Xorg include XQuartz (X11.app on OS X), Xming (for Windows using the MinGW compiler on Linux), XDarwin (Darwin), Xsgi (IRIX), Xsun (Solaris), Cygwin/X (Windows), and many others.
XFree86 is a dormant X server project. This open-source software later forked to become Xorg. Other forks of XFree86 include Xouvert and Xwin.
WeirdX is a Java Applet that makes X11 GUIs possible in a web-browser. WeirdX is run by the remote server, and users use their web-browser to access the server. (http://www.jcraft.com/weirdx/)
X386 was the first IBM computer compatible X-server implementation. It was based on X11R4, but then merged with X11R5.
Mir is both a protocol (discussed above) and a display server. Mir uses some code from Android and utilizes EGL (from Mesa) and libhydris. Mir also contains XMir which is a compatibility layer for X11. Unity 8 will be the first desktop environment to use Mir natively. (http://unity.ubuntu.com/mir/)
Weston is the Wayland compositor reference implementation. A plugin called 'Maynard' can be used to provide a graphical shell that is similar to the GNOME shell.
Clayland is a Wayland compositor that uses Clutter.
SurfaceFlinger (as mentioned before) is the display manager for Android. Not much info can be found concerning SurfaceFlinger.
Display servers are a very important part of any GUI. Without a display server, the GUI will crash. Various display servers exist for various systems, needs, and kernel types. Xorg is the most popular Linux and Unixoid (Unix and Unix-like systems) display server, but Wayland is planned to become the dominant display server. Understanding display managers helps users and developers understand computer systems more clearly.