KiCad developers criticize Wayland and recommend using X11

The developers of the open source PCB design system KiCad have reported on the state of implementation of Wayland support and summarized the problems that prevent the full use of this protocol. Users who professionally design PCBs in KiCad or want to get a stable and fully functional environment are recommended to run KiCad in X11-based desktop environments such as Xfce, MATE, or the X11 session of KDE Plasma.

Those intending to use KiCad in Wayland environments should be prepared for possible freezes and crashes, the inability to restore the desired window layout, and limited interface functionality. These limitations are said to be due to the lack of features in Wayland that have long been used in X11 applications. Windows ΠΈ macOS, such as support for window positioning and instant mouse pointer movement (cursor warp).

As for the failures that occur, they are associated with large fragmentation of composite servers for Wayland. GNOME, KDE, and individual compositing managers interpret Wayland protocols differently, making it difficult to rely on a single, consistent implementation of Wayland protocols and experimental extensions during development. Application developers must take into account the specifics of each environment and employ workarounds to address issues specific to different compositing managers.

The fragmentation of compositing servers significantly increases the effort required to implement Wayland support. The most frustrating aspect is that KiCad developers are unable to fix any issues themselves, as the problems are not inherent in KiCad, but in the protocols, window managers, and compositing services. сСрвСрах.

Given that Linux Since only a small percentage of KiCad users use it, it was decided to avoid adding workarounds to window manager-specific issues to the project's codebase, while continuing to build KiCad for Wayland and testing the builds for compatibility. All identified issues and limitations will be documented and communicated to users.

The bug tracker has decided not to address complaints from Wayland users related to window positioning and sizing, setting focus, as well as hangs, crashes, increased CPU load, input device issues, and rendering failures that do not appear in the X11 build.

Among the known issues that are beyond the control of the KiCad developers and that cannot be resolved on the KiCad side are:

  • Window management issues: Inability to control the position of windows and panels (when opening KiCad, you cannot remember and restore the position of windows and toolbars). Problems coordinating work with several windows at the same time. Limited ability to move tabs and panels between different areas.
  • Input device issues: Cursor warping relies on optional experimental protocol extensions supported only by some compositing managers. Unpredictable behavior when managing input focus. Issues with specialized input devices and hotkey handling.
  • Stability and performance issues: Increased resource consumption and CPU/GPU load compared to using X11. Graphical artifacts appearing during rendering and disruption of normal output. Freezes and crashes that only occur when running in Wayland-based environments. Unreliable clipboard handling.
  • User Interface Limitations: Issues with positioning, focus, and interaction in modal dialogs. Issues with launching and managing external applications.

Additionally, progress can be noted in the development of the X11Libre project, which develops the X.Org Server fork. In the 10 days since the fork was founded, 11 participants have joined the development, sending 31 changes. Enrico Weigelt, the author of the fork, in turn transferred 1267 of his changes to the fork, which were not accepted into the main X.Org. Meanwhile, X.Org developers rolled back 6 changes from the X.Org Server code base, previously accepted from Enrico Weigelt and leading to regressions or associated with marking some features as obsolete (in total, 1568 changes were accepted in X.Org Server before the fork was created from Enrico).

Kevin Kofler of the Fedora project, who is part of the working group that maintains the KDE packages, proposed replacing Fedora Linux The xorg-x11-xserver package is being replaced by the X server implementation from the XLibre fork. The stated reason for the replacement is to move to a more actively maintained codebase rather than continue to ship the outdated and rarely updated X.Org project, which, according to its developers, is almost completely unmaintained. The fork's author was the most active contributor to the X.Org Server project, and shipping the fork will benefit creators of Fedora editions that remain on X11, for example, due to the addition of the Xnamespace X11 extension to X11Libre, which provides client isolation at the X11 namespace level. The proposal has not yet been approved by FESCo (Fedora Engineering Steering Committee), which is responsible for the technical development of the Fedora distribution.

Source: opennet.ru

Buy reliable hosting for sites with DDoS protection, VPS VDS servers πŸ”₯ Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster