[Request] Cross-platform UI with Linux support #843

Closed
opened 2026-01-29 16:23:13 +00:00 by claunia · 1 comment
Owner

Originally created by @MrArdillo on GitHub (Jun 16, 2025).

Originally assigned to: @mnadareski on GitHub.

Ui for linux like in windows

Originally created by @MrArdillo on GitHub (Jun 16, 2025). Originally assigned to: @mnadareski on GitHub. Ui for linux like in windows
claunia added the enhancement label 2026-01-29 16:23:13 +00:00
Author
Owner

@mnadareski commented on GitHub (Jun 16, 2025):

In the future, if you choose to open an issue or request, please keep and fill out the template provided. It will also be helpful if you write more than a single sentence twice saying what you are requesting.

I'm going to assume that your actual request here is to have a cross-platform GUI, similar to the one that is available on Windows. Since this comes up a lot and many of the times I've approached this before have faded into the past, I'll take this as a chance to clear up the situation.

The current UI code is written in a combination of WPF and Winforms. This is a consequence of both familiarity as well as the original Windows-only focus of the program. Notoriously, WPF plays very poorly with many of the compatibility layers available on Linux, BSD, and MacOS. There have been 7 separate attempts, both by myself and others, to use a more compatible framework such as Avilonia instead of the current code.

The issues in doing this migration are many, but here are the most relevant ones:

  • Avilonia does not have the same set of features that WPF does, despite being superficially very similar. This means that some trickery and behavior that are expected cannot be replicated in Avilonia without a lot more effort.
  • General unfamiliarity with the quirks of Avilonia compared to WPF. Similar to the above, Avilonia has its own set of issues when it comes to creating and maintaining a GUI. This makes dealing with debugging, especially cross-platform, much more difficult for all involved.
  • Dual Maintenance is a pain. Due to some decisions I made, broad OS compatibility at the library layer is expected, including older Windows support. By any measure, any cross-platform UI will have to be maintained next to the current WPF one for the forseeable future, including bug-for-bug compatibility. This is a lot to expect from the very small set of programmers that maintain this project.

With all of the above, unless someone steps up and writes a cross-platform UI for us, the core maintainers of the project are not going to be attempting this again anytime soon.

@mnadareski commented on GitHub (Jun 16, 2025): In the future, if you choose to open an issue or request, please keep and fill out the template provided. It will also be helpful if you write more than a single sentence twice saying what you are requesting. I'm going to assume that your actual request here is to have a cross-platform GUI, similar to the one that is available on Windows. Since this comes up a lot and many of the times I've approached this before have faded into the past, I'll take this as a chance to clear up the situation. The current UI code is written in a combination of WPF and Winforms. This is a consequence of both familiarity as well as the original Windows-only focus of the program. Notoriously, WPF plays very poorly with many of the compatibility layers available on Linux, BSD, and MacOS. There have been 7 separate attempts, both by myself and others, to use a more compatible framework such as Avilonia instead of the current code. The issues in doing this migration are many, but here are the most relevant ones: - **Avilonia does not have the same set of features that WPF does, despite being superficially very similar.** This means that some trickery and behavior that are expected cannot be replicated in Avilonia without a lot more effort. - **General unfamiliarity with the quirks of Avilonia compared to WPF.** Similar to the above, Avilonia has its own set of issues when it comes to creating and maintaining a GUI. This makes dealing with debugging, especially cross-platform, much more difficult for all involved. - **Dual Maintenance is a pain.** Due to some decisions I made, broad OS compatibility at the library layer is expected, including older Windows support. By any measure, any cross-platform UI will have to be maintained next to the current WPF one for the forseeable future, including bug-for-bug compatibility. This is a lot to expect from the very small set of programmers that maintain this project. With all of the above, unless someone steps up and writes a cross-platform UI for us, the core maintainers of the project are not going to be attempting this again anytime soon.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SabreTools/MPF#843