MAUI Is Coming to Linux
158 points by DeathArrow 11 hours ago | 78 comments

Ciantic 9 hours ago
I wish they support Linux wholeheartedly, a lot of toolkits and GUI frameworks do it by half-assing things, mostly because Wayland is difficult to understand.

In Wayland you have multiple ways to render windows, not just the XDG top level window. It works via surfaces, and here is a list I've discovered so far:

  - XDG Top Level Window
  - Child Window
  - Popup Surface
  - Layer surface (like task-bars, shell overlays)
  - Subsurface (region in another surface)
  - IME Panel Surface (surface that follows text cursor)
There probably is others too.

It is diffifcult to find high-level toolkits that support all of the above.

reply
sandreas 7 hours ago
For everyone interested in Avalonia's Linux / Wayland strategy:

https://avaloniaui.net/blog/bringing-wayland-support-to-aval...

reply
MikeCodesDotNET 6 hours ago
We’re actively working on Wayland support for Avalonia 12. While we considered dual licensing it, we ultimately decided to keep things simple and make it MIT licensed.
reply
zamalek 4 hours ago
> [Article] What works in GNOME might not work in KDE. What works in both might not work in Sway.

If you subtract GNOME from the set then things become a lot more sane. "Compositor-specific extensions" are really "everyone besides GNOME extensions." The system tray extension isn't KDE-specific. Sure, window positions might not be available at all (because they don't make sense for a TWM), or a user might not have a system tray bar (or you might be on GNOME). However, if they did have a system tray it would be the StatusNotifierItem protocol. Ideally, these should be handled like other platform features like accelerometers etc.. That may not be possible, either way a lot of them can safely noop.

> [Article] For Avalonia, this means "Wayland support" isn't one implementation, it's potentially dozens. We're not just writing a Wayland backend; we're writing a GNOME-Wayland backend, a KDE-Wayland backend, a Sway-Wayland backend,

If you're making per-WM backends then you've fundamentally misunderstood how extensions are supposed to work. Other Wayland client libraries do not have a independent backends for KDE, Sway, and GNOME. Maybe quirks would be needed because you're attempting to support an existing UI library - but those should be few and far between.

IIRC Avalonia supports Vulkan as a rendering backend? Wayland protocols are the same line of thinking as Vulkan extensions.

wlroot and smithay are good examples of what extensions are used in the real world.

reply
kelnos 2 hours ago
> For Avalonia, this means "Wayland support" isn't one implementation, it's potentially dozens. We're not just writing a Wayland backend; we're writing a GNOME-Wayland backend, a KDE-Wayland backend, a Sway-Wayland backend, and so on.

What? No, that's not the case. Yes, different Wayland compositors often support different extensions, but everyone has the basics (Wayland core, xdg_shell, and probably a few others). You need one backend, and then you can support extensions to implement more advanced features, but you of course have to be able to continue to work without any extensions present.

Yes, there are some features that might require a different extension on GNOME than it does on KDE (for example), but you don't need a full "backend" to handle those differences.

As someone who has always been skeptical of Wayland, frustrated with its shortcomings, and who has written both a compositor and XEMBED-workalike library for Wayland, it just feels like author is trying to play up the difficulties for PR purposes here.

reply
Pay08 8 hours ago
Not to mention that there's no clear documentation for this anywhere. A while ago I was attempting to debug some Wayland-specific issues with a graphics library, it turns out the issue was that the little documentation there was, was wrong about what is and isn't nullable.
reply
OtomotO 7 hours ago
I found https://wayland.app/protocols/ very helpful so far.

That and studying smithay code.

reply
Pay08 6 hours ago
That was the documentation with the incorrect nullability I was referencing.
reply
mahkoh 4 hours ago
I doubt there is anything incorrect there. See the note here: https://wayland.freedesktop.org/docs/book/Message_XML.html#a...
reply
kelnos 58 minutes ago
wayland.app just HTML-renders the contents of the specification XML files. If a compositor or client is not interpreting nullability the same way wayland.app says it should be interpreted, then that's a bug in the compositor or client.
reply
throwaway27448 2 hours ago
Why is Wayland so complicated? I thought half the reason for breaking with X11 was to produce a simpler window server. I was flabbergasted when I realized that there were competing compositors for seemingly no benefit to anyone.
reply
endgame 2 hours ago
Making each one implement input handling was also a dazzlingly bizarre design choice.
reply
audidude 7 hours ago
In X11 we kept things simple by offering:

