Gnome is going to drop X11

This dogmatic behaviour is why so many commercial CAD software only run on Windows and MAC

Still, something the community at large here needs to be aware of when trying to help others maybe?

to be more precise, only for Windows …

Yes and no…
Yes be aware of, especially around the present quirks of Wayland since it’s needed to provide informative feedback to users who find themselves in trouble

No with regards to what gnome are (potentially) going todo. Why? This is still a long way off. Xorg was suppose to be deprecated like 5 years ago yet here we are still recieving patches.
Yes a PR was issues to start the process of dropping xorg from gnome BUT it isn’t dropped and there is alot more still to extract. These components can still be external ASSUMING gtk still offers xorg support. Then you have distros that might keep aspects around (remember redhat/centos kept a standard logger around even when systemd was deployed).

When a clear release of when gnome is removing xorg is the time to keep an eye on what distros are doing. Remember, kicad supports Ubuntu, Fedora and Debian.

Fedora40 and gtk5 is what the OP should be concerned with since fedora40 are planning on dropping X11 and that is released next year

Does KiCad need a DE? I mean you don’t need a DE to run X11 applications.

Edit: No it doesn’t. It needs a Xserver with a windows manager. Without a windows manager, it still can be used but you can’t (easily) switch between different KiCad windows).

I use Arch Linux + KDE which supports X11 or Wayland and you can switch between them. Highly recommend that setup if you want to use Linux.

KDE Plasma 6 will be dropping support for X11 at some point, but hopefully, we have at least a year until that happens.

Yea, I wouldn’t advise Arch Linux for anyone looking to just use their PC…out of the box…without it breaking randomly one week after the first month because some fresh bleeding edge package got updated after the weekly goat slaughter.

KDE otoh is fine.

You can suggest your preferences, but others may have different choices. Linux users tend to use what suits them best, and recommendations may not hold much sway.

Your suggestion is problematic because it involves two recommendations instead of just one. Why would you need or use two operating systems? To put it mildly, this is far from ideal.

Now, the real question is: will Kicad see improvements for Wayland support, or is Xwayland also a valid option for smooth operation?

One thing to avoid at all costs is tailoring Kicad solely to Windows users. Otherwise, it might be wiser to explore alternative CAD software, as there are several emerging options.

Lately, Kicad seems to have been diverting time and effort towards less critical features like font integration and a new library system, rather than enhancing complex board layouts, offering more customization options for net classes across different layers, or improving differential pair routing and multi-track routing.

Only X11 sessions can be fully supported by KiCad at this moment. On Xwayland, the infinite panning does not work (see my previous posts).

1 Like

Depends on whether or not Wayland decides to support applications like KiCad that require some control over the mouse pointer, dockable tool windows, etc. This isn’t up to KiCad (or wxWidgets). If Wayland doesn’t add support, KiCad will remain supported and fully functional on X11, Windows, and macOS.

4 Likes

He seems to be willfully ignoring this point made multiple times in the thread.

2 Likes

Thanks @craftyjon this makes sense. Honestly, it would be a bad decision if they decided against this, but let’s see what happens in the future then.

My experience has been quite different – been running it on multiple machines for many years with almost no problems. I have two associates who also run Arch for years with a similar experience.

We recently did a podcast on Arch Linux:

But to each his/her own – I’m certainly not trying to force anything on anyone, just relating my experiences and what works for me. Arch now has an installer that makes it much easier to install without being a Linux expert, though the manual install process is pretty smooth, and learning a little about your OS works is usually not a bad thing. If you search on a random Linux topic, you will often end up at the Arch Wiki – the documentation is very good.

I frankly see very little practical difference between X11 and Wayland. I run X11 on my main workstation and Wayland on my notebook/secondary workstation. For what I do, I don’t see any difference. I do KiCad mostly on my workstation, and I do fire up KiCad on my Wayland machine to look at stuff occasionally. Switching between x11/wayland on login is painless and makes no practical difference, so if I needed X11 for a while, I would switch for however it took to get the job done without really impacting anything else.

