<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Wayland on Ivon's Blog</title><link>https://ivonblog.com/en-us/tags/wayland/</link><description>Recent content in Wayland on Ivon's Blog</description><generator>Hugo -- gohugo.io</generator><language>en</language><managingEditor>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</managingEditor><webMaster>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</webMaster><copyright>You are welcome to share articles of Ivon's Blog (ivonblog.com). Please include the original URL when citing articles, and abide by CC BY-NC-ND 4.0 license. For commercial use, please write an e-mail to me.</copyright><lastBuildDate>Fri, 17 Apr 2026 13:00:00 +0800</lastBuildDate><atom:link href="https://ivonblog.com/en-us/tags/wayland/index.xml" rel="self" type="application/rss+xml"/><item><title>How to use Termux X11 - The X Server for Android Phone</title><link>https://ivonblog.com/en-us/posts/termux-x11/</link><pubDate>Fri, 17 Apr 2026 13:00:00 +0800</pubDate><author>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</author><guid>https://ivonblog.com/en-us/posts/termux-x11/</guid><description>&lt;p&gt;Termux X11 is an app that can run X servers on Android phones. What does this mean? It means it can be used to execute Linux programs that rely on the X11 display, such as Firefox, Chromium, GIMP, Blender, Visual Studio Code, and more. Although Android is based on the Linux kernel, its graphics protocol differs from that used by most Linux distributions. Most Linux program toolkits are designed for X11 or Wayland, so Android cannot run Linux programs. Termux X11 provides an X server that runs on Android, allowing Termux&amp;rsquo;s Linux programs to display a graphical interface within it.&lt;/p&gt;
&lt;p&gt;In addition, you can also achieve 3D hardware acceleration through the experimental VirGL server (virglrenderer) in Termux.
&lt;img src="images/termux-x11.webp" width=300 alt="" loading="lazy"&gt;&lt;/p&gt;
&lt;p&gt;This is how the X Server works on a GNU/Linux PC.
&lt;img src="images/d1.webp" width=300 alt="" loading="lazy"&gt;&lt;/p&gt;
&lt;p&gt;Termux X11 developers ported the X Server to Android, enabling X11 apps to output screens on Android.
&lt;img src="images/d2.webp" width=300 alt="" loading="lazy"&gt;&lt;/p&gt;
&lt;p&gt;Termux X11 can be used with mouse and keyboard, or with touching gestures. Just setting the appropriate desktop resolution so you could interact with the desktop environment using your phone&amp;rsquo;s keyboard.
&lt;img src="images/termux-x11-gimp.webp" width=300 alt="" loading="lazy"&gt;&lt;/p&gt;

&lt;h2 class="relative group"&gt;1. Install Termux X11
 &lt;div id="1-install-termux-x11" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#1-install-termux-x11" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;Termux X11 was inspired by &lt;a href="https://forum.xda-developers.com/t/guide-running-linux-on-android-with-3d-acceleration-opengl-root-required.4093343/" target="_blank" rel="noreferrer"&gt;Sparkle&lt;/a&gt;, and was initially implemented using XWayland, but was later replaced by XCB.&lt;/p&gt;
&lt;p&gt;Currently, Termux X11 requires devices running Android 8 or later.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Install &lt;a href="https://ivonblog.com/en-us/posts/how-to-use-termux/" target="_blank" rel="noreferrer"&gt;Termux&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Download latest Termux-x11 APK from &lt;a href="https://github.com/termux/termux-x11/releases" target="_blank" rel="noreferrer"&gt;Github Releases&lt;/a&gt;. Download the Termux X11 APK. For most devices, choose the &lt;code&gt;arm64-v8a&lt;/code&gt; variant.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Install the Termux-x11 apk.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Launch Termux, install x11-repo. Then install termux-x11-nightly&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pkg update
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pkg upgrade
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pkg install x11-repo
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pkg install termux-x11-nightly&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 class="relative group"&gt;2. Usage 1: Run X11 apps in Termux
 &lt;div id="2-usage-1-run-x11-apps-in-termux" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#2-usage-1-run-x11-apps-in-termux" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;Personally, I recommended you to use Termux X11 with proot-distro because Termux has fewer package than proot-distros.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Open Termux X11 APP and you will see this
