KiCad Developers Warn Against Using Wayland Due to Stability Issues, Recommend X11 Instead

The developers of the open-source EDA tool KiCad have unveiled insights into the ongoing challenges surrounding the implementation of Wayland support, as well as summarizing the issues hindering the full functionality of this protocol. The project team has advised users who professionally design with KiCad to run the software in desktop environments based on the X11 protocol, such as Xfce, MATE, or an X11 session of KDE Plasma, to ensure a stable and full-featured experience.

According to OpenNET, KiCad developers explained that when using the software in Wayland environments, users may encounter freezes, crashes, difficulties in restoring preferred window layouts, and limitations in interface functionality.

For instance, functional limitations arise from Wayland’s lack of features that have long been established in X11, Windows, and macOS applications, such as window positioning support and cursor warping.

Significant issues regarding crashes stem from the considerable fragmentation of Wayland compositing servers, including GNOME and KDE. Distinct compositing managers interpret Wayland protocols differently, making it challenging to rely on a unified coherent implementation of these protocols and experimental extensions during development. As a result, application developers must consider the unique characteristics of each environment and often resort to workarounds for problems specific to different compositing managers.

This fragmentation substantially increases the labor required to implement Wayland support. The developers of KiCad point out that they cannot fix the identified issues independently since the problems lie not within KiCad itself but within the protocols, window managers, and compositing servers used.

Given that Linux is adopted by only a small fraction of KiCad users, the project team has opted to avoid integrating fixes into the codebase that specifically bypass issues related to window managers while continuing to compile KiCad for Wayland and test its builds for compatibility. They plan to document any identified problems and limitations and communicate them to users.

In the KiCad bug tracking system, the developers have decided not to address complaints from Wayland users regarding window positioning and sizing, focus management, as well as freezes, crashes, increased CPU load, input device issues, and rendering failures that do not occur in the X11 version.

Among the known issues that fall outside the control of KiCad developers and cannot be resolved on their end are:

— Window management problems: lack of control over window and panel positioning (the positions of windows and toolbars cannot be saved and restored on opening KiCad). Coordination issues when working with multiple windows simultaneously. Limitations on the ability to move tabs and panels between different areas.

— Input device issues: cursor warping relies on optional experimental protocol extensions supported only by specific compositing managers. Unpredictable behavior when managing input focus. Problems with specialized input devices and handling of hotkeys.

— Stability and performance issues: increased resource consumption and high CPU/GPU load compared to using X11. The appearance of graphical artifacts during rendering and disruption of normal output. Freezes and crashes occurring only when operating in Wayland-based environments. Unreliable clipboard management.

— User interface limitations: difficulties with positioning, focus, and interactions in modal dialogs. Challenges in launching and managing external applications.

On February 20, 2025, the release of the open-source printed circuit design system KiCad 9.0 took place, which had been under development for a year. KiCad 7.0 was released in February 2023, and the eighth version debuted in February 2024. Users can download KiCad 9.0 builds for Windows, macOS, and Linux (as well as KiCad Docker images). The project’s source code is written in C++ using the wxWidgets library and is published on GitHub under the GPLv3 license.