[Enhancement] Support a MAUI wrapped Blazor App on Linux #1521
SummaryThis is an enhancement request, or registering interest in the potential support of running a MAUI application which wraps a Blazor application running on Linux. Intended Use CaseIn the Industrial Control space, customers want access to their Human Machine Interface (HMI) visualizations on a variety of platforms. While the traditional UC's of consuming HMI visualizations are on Windows, Mobile, and Web platforms, there is also a great deal of UC's around smaller, light weight machines that have their own custom HMI that are packaged/delivered/(literally attached) to the specific machinery. These light weight machines typically run versions of Linux. AssumptionsAs MS Edge has been released for Linux, WebView2 also needs to be delivered to Linux as well. High Level VisionBlazor is an amazing technology stack that will allow customers to create business logic and a UI layer that spans all platforms when combined with MAUI. For .Net 6, only desktop topologies are being targeted for a MAUI wrapped Blazor application, presumably followed by iOS/Android targets in .Net 7. Ideally Linux support can also be considered for .Net 7. |
Replies: 13 comments 18 replies
|
I would consider this a must to compete with other technologies that already allow to wrap web apps into desktop applications and truly be cross-platform (a long-standing major drawback of .Net has been the lack of a truly cross-platform UI toolkit that does not require third-party extensions). |
|
It was never say they will not support linux. There is no support for .net 6 but may be for futur release. https://github.com/dotnet/aspnetcore/issues/27234#issuecomment-765604868 |
|
I did not imply it was said that there won't be support. However a) .Net 7 is over a year away b) it is long overdue to have some form of .Net UI toolkit that it truly cross-platform and comes with the .Net SDK c) Electron.Net is a third-party tool, hence it does not apply to my previous comment. |
|
this feature is an actual need. I think Maui should at least support blazor webview on Linux because for that there is no need for many efforts. Only a wrapper window is needed and other works are already done. This will attract many developers to maui, blazor and .net as a whole because then we'll be able to run blazor apps on the web, android, ios, windows, macos and linux, how great is that! and if you have your backend server in asp.net core then you can also share some code(Request/Response objs) from that project too. how productive is that! |
|
MAUI Blazor would be obviously a superb solution over Avalonia UI (https://github.com/AvaloniaUI/Avalonia) and Eto (https://github.com/picoe/Eto). There is MS Edge for Linux (https://www.microsoftedgeinsider.com/en-us/download/?platform=linux), so having the WebView2 control as well shouldn't be a problem. FYI: https://github.com/jsuarezruiz/maui-linux |
|
I have clients in the medical field that are using Qt currently, and its so painful to deal with. Having a MAUI blazor app run on linux would allow me to start getting .Net tech into medical industry instruments. Its a field with large potential and visibility for showing how much better it can be. |
|
I think if Microsoft wants the MAUI to be successful, linux desktop is a must-have platform. |
|
Check out more sample here for any .Net Projects including Avalonia. |
|
Since Windows CE is now dead, the industrial sector is using ARM Embedded Linux for low spec, low cost industrial panel PCs. Raspberry Pi Compute Module-based panel PCs are one such platform. It would reduce much cost, fragility, and inconvenience trying to write software for multiple industrial panel PC platforms (Windows, Embedded Linux, and sometimes Android) if Maui supported Linux. Currently resorting to WebkitGTK+Blazor and DOM solutions like the following... |
|
lastest draft is here: MauiGtk#66 , Blazor App on Linux included |
|
Wanted to let folks on this thread know there's now something concrete to try. Over in dotnet/maui-labs we've been building experimental platform backends, including a GTK4 backend for Linux and a native macOS AppKit backend (macOS without Mac Catalyst). Both also ship a Linux (GTK4) — README + setup:
macOS (AppKit) — README + setup:
All published as Status — please read before building on it:
Building these has also been a good exercise of the extensibility work tracked in #34099 — the places MAUI can stop actively preventing third-party platforms, without the team having to own or officially support them. Give the experimental backends a try, file issues in maui-labs, and let us know what's working and what's missing — with the understanding above about where things stand. |

Wanted to let folks on this thread know there's now something concrete to try. Over in dotnet/maui-labs we've been building experimental platform backends, including a GTK4 backend for Linux and a native macOS AppKit backend (macOS without Mac Catalyst). Both also ship a
BlazorWebViewhost — via WebKitGTK on Linux and WKWebView on macOS — so the "run your .NET business logic natively + a Blazor UI in a native WebView" scenario works on each.Linux (GTK4) — README + setup:
Microsoft.Maui.Platforms.Linux.Gtk4— the backendMicrosoft.Maui.Platforms.Linux.Gtk4.BlazorWebView— BlazorWebView on WebKitGTKMicrosoft.Maui.Platforms.Linux.Gtk4.Essentials— Essentials APIsMicrosoft.Maui.Platforms.…