&lt;img src="images/termux-x11-app.webp" width=300 alt="" loading="lazy"&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Go back to Termux. Install XFCE4 and GIMP&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pkg install xfce gimp&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Launch XFCE4 with dbus-launch&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;termux-x11 :0 -xstartup &lt;span class="s2"&gt;&amp;#34;dbus-launch --exit-with-session xfce4-session&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;If you encounter &lt;code&gt;Make sure an X server isn't already running(EE)&lt;/code&gt; error, close Termux, then &amp;ldquo;Force stop&amp;rdquo; and &amp;ldquo;Clear cache&amp;rdquo; Termux and Termux X11 App in Android system settings.&lt;/p&gt;
&lt;ol start="4"&gt;
&lt;li&gt;
&lt;p&gt;Now you should see XFCE4 running in Termux X11.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You could change Touchscreen input mode in Termux X11 preferences in notification bar.
&lt;img src="images/termux-x11-touch.webp" width=300 alt="" loading="lazy"&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If the font is too big, open System settings → Appearance → check Cutsom DPI. You can also set display resolution in Preferences of Termux X11 APP.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Press &lt;code&gt;CTRL+C&lt;/code&gt; in Termux to stop XFCE4.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 class="relative group"&gt;3. Usage 2: Run X11 apps in Proot-distro
 &lt;div id="3-usage-2-run-x11-apps-in-proot-distro" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#3-usage-2-run-x11-apps-in-proot-distro" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Install a proot-distro. For example &lt;a href="https://ivonblog.com/en-us/posts/termux-proot-distro-debian/" target="_blank" rel="noreferrer"&gt;Debian proot&lt;/a&gt; or &lt;a href="https://ivonblog.com/en-us/posts/termux-proot-distro-archlinux/" target="_blank" rel="noreferrer"&gt;Arch Linux proot&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Open Termux X11 app. Then go back to Termux.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Log in to the installed Proot-distro using the regular account &lt;code&gt;user&lt;/code&gt;. When logging in to proot here, you must add the &lt;code&gt;--shared-tmp&lt;/code&gt; parameter, which means mounting the Termux &lt;code&gt;$TMPDIR&lt;/code&gt; directory to the proot &lt;code&gt;/tmp&lt;/code&gt; directory.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;proot-distro login --user user debian --shared-tmp&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Launch desktop environment. For example, XFCE4&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;termux-x11 :0 -xstartup &lt;span class="s2"&gt;&amp;#34;dbus-launch --exit-with-session xfce4-session&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;
&lt;p&gt;While in Termux X11, you can activate phone keyboard by pressing back button. I suggest you to install &lt;a href="https://github.com/klausw/hackerskeyboard" target="_blank" rel="noreferrer"&gt;Hacker&amp;rsquo;s Keyboard&lt;/a&gt; for using desktop shortcuts.&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ivonblog.com/en-us/posts/termux-x11/featured.webp"/></item><item><title>Too Many LOSING Wayland Compositors! Is It Really Necessary to Keep Reinventing the Wheel?</title><link>https://ivonblog.com/en-us/posts/there-are-too-many-wayland-compositors/</link><pubDate>Sun, 08 Mar 2026 19:00:00 +0800</pubDate><author>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</author><guid>https://ivonblog.com/en-us/posts/there-are-too-many-wayland-compositors/</guid><description>&lt;!-- Co-translated by ChatGPT --&gt;
&lt;p&gt;There are really too many losing Wayland compositors! Sometimes when I see someone using a WM instead of a DE, I think they are pretty impressive, but this is very hard to popularize. Not to mention there are even people teaching students in class to install IceWM. Is Linux desktop fragmentation still not serious enough?&lt;/p&gt;
&lt;p&gt;Every time I see a new Wayland compositor appear, be like:
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt=""
 src="https://ivonblog.com/en-us/posts/there-are-too-many-wayland-compositors/images/a.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="1920"
 height="1080"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;Do you not think so? After the Linux desktop gradually migrated to Wayland, at least more than 20 Wayland compositors have already appeared. Besides the better-known Weston (Wayland&amp;rsquo;s official reference implementation), GNOME Mutter, and KDE Kwin, there are also a whole bunch of Wayland compositors developed based on the &lt;a href="https://gitlab.freedesktop.org/wlroots/wlroots/" target="_blank" rel="noreferrer"&gt;wlroots&lt;/a&gt; or &lt;a href="https://github.com/Smithay/smithay" target="_blank" rel="noreferrer"&gt;Smithay&lt;/a&gt; libraries, such as Hyprland, WayFire, Niri, Labwc, River, dwl, Hikari, Miracle&amp;hellip;&amp;hellip;and so on. Many of them cannot even constitute a Desktop Environment; they are just compositors, and you have to find other components yourself to assemble a desktop.&lt;/p&gt;
&lt;p&gt;This inevitably makes people think of the glorious scene of the many X window managers in the X Window era. Users of different X11 desktop environments could switch the Window Manager and Compositor to achieve the window effects they wanted. There were at least more than 20 X window managers. However, times have changed. Wayland desktop users should not replace the window manager alone. Either replace the entire desktop environment.&lt;/p&gt;
&lt;p&gt;Although the following image is slandering Wayland, it explains very well the role Wayland compositors are now supposed to play. The architecture is simply different from X Window. Therefore, creating multiple Wayland compositors appears unnecessary.
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt=""
 src="https://ivonblog.com/en-us/posts/there-are-too-many-wayland-compositors/images/wayland-developers-lies.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="2300"
 height="2100"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;Hyprland author Vaxry discussed this issue in &lt;a href="https://blog.vaxry.net/articles/2024-more-compositors" target="_blank" rel="noreferrer"&gt;We don&amp;rsquo;t need more Wayland Compositors&lt;/a&gt;. He pointed out that Wayland&amp;rsquo;s structure is different from X11&amp;rsquo;s. Because there is no unified X Server now, Wayland only has a set of standard specifications, and it must rely on compositor implementations. Today&amp;rsquo;s Wayland compositors are responsible for far more than X window managers were. Besides arranging windows, every Wayland compositor also has to handle complex operations such as screen recording and interaction with graphics drivers.&lt;/p&gt;
&lt;p&gt;So after many Wayland desktops mature, they will have their own &lt;a href="https://github.com/flatpak/xdg-desktop-portal" target="_blank" rel="noreferrer"&gt;XDG Desktop Portal&lt;/a&gt;, so they can implement the common standards defined by FreeDesktop. If you want the kind of simple mechanism and configuration that dwm had in the X11 era, Wayland has already made that very hard. Even Sway, which advertises itself as imitating i3wm, has to develop its own XDG Desktop Portal.&lt;/p&gt;
&lt;p&gt;He believes many Wayland compositors are reinventing the wheel, using different code to implement almost the same functions. Some projects may end up buried in the sand before long, and may even have trouble opening a terminal.&lt;/p&gt;
&lt;p&gt;If I were to put it more extremely, there are only two desktops in the Linux world worth making serious efforts to improve: GNOME and KDE Plasma. Other desktop environments are not as important as they are.&lt;/p&gt;
&lt;p&gt;In the end&amp;hellip;the solution proposed by Hyprland&amp;rsquo;s author is that everyone should just develop based on a small number of desktops as a baseline. For example, develop plugins around Hyprland, allowing users to modify Hyprland&amp;rsquo;s window arrangement method and replace the role once played by X Window Manager. Instead of writing a pile of Wayland compositors from scratch. But well, Hyprland is written in C++, which does not satisfy some people&amp;rsquo;s fetish for Rust&amp;rsquo;s future.&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ivonblog.com/en-us/posts/there-are-too-many-wayland-compositors/featured.webp"/></item><item><title>Comparing X11 and Wayland. It Is 2026: Should You Switch to Wayland and Abandon the X Window System?</title><link>https://ivonblog.com/en-us/posts/should-you-switch-to-wayland/</link><pubDate>Mon, 26 Jan 2026 23:00:00 +0800</pubDate><author>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</author><guid>https://ivonblog.com/en-us/posts/should-you-switch-to-wayland/</guid><description>&lt;!-- Co-translated by ChatGPT --&gt;
&lt;p&gt;In this article, Ivon wants to discuss the development status of the &amp;ldquo;X Window System&amp;rdquo; and &amp;ldquo;Wayland&amp;rdquo; on Linux systems, talk about Wayland&amp;rsquo;s pros and cons, and help you decide whether you should switch to Wayland. At the end, I also list the Linux distributions that let you experience the newest Wayland technology the fastest.
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt=""
 src="https://ivonblog.com/en-us/posts/should-you-switch-to-wayland/images/title.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="1655"
 height="930"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;Things are changing. The Linux community often discusses whether we should abandon X11 and switch to a Wayland session. So, what is X11? What is Wayland?&lt;/p&gt;
&lt;p&gt;The X Window System is a set of software that determines how images are displayed on your Linux computer, but it is too old and has many problems. Now there is software that adopts the Wayland protocol, aiming to replace this old software with modern code. However, because Wayland has had problem after problem, even though more and more Linux distributions are adopting it, after more than a decade of development the X Window System still cannot be completely replaced.&lt;/p&gt;
&lt;p&gt;Below, let us examine the current state of X11 and Wayland.&lt;/p&gt;

&lt;h2 class="relative group"&gt;1. The Opportunity for Change: Comparing X11 and Wayland
 &lt;div id="1-the-opportunity-for-change-comparing-x11-and-wayland" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#1-the-opportunity-for-change-comparing-x11-and-wayland" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;The X Window System and Wayland are both sets of software responsible for displaying graphics on Linux. As for comparing their underlying principles, I am too limited in learning to embarrass myself here; there are already plenty of resources online, and the &amp;ldquo;Further Reading&amp;rdquo; section at the end has many interesting articles you can read in detail. Here I will briefly summarize my personal understanding.&lt;/p&gt;
&lt;p&gt;The X Window System, abbreviated as X, was born earlier than Linux. The X Window System appeared in 1987 and was used to display graphical environments. That was still the age of Unix! By now it already has more than 30 years of history.
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt=""
 src="https://ivonblog.com/en-us/posts/should-you-switch-to-wayland/images/X11.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="256"
 height="256"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;Why does Linux need to &amp;ldquo;install&amp;rdquo; the X Window System before it has a graphical display? Because the Linux kernel really does not include software for displaying graphics.&lt;/p&gt;
&lt;p&gt;The desktop environments Linux users see, such as GNOME, KDE Plasma, and XFCE, do not directly control the screen. Instead, they are built on top of the graphical display mechanism provided by the X Window System. The X Window System is responsible for the lowest-level window display and input events, while the desktop environment is responsible for the user interface and operating experience.&lt;/p&gt;
&lt;p&gt;Here, the X Window System became the common low-level standard followed by various desktop environments.&lt;/p&gt;
&lt;p&gt;At the beginning, the designers only defined the X communication protocol standard; they did not specify X&amp;rsquo;s implementation in detail, so different X window software projects appeared. Around 2000, the X.org software developed by the X.org organization replaced XFree86 and gradually became the accepted standard. APIs and the like were all defined by them. X.org was therefore adopted by major desktop environments. Because the X protocol adopted by X.Org is version X11, the X server they developed is also called X11.&lt;/p&gt;
&lt;p&gt;The reason the X Window System is called a server is that it can accept simultaneous connections from multiple X clients. This is a &amp;ldquo;client-server architecture,&amp;rdquo; echoing the needs of the old mainframe era, and it communicates through Network Transparency. See the diagram below for the principle.
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt=""
 src="https://ivonblog.com/en-us/posts/should-you-switch-to-wayland/images/x-architecture.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="533"
 height="507"&gt;&lt;/figure&gt;&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ivonblog.com/en-us/posts/should-you-switch-to-wayland/featured.webp"/></item><item><title>Should You Switch to Wayland and Abandon the X Window System? (2024 Edition)</title><link>https://ivonblog.com/en-us/posts/should-you-switch-to-wayland-in-2024/</link><pubDate>Sat, 23 Mar 2024 18:00:00 +0800</pubDate><author>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</author><guid>https://ivonblog.com/en-us/posts/should-you-switch-to-wayland-in-2024/</guid><description>&lt;!-- Co-translated by ChatGPT --&gt;