* Core protocol drawing (lines, rectangles, arcs, the classics)

* XRender for compositing and alpha

* XShm for shared-memory blits

* GLX if you felt like bringing a GPU to a 2D fight

* XVideo for overlay video paths

* Pixmaps vs Windows, because why have one drawable when you can have two subtly different ones

* And of course, indirect rendering over the network if you enjoy latency as a design constraint

reply
shevy-java 7 hours ago
Wayland is a mess.

Perhaps https://github.com/X11Libre/xserver can revive the older ecosystem. Almost nobody writes for wayland. About two years ago I tried to switch, then gave up when I realised how many things are missing on wayland. And then I noticed that barely anyone wrote software for wayland. It feels like a corporate advertisement project really. GNOME and KDE push for wayland now.

reply
LeFantome 7 hours ago
What does “nobody writes for Wayland” mean?

If you write software using GTK, Qt, or FLTK then you are writing Wayland software.

The majority of Linux desktops are Wayland at this point. Nobody writes software for them?

The Steamdeck uses gamescope which is Wayland. GNOME, COSMIC, Budgie, Niri, and Hyprland are not just Wayland but Wayland only. KDE will be Wayland only soon. Cinnamon is switching to Wayland. XFCE is writing a Wayland compositor.

What percentage of Linux desktop users are not using one of the above? 10 at most?

reply
throwaway27448 2 hours ago
> If you write software using GTK, Qt, or FLTK then you are writing Wayland software.

Why is it so complicated if it's just a common backend? Surely you don't need 1/10th the complexity just to render gnome or kde (never heard of fltk before).

reply
noselasd 5 hours ago
It just means "noone" uses the wayland APIs directly, but instead they leave the wayland complexity to GTK,Qt or FLTK, and they call their app a Qt app, not a Wayland app.
reply
simonh 5 hours ago
Was X11 any different in practice? Apart from ancient legacy stuff like XTerm. It would be like writing a Mac application in Quartz directly.
reply
sprash 3 hours ago
It was/is mostly the same practice except for the cases where it really counts. Window managers in general, xdotool, all kinds of input mapping and automation or the fact that you can write a screenshot tool in less than 500 LOC are only possible if you talk to X directly. And there the possibilities are almost limitless. And thanks to the xcb library it's actually somewhat convenient to use.

Also certain types of power tools for mac probably need use Quartz directly as well.

reply
kelnos 50 minutes ago
> Window managers in general, xdotool, all kinds of input mapping and automation or the fact that you can write a screenshot tool in less than 500 LOC are only possible if you talk to X directly.

Honestly I think this is a pretty fair approximation of "no one". How many people are writing tools like this vs. the number of people writing regular applications? A very small number, I'd say.

And after working extensively with both libX11/libxcb and libwayland-client directly, I can say that none of them are particularly pleasant to work with. Actually, no, that's not true: libwayland-client wins, easily. Every single Wayland protocol has code generated for it that works exactly the same way. I suppose the same is (more or less) true of libxcb, but libX11 (and all the other libraries you might have to use, like libXrender, libXrandr, libXext...) are a complete mess.

And even then, libwayland-client has a much lower number of concepts you have to understand than libxcb does, simply because the Wayland protocol has a small number of concepts you need to understand. libxcb is definitely an improvement over libX11, but it can't magically make all the underlying X11 protocol concepts become unified.

reply
hparadiz 3 hours ago
Having written a new gtk program recently I had to implement Wayland and X -isms in the code. Off the top of my head X prefers using W_Class and Wayland prefers app-id with each window having a role set. Both are fine. I honestly think Wayland is nicer but realistically you code for both. To get a global hot key you register it with the compositor and it works. But you can run a background daemon to catch all keys if you really want.
reply
kelnos 55 minutes ago
Then in that case, the point is moot, as a similar version of "no one" uses the X11 APIs directly anymore, either.
reply
sprash 3 hours ago
It means that Wayland is the worst and most idiotic graphics API ever conceived. Talking to Wayland's "asynchronous object oriented protocol" directly is a fucking disaster [1]. Secondary and partly duplicated infrastructure in form of a dbus infested maze of "Desktop-Portals" is necessary to do things as simple as taking screenshots.

