my-th-os / KML

Kerbal Markup Lister - A persistence file editor for Kerbal Space Program

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

No GUI on Mono under Linux

Ruedii opened this issue · comments

Since this is a .Net program, it should be fairly easy to limit it's subset of .Net routines in order to run on Linux and Mac, thus allowing just about anyone using KSP to run the program.

So fixing this by replacing any calls not support by Mono with those that can be would allow players on any platform to run this tool.

The .Net part would run on mono but the GUI is made with WPF and would not run. Would need a complete GUI rework with some other toolset. I read about wxWidgets but never used it. As I didn't finish version 1.0 so far, this gets to the end of the wishlist. Any contribution welcome.

Thanks @pamidur that looks promising. Although being close to XAML, this may need a complete rework. Sadly I don't have much time for this.

Last week I ran into an SFS issue and used it as an excuse to take .NET Core C# for a spin (https://github.com/kfsone/sfsed - it's a cli compared to kml, major kudos), only to also run into finding I seemingly couldn't target non-windows environments. Wat? https://devblogs.microsoft.com/dotnet/net-core-3-and-support-for-windows-desktop-applications/ (so I rolled back my .net core conversion since it seemed pointless).

I'm going to have to try creating a Hello world ui and see if I can get it to run on Linux.

@kfsone interesting… I also have in mind to rebuild the whole thing (probably KSP2 will have a total different file format) and use Avalonia or whatever platform independent solution. And as you said, better get some experience with some Hello worlds first. But that lacks time and interest at the moment.

But I did clone and run your SFSEd. That is a good starting point! :)

The GUI is still WPF only, but with v0.9 I introduced a CLI and a separate binary that can do CLI only and does run on Mono.

That GUI rebuild might still be a topic for the future.

"Doesn't currently run on Mono under Linux" is no longer true. Let's say the issue is "No GUI on Mono under Linux" to not forget about that.

I also checked for any news about WPF in Mono, but I only found "not supported, and not planned". Checking again about "Wine-Mono" (is this a different project?), I couldn't find any information.

Yes, Wine-Mono is a very different project.

It is a version of Mono specifically targeting Wine.

That said their WPF version is a variant of the Open Source version released by Microsoft. They patched the one issue issue that limits running on Mono under Win64 and Win32, but some of the libraries it uses are not available on Linux yet.

As a note the GUI needs improvement anyway.

Reworking in something cross-platform like GTK# could really make it look a lot nicer. Remember, never use the default skin for GTK# on Windows. It sucks.

Reworking in something cross-platform like GTK# could really make it look a lot nicer. Remember, never use the default skin for GTK# on Windows. It sucks.

The hitler-bunker scene could entirely be a guy discovering the team accidentally released an app using the default gtk# skin on windows.