&lt;p&gt;In this article, Ivon wants to discuss the development status of the &amp;ldquo;X Window System&amp;rdquo; and &amp;ldquo;Wayland&amp;rdquo; on Linux systems, talk about Wayland&amp;rsquo;s pros and cons, and help you decide whether you should switch to Wayland. At the end, I also list the Linux distributions that let you experience the newest Wayland technology the fastest.
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt=""
 src="https://ivonblog.com/en-us/posts/should-you-switch-to-wayland-in-2024/images/title.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="1655"
 height="930"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;Things are changing. The Linux community often discusses whether we should abandon X11 and switch to a Wayland session. So, what is X11? What is Wayland?&lt;/p&gt;
&lt;p&gt;The X Window System is a set of software that determines how images are displayed on your Linux computer, but it is too old and has many problems. Now there is software that adopts the Wayland protocol, aiming to replace this old software with modern code. However, because Wayland has had problem after problem, even though more and more Linux systems are adopting it, after 10 years of development the X Window System still cannot be completely replaced. Below, let us examine why.&lt;/p&gt;

&lt;h2 class="relative group"&gt;1. The Opportunity for Change: Comparing X11 and Wayland
 &lt;div id="1-the-opportunity-for-change-comparing-x11-and-wayland" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#1-the-opportunity-for-change-comparing-x11-and-wayland" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;The X Window System and Wayland are both sets of software responsible for displaying graphics on Linux. As for comparing their underlying principles, I am too limited in learning to embarrass myself here; there are already plenty of resources online, and the &amp;ldquo;Further Reading&amp;rdquo; section at the end has many interesting articles you can read in detail. Here I will briefly summarize my personal understanding.&lt;/p&gt;
&lt;p&gt;The X Window System, abbreviated as X, was born earlier than Linux. The X Window System appeared in 1987 and was used to display graphical environments. That was still the age of Unix! By now it already has more than 30 years of history.
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt=""
 src="https://ivonblog.com/en-us/posts/should-you-switch-to-wayland-in-2024/images/X11.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="256"
 height="256"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;Why does Linux need to &amp;ldquo;install&amp;rdquo; the X Window System before it has a graphical display? Because the Linux kernel really does not include software for displaying graphics.&lt;/p&gt;
&lt;p&gt;The desktop environments Linux users see, such as GNOME, KDE Plasma, and XFCE, do not directly control the screen. Instead, they are built on top of the graphical display mechanism provided by the X Window System. The X Window System is responsible for the lowest-level window display and input events, while the desktop environment is responsible for the user interface and operating experience.&lt;/p&gt;
&lt;p&gt;Here, the X Window System became the common low-level standard followed by various desktop environments.&lt;/p&gt;
&lt;p&gt;At the beginning, the designers only defined the X communication protocol standard; they did not specify X&amp;rsquo;s implementation in detail, so different X window software projects appeared. Around 2000, the X.org software developed by the X.org organization replaced XFree86 and gradually became the accepted standard. APIs and the like were all defined by them. X.org was therefore adopted by major desktop environments. Because the X protocol adopted by X.org is version X11, the X server they developed is also called X11.&lt;/p&gt;
&lt;p&gt;The reason the X Window System is called a server is that it can accept simultaneous connections from multiple X clients. This is a &amp;ldquo;client-server architecture,&amp;rdquo; echoing the needs of the old mainframe era, and it communicates through Network Transparency. See the diagram below for the principle.
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt=""
 src="https://ivonblog.com/en-us/posts/should-you-switch-to-wayland-in-2024/images/x-architecture.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="533"
 height="507"&gt;&lt;/figure&gt;&lt;/p&gt;</description></item></channel></rss>