As such it essentially cements the GTK/Qt duopoly. Both are extremely subpar low-quality bloated toolkits that are also responsible for the fact that the Linux desktop is still not a thing in 2026.

1.: https://www.p4m.dev/posts/29/index.html

reply
grekand46 55 minutes ago
Wayland isn't really a graphics API, it's just a protocol for clients to communicate with the compositor. Sure, there's a lot of boilerplate to get a window on the screen, but you also aren't supposed to use it directly if you want something super simple. It's really meant to be a low level interface for toolkits to be built on top of. Here are two disagreements I have with the linked article:

1. Comparison with raylib

This is imo comparing apples with oranges. Raylib sits at a much higher level than wayland, and it in fact supports using wayland as a backend.

2. Wayland is littered with callbacks because it's an object oriented protocol

It's more due to wayland being an asynchronous protocol. When you send a request to the compositor, chances are that you wont hear back from it immediately. But it's also likely that the app can do other things while waiting for the response. X11 is also in fact an asynchronous protocol, it's just that XLib creates a synchronous API on top of it (and as a result suffers from unnecessary roundtrip delays). In comparison, the newer XCB library is a lot more faithful in terms of preserving the asynchronous nature of the protocol and is used by, for example, Qt's X11 backend and even XLib itself. Of course that also makes it more difficult to use, not unlike libwayland, but the main takeaway here is that you can build a sync API on top of an async one if you wish and not vice versa.

I think some parts of the author's frustration is misplaced because they see libwayland as a toolkit, and in that case yeah it's pretty painful. But I really don't agree with the conclusion that this somehow makes it a bad foundation to build upon. As an analogy, making raw syscalls to the kernel is also painful, but that's why libraries exist.

(edit for better formatting)

reply
hparadiz 3 hours ago
Once you set permissions the screenshot taking program always has them and you don't have to do grants more than once.
reply
kelnos 31 minutes ago
I agree the portals thing is a horrid mess, but you don't need them to take a screenshot unless you're a sandboxed application. Which is probably a good thing.

You can write a simple Wayland screenshot app with a few hundred lines of code[0], and a compositor that supports the ext-image-capture source and ext-image-copy-capture extensions implemented. (Or the older wlr-screencopy.)

I have plenty of criticism for Wayland and its ecosystem, but if you're going to criticize, don't spread FUD.

(I don't like being the guy who has to assert his credentials, but: I've implemented all three of those screenshot/screencast protocols in a Wayland compositor, just a month or so ago, and know how they work, and what it takes to talk to them from a client.)

Also I read through the link you posted. There's a lot of truth to many of those frustrations, but a lot of it is based on misunderstandings of what Wayland actually is. Yes, most people should be using a toolkit. No, it's not great that the main choices are GTK and Qt. I think there's absolutely room for a mid-level toolkit that lets you do the basics without requiring all the Wayland boilerplate. smithay-client-toolkit is one such effort, and I think it's a good start, though something even higher-level on top of it would be nice.

I also don't get the callback hate. I much prefer registering callbacks over a ginormous switch statement that has to dispatch every event under the sun. Toolkits use callbacks too; does the author hate all toolkits as well? You actually could talk to a Wayland compositor with a big switch statement if you wanted, though you'd need to modify libwayland-client to return events as you iterate its event queue rather than dispatch things to callbacks. That could be a fun project for someone who wanted to make Wayland event handling just like libX11 event handling. (See: just a fundamental misunderstanding of what Wayland is.)

And comparing raylib to libwayland-client is silly; they're fundamentally different things. And you can use raylib to talk to a Wayland compositor. It's just a bad-faith argument.

If you want to compare libwayland-client to something, you have to compare it to libX11 or libxcb. And while yes, getting a simple window on-screen is indeed simpler with libX11/libxcb, doing anything more complicated than that is on par with what you'd end up doing with libwayland-client.

[0] Not counting the protocol code that wayland-scanner will generate for you, because that's like saying you have to count the lines of code in libX11 to write an X11 screenshot app.

reply
Gigachad 6 hours ago
You have to go quite out of your way to not use Wayland. Pretty much all mainstream distros switched over long ago. This just feels like the systemd drama restarted. Some will complain and hold on to the past for as long as they can but the rest of the world moves on. Wayland is the better choice today.
reply
eikenberry 6 hours ago
I think Wayland is basically waiting for a higher level abstraction to fully replace X11, at least for the desktop. I'm currently playing with the River Wayland compositor (https://codeberg.org/river/river) which separates the window manager from the compositor and I think it could fill this gap left in the transition. Not as sure about non-toolkit (gtk,qt) application development...
reply
moondev 3 hours ago
Things like this remind me how much I love open source software. Choice is amazing shout out to all the contributors!
reply
exceptione 8 hours ago
From a quick look, I can't find a reason. why? Even MS doesn't fully believe in Maui, as it seems they reblessed WPF. For Avalonia to do the work of MS seems weird, their own free regular WPF-like Avalonia UI toolkit is already the standard for cross desktop development.

I was looking for the line: Microsoft sponsored us. Even then I would not understand why they would spend effort on a doomed project. I know Avalonia being a small company has a big task ahead of porting Avalonia UI to Wayland, which makes porting MS semi-abandonware all the more confusing.

But since these people aren't idiots, I gladly assume I am missing something.

reply
corstian 6 hours ago
Between MAUI and Avalonia, Avalonia is the superior framework when it comes to technical quality as well as community response. What Avalonia doesn't have is the enterprise component libraries MAUI has. As part of this move Avalonia is about to reel in these libraries, as well as a whole bunch of MAUI teams.

In other words; Avalonia is coming for MAUIs turf.

reply
nobodyandproud 7 hours ago
> But since these people aren't idiots, I gladly assume I am missing something.

Microsoft politics. Someone who’s aware please confirm but I want to say it’s something like…

Different orgs jockey for power and you can see when the wrong orgs and initiatives influence different products.

What I can’t tell is whether it’s established teams scrambling to stay relevant. Or if it’s new teams and products imposing their influence where they shouldn’t.

But the Windows team doesn’t want to see Linux get traction, so they’ll do their part to hamper any OS shims or any native-first functions in Office.

The Office org wants to expand beyond Windows but for political reasons, the only add-in tech without platform lock-in is JS so they ally with the Azure/Cloud team to allow third parties to create add-ins.

Because of this partnership, rather than making a streamlined add-in store, publishers are required to learn the full complexities of Entra and the Partner centers.

I imagine the UX and .NET orgs are caught in similar political battles; but without any direct income or product to influence.

If I had to guess, they were in the Windows team at one point; but with the platform-independent initiatives (good) it’s been a shitshow over the past 20+ years for desktop developers (bad).

reply
exceptione 6 hours ago
I agree that MS has often internal conflicts of interest. But that still leaves su with the question: why would Avalalonia do the work that MS did not bother to do, where is the benefit? I mean, Avalonia has AvaloniaUI already.
reply
siwatanejo 7 hours ago
> Even MS doesn't fully believe in Maui

Source: I made it up.

reply
array_key_first 5 hours ago
MS doesn't believe in any of their toolkits, and the source is their actions. First off, they're addicting to introducing new toolkits instead of improving existing ones. But that doesn't even matter, because they just use Electron anyway.
reply
exceptione 6 hours ago
MS has multiple personalities, so some might do, I will give you that. Meanwhile, WPF is getting rehabilitated. It seems like that not only the average developer has concluded that all the other UI frameworks since wpf are half-baked. Someone more involved than me makes the same assessment: https://news.ycombinator.com/item?id=47480056

I recommend everyone to ignore all experiments, and go straight for AvaloniaUI, as it is quite similar to wpf, actively devloped and cross-platform. The only downside I see is that Wayland is still in progress yet.

reply
nobodyandproud 6 hours ago
How many MS products are dog fooding Maui?

When COM rolled out, every product was very much on board.

The need for Maui in-house is for…what?

reply
skeeter2020 6 hours ago
doesn't look like much; the seem to use electron for almost everything in this space. If they had faith in Maui something (VS Code, Teams, Outlook, ... calculator?) would use it.
reply
cjbgkagh 5 hours ago
Some of us have insider connections
reply
robin_reala 8 hours ago
Accessibility bridging between .NET MAUI and Avalonia is currently limited.

Nowhere near production ready, got it.

reply
MikeCodesDotNET 6 hours ago
This is the first preview release. It’s targeting a preview of .NET 11, which should help you understand that it’s not intended to be used in production right now.

We don’t expect this to graduate from a preview until November. There’s plenty of time to sort out Accessibility.

reply
siwatanejo 7 hours ago
Almost nobody needs accessibility; let's be realistic, it's obviously not a priority. The priority is to put this out the door (MVP style).
reply
skeeter2020 6 hours ago
Unfortunately too many developers share your perspective. I'd be surprised if anyone building commercial software would move ahead without accessibility support though because, 1. it's required by law in many situations, and 2. it makes good business sense.
reply
saidnooneever 6 hours ago
this was down voted but its correct. even if as a human j disagree and it sounds mean, this is how people think in general..too bad, but too true. accessibility will come after 'launch'.
reply
skeeter2020 6 hours ago
If they mean "only a small subset of your users need accessibility support" this might be true, but I haven't worked for a organization selling software in the past 20+ years that hasn't needed to provide support, and those orgs are the audience for a .net cross-platform UI solution, so in that case they are wrong; almost everyone "needs accessibility support".
reply
saidnooneever 6 hours ago
provide support on a product and accessibility are really different things.

accessibility is like implementing braille and things for deaf and colourblind etc.

support is resetting password and helping with accounts etc.

so one is to get a certain category of users to be able to access your site in the general sense. the other (support) is about helping people who already can access your site or service.

reply
tacticus 4 hours ago
> accessibility is like implementing braille and things for deaf and colourblind etc.

or

- larger fonts

- Better contrast controls,

- Non abstract art iconography,

- larger buttons and keyboard navigation,

- understanding that there are many types of colourblindness with different requriements,

- the ability to set lightmode on your app and website due to the issues reading text for anyone with astigmatisms,

- reducing the amount of animation or motion blur

The range of what accessibility is isn't small and some of it is going to be required for the vast majority of products. Also accessibility requirements change over time. eyes and hearing degrade. the desire to waste energy trying to find some stylish button that has no border and almost no contrast to indicate where it is goes away

reply
saidnooneever 3 hours ago
sure, its much more likely even than your examples too...

was there a point you wanted to make or did you just want to elaborate on what accessibility means? im sure google can churn up tons more examples if u need em....

reply
fluffybucktsnek 2 hours ago
Accessibility isn't a binary, though. Without any level of accessibility, your software is innaccesible/unusable and your MVP is DBA.
reply
pjmlp 8 hours ago
The rewrite from Xamarin.Forms into MAUI, has given a bad taste to many in the community, and kudos to Avalonia to make it happen on GNU/Linux.

By the way on macOS MAUI uses Catalyst as backend, not native macOS APIs.

Also it is kind of interesting that Miguel de Icaza, nowadays completely switched into Swift ecosystem, and is the responsible for making game development on iPad with Godot a reality. Or porting old .NET ideas of his into Swift.

reply
fingerlocks 3 hours ago
> By the way on macOS MAUI uses Catalyst as backend, not native macOS APIs.

What does this mean? Mac Catalyst is native. It’s just a thin bridge between iPhone’s UIKit and AppKit on MacOS, which are really the only two divergent frameworks in the entirety of the massive Apple SDK.

reply
throwaway27448 2 hours ago
For those who have never heard of catalyst: https://developer.apple.com/documentation/uikit/mac-catalyst
reply
troad 37 minutes ago
This is a relatively opaque article for someone who isn't up on dotnet's GUI frameworks.

So am I understanding correctly that Avalonia, the OSS project, is contributing an AvaloniaUI backend upstream to Microsoft's MAUI library, which is itself OSS? Ergo, someone using MAUI can now use its integrated AvaloniaUI backend to target platforms that were previously not available using MAUI, mainly Linux?

Happy to be corrected if I'm misunderstanding something.

reply
general1465 8 hours ago
What is unclear to me, is how does it work with Avalonia pricing wise? If I am having commercial application for Windows, Android, MacOS, iOS (Microsoft MAUI range) then according to [1] I would need to dish out 125000 EUR per application. But it was never clear to me what are the conditions which actually triggers the difference between free and paid plan.

[1] https://avaloniaui.net/xpf/pricing

reply
exceptione 8 hours ago
Let me rephrase what sibling said: the paid offering is for you when you have gotten an existing traditional windows-only wpf application and you want to have that appplication cross-platform as-is, foregoing any effort to port it to AvaloniaUI.

