Uno: Linux will ever be supported?

Created on 7 Jul 2018  路  16Comments  路  Source: unoplatform/uno

De facto there is not a simple way to have a xplat UI on Linux yet, I think Uno could fill this gap.
The fact that you develop on Windows using the UWP designer is the most important thing for me.

epic kinenhancement platforlinux triagmost-wanted

Most helpful comment

It definitely is !! ;) Let's close this issue and track individual features now.

All 16 comments

@fanoI thanks for your interest in the Uno Platform! For now, Linux is a target through web assembly, and possibly electron.

See the FAQ for additional details: https://github.com/nventive/Uno/blob/master/doc/articles/faq.md#does-unoui-support-linux-

I've tried to use Mono as replacement of the Net Framework but sincerely the fact that exceptions does reported the stack trace only in debug mode made no sense for me.

Probably WebAssembly is not the same thing but I had a very negative experience using Qt + HTML in Linux (the C++/Javascript bridge was in a lot of simply not working) so I would prefer a native solution.

@fanoI That's an interesting note. I'm not sure what you mean by debug-only stack traces. Those should be available no matter the runtime mode.

Regardless, at present time in Wasm, the runtime is functioning quite nicely and technically, the whole Uno.UI stack can run in a .net core/html setup as well, in place of mono.

Considering the Uno.UI stack always uses the underlying UI (e.g. UIKit, Android UI, HTML), which one would you prefer be targeted for linux ?

Look here: https://bugzilla.xamarin.com/show_bug.cgi?id=3357

in short expections are only meaningful in debug mode in Mono, but not in release.

Regarding the underlying UI probably Gnome / Gtk that should be easier as already exist C# wrapper library for it: GTK#.

Got it. This is a Xamarin-specific default for mobile apps, which make sense considering the sensitiveness of the package size on mobile devices.

This can be changed by including the pdbs/mdbs to my understanding, this applies as well to the wasm target (this this is still in flux because of the work in progress for the wasm debugger).

I think Uno should still be ported to Linux too for sake of writing apps for multiple operating systems from same codebase.

There are choices like cairo (or even OpenGL, although GTK uses Cairo) on sdl2 for low-level rendering, so if you're rendering widgets on a canvas, you should check that out.

We're looking at Skia for a common rendering engine. Though it's a very large effort, particularly regarding the building of input controls, this may be useful at first for applications that don't rely too much on this kind of APIs.

Let's follow this here: https://github.com/nventive/Uno/issues/670

I'm very new to Uno, so please bear with me: since Xamarin (specifically Xamarin.Forms) now supports linux targets using GTK# (see https://docs.microsoft.com/en-us/xamarin/xamarin-forms/platform/other/gtk?tabs=windows), would it be possible to add linux support to Uno ?

I know that the FAQ states that the current objective is for the wasm target to be sufficiently performant for linux, but I still think a more "native" linux target would be nice, especially considering that every other platfform out there has it (Windows, OSX, Android, iOS); the only one really missing is linux.

Thanks!

Eto.Forms also supports linux using GTK#. And it supports developing on linux using vscode. Until Uno can do that it's a non starter for us.

@trampster we announced at UnoConf in our road map that we'll make architectural changes to allow for other rendering backends to be added more easily.

GTK# can be one of those.

@trampster @wegel @fanol @handicraftsman UnoConf 2020 is next week :-) . https://unoconf.com/

UnoConf 2020
UnoConf features leading minds and world-renowned speakers in the areas of Mono, Xamarin,WinUI WebAssembly, .NET and of course the Uno Platform. Join us!

I wonder if compiling and developing on Linux will be ever supported btw... (my PC is too old to run Windows + Visual Studio fast enough, but most Linux distros work fast with any editor/ide)

It's been officially announced that Uno will have proper linux support! There are also now official instructions in this repository.

It definitely is !! ;) Let's close this issue and track individual features now.

Wonderful, a great thanks to all the Uno developers!!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

JanabiSoft picture JanabiSoft  路  3Comments

paulovila picture paulovila  路  3Comments

chrisevans9629 picture chrisevans9629  路  4Comments

MatFillion picture MatFillion  路  4Comments

JanabiSoft picture JanabiSoft  路  4Comments