The reason I like Arch is that it gives the flexibility to run whatever I need (Gnome, KDE, XFCE, …) and it does all this pretty well.

For better or worse, Wayland is likely the future on Linux, so somehow things will need to adapt. Progress forward typically requires some pain. As GPUs and graphics stacks become more advanced, we will have to use more advanced technology to leverage this. Is it ideal during the transition? Certainly not, but things will move forward, so we need to figure out how to make the best of it during the transition. My point with all this is I have a practical way to keep using Linux during this transition instead of being forced into Windows. I like that!

3 Likes

And all this “discussion” is ignoring the actual details of the PR (for gnome and also other projects with such a goal) … They would be foolish for this to occur until Wayland and Xwayland has feature parity.

The GIMP author comments on the MR basically saying: “Be feature complete on Wayland compared to X11 before considering this. It’s not there yet”

This is actually in the MR so I am still confused why this is being pushed as something kicad has to solve, when it cant

HorizonEDA raised this concern last year and a “possible” Wayland solution was proposed

1 Like

Pointer warping is not the only problem. @dsa-t has already implemented a workaround hack for pointer warping, but it is problematic because it is a hack, so it doesn’t work properly on every Wayland implementation. True support for pointer warping like KiCad needs is necessary at the Wayland protocol level before KiCad can really support it.

I think it’s worth acknowledging that the reason distros are pushing for Wayland adoption is that X11 is no longer under development - as far as I understand it, for now there will be security fixes, but that’s it, and that will not continue indefinitely, so it makes sense for distros that want to move forwards and to implement new features to want to stick with components that are actively being developed, and to focus on those rather than what are effectively legacy projects that they know will eventually be removed.

It’s not KiCads fault, but the fact that X11 isn’t going to be around forever will have to be reckoned with at some stage. For now, I have been upvoting relevant bug reports/requests on the wx and Wayland projects to increase the visibility of some of these limitations to the Wayland team, and maybe change their minds where there is resistance. I think this would be a sensible idea for anyone who cares about KiCad on Linux (hopefully everyone reading this thread, at a minimum).

5 Likes

It is interesting how things change over time. X11 was developed in an era when software and workstations to run it were very expensive. The first eCAD system I used was Mentor Graphics on Apollo and later HP workstations. We started going to the “CAD room” to work, but eventually got Windows NT computers with an Xserver to run the CAD tools remotely in our office. I will miss the network transparency of X11, but it also comes with a performance cost and Wayland is supposedly more efficient. Today, the most compute-intensive tasks are games (if you want nice computer hardware, get stuff that gamers use). Pretty much any computer has the performance to run CAD applications so network transparency is no longer a high priority.

The Wayland FAQ is an interesting read.

From the home page:

Wayland is a replacement for the X11 window system protocol and architecture with the aim to be easier to develop, extend, and maintain.

This is hopefully a good thing for Linux apps long term.

I did some quick testing of PCB editing on Arch/KDE/Wayland and tried to reproduce some of these issues:

The “Center and warp cursor on zoom” seems to be working fine.

I did see some cases of the above which could seriously impact productivity.

How is window docking used in KiCad?

This seems to work.

Overall, it seems pretty close to being usable to me, so I’m optimistic, but I may be missing something.

The UI uses dockable windows and there are plans to further develop this out to behave just like any other CAD program. Even the icon bars would become movable panes.

kicad_UBTKPiL13C

Dockable windows are also currently broken in QT because of Wayland.
https://bugreports.qt.io/browse/QTBUG-85927

And a separate fix in QT for docking windows
https://code.qt.io/cgit/qt/qtbase.git/patch/?id=581c4bcb62a9d3cbb4c33df3f0f7a0a965225e74

This introduces an alternative code path that uses a platform
drag with a special mimetype that enables the platform to
issue a combined drag and window move using the relevant protocol.
Should the protocol not be available this doesn’t make things
actively worse as it will be similar broken as before.

Is basically “■■■■ this shit”.

2 Likes