You won't need the paid offering if you build your stuff in AvaloniaUI directly.

reply
oblio 7 hours ago
How mature is Avalonia for an universal app? Big 3 desktop plus big 2 mobile?
reply
exceptione 7 hours ago
I can't comment on that specifically, but it works with MVVM extensions toolkit, which is handy for decoupling of event handling and is helpful in complex scenario's.

Most import thing to look for are the components you need imho. You can build themselves, but if you can use something ready made, that helps of course. You would best take look at their gallery to see if you see something similar for your needs.

reply
Kwpolska 8 hours ago
Avalonia is free and open-source. Avalonia MAUI currently appears to be MIT as well [0]. The pricing you’ve linked to is pricing for their paid offering, which wraps Avalonia and a WPF-style API for easy migration of legacy apps.

[0] https://github.com/AvaloniaUI/Avalonia.Controls.Maui/blob/ma...

reply
MrDrMcCoy 3 hours ago
Maui was on Linux the whole time :-P

https://mauikit.org/

reply
giancarlostoro 5 hours ago
Nice, I love MAUI but hate that it has no support for Linux. The only option I have is Avalonia and Photino. I love .NET but when I want to make a GUI I reach for other languages because Microsoft despite reinventing their .NET GUI stack every few years, they never add Linux support. Personally I prefer to use their built-in stuff as much as possible.
reply
Rohansi 5 hours ago
> Personally I prefer to use their built-in stuff as much as possible.

Why? Avalonia is a spiritual successor to WPF but FOSS and cross-platform.

reply
giancarlostoro 3 hours ago
Drastically less likely to get a rug pull, licensing wouldn't really be an issue for any commercial project, and easy to sell to an employer.
reply
ChicagoDave 5 hours ago
I’ve been using Claude to build native versions of a couple of apps and what was once unthinkable (maintaining multiple code bases) is now fairly trivial. And Electron/Tauri implementations are high quality.

I’m not sure platforms like Maui are necessary anymore.

I did note the comment “if you don’t want Liquid Glass” as a direct response to GenAI native development.

Time will tell.

reply
politelemon 8 hours ago
I like the possibilities this opens up but I'm struggling to understand how wasm is involved. I had the impression it doesn't have a user interface, but it's called by javascript instead.
reply
CodesInChaos 7 hours ago
https://avaloniaui.net/platforms/wasm

> Avalonia renders through Skia compiled to WebAssembly

I'd guess it builds on Skia CanvasKit and renders to an HTML Canvas element.

https://skia.org/docs/user/modules/canvaskit/

reply
tonyedwardspz 9 hours ago
Excited for this. I do wonder how much effort it will be to get an existing app working with this.
reply
blendergeek 8 hours ago
Just a reminder that this MAUI has nothing to do with the pre-existing cross platform UI framework MauiKit from MAUI Project.

https://mauikit.org/

reply
userbinator 4 hours ago
reply
soumyaskartha 9 hours ago
Microsoft adding Linux support for yet another framework nobody asked for while WinForms still exists in 2026 is very on brand.
reply
louhike 9 hours ago
Avalonia is not made by Microsoft and is often considered as one of the best way to make desktop app with .NET.
reply
Pay08 8 hours ago
I can understand the confusion, Microsoft also has a framework called MAUI.
reply
LeFantome 8 hours ago
The MAUI they are talking about is the Microsoft framework you are referencing.

MAUI is Open Source but Microsoft does not provide a Linux back-end. This is a non-Microsoft effort to bring Linux support to MAUI.

reply
pie_flavor 8 hours ago
The Microsoft MAUI framework is the one being brought to Linux by Avalonia, yes.
reply
zteppenwolf 6 hours ago
Why would anyone want .NET on Linux?
reply
drzaiusx11 5 hours ago
C# is cross platform, I'd bet money that most .Net services run on Linux these days (Azure runs more Linux VMs than Windows VMs after all) This just fills the client side gap so you can unify the full stack under one language a la node etc
reply
orthoxerox 6 hours ago
Orgs that have their LOB software written in .NET and want to migrate to Linux without rewriting it. Avalonia's commercial offering is designed to do exactly that.
reply
jeremycarter 4 hours ago
Hundreds of thousands of .NET applications run inside Linux Docker containers.
reply
dardeaup 6 hours ago
My guess would be so that they could make use of a single code base.
reply