Live data from Hacker News

Microsoft donates the Mono Project to the Wine team

mono-project.com

201–210 of 509 posts

Re: Microsoft donates the Mono Project to the Wine team

#201
post #59
post #43

Earlier quoted context omitted.

I'm not a dog person: a puppy would be a burden (financially and time-wise) and provide me barely any fun.

That's what ’free as in puppies’ mean. Free software is typically described as "free as in freedom" or "free as in free beer". (This is probably a limitation of English tho, my language has 2 different words for permissions and costlessness.) GP above proposes the "free as in puppy" variant, which means that it is a burden of maintenance. I can't recall any real examples for this.

Free software releases often include the "free as in puppy" implication as a disclaimer of responsibility for the effort you may need to expend to make use of it - "if it breaks, you get to keep both pieces".

https://english.stackexchange.com/questions/118717/how-is-th...

Re: Microsoft donates the Mono Project to the Wine team

#202
post #191

Earlier quoted context omitted.

Based on how Xamarin performed prior to the MS acquisition, I'd guess dead. The license cost was high, and the MS acquisition came right around the time React Native and Flutter started to enter v1. I think they'd of been blown out of the water pretty quickly. At least Microsoft allowed Xamarin to get into enterprise .NET shops pretty quickly. There's a lot of B2B form based apps written in Xamarin. I worked on a pre…

Ever heard of Rotor? https://www.codeguru.com/dotnet/net-nuts-bolts-the-joy-of-ro... Or DotGNU? https://www.gnu.org/software/dotgnu/ What happened to Xamarin looks like Microsoft took whatever IP was relevant, and left everything else go, which this decision is a confirmation thereof. It is kind of interesting to see Miguel's feedback, now that he his allowed to talk about how things went down.

I’m a big fan of Miguel’s work. His comments have been pretty interesting. You also don’t have to read between the lines much to know how he feels about what’s happened to his tech.

I assume he’s got fuck you money now though. I’m very excited to see what he does with Swift and Godot, Swift is a great language for gamedev.

Re: Microsoft donates the Mono Project to the Wine team

#203
post #116

Earlier quoted context omitted.

For historical context: this was before the conclusion of the antitrust case that led Microsoft to start softening its stance toward open source. https://en.wikipedia.org/wiki/United_States_v._Microsoft_Cor... . This was the same year Antitrust came out: https://en.wikipedia.org/wiki/Antitrust_(film) Any support for open source or cross-platform stuff was a bulwark against claims of monopoly abuse, but none of it wor…

> Nowadays it sounds like .NET Core + third-party GUI libraries is the way to go. For reference for those unfamiliar with the terms: .NET Core was the name given to the cross-platform fork of the .NET runtime. It was forked out of .NET 4.x and dropped support for a lot of things in the first versions. It ran on various distributions of Linux and MacOS. At the same time there were forks of other libraries/frameworks i…

Good write up that wonderfully encapsulates how stupid Microsoft’s naming is - you didn’t even mention .NET standard.

I love .NET. It’s a great stack, especially for backend web apps. Blazor is a great SPA framework too. But I loathe how Microsoft continue to handle just about everything that isn’t the framework and C# / F#. It’s laughable.

Re: Microsoft donates the Mono Project to the Wine team

#204
post #126

I worked on Mono a lot back in the early 2000s (back in the SVN days before it moved to Git, even). This move makes a lot of sense. Things evolved a lot over the years. Mono's legacy goals, which are to be a portable CLR (.NET) runtime for platforms that Microsoft didn't care about, don't make much sense today. Mono made a lot of sense for running places where full .NET didn't, like in full AOT environments like on t…

i want to love dotnet-core, especially since godot switched from mono in godot 3 to dotnet-core in godot 4, but so far i haven't been able to currently debian has a mono package but no dotnet-core package. i'm not sure why this is; usually when debian lacks a popular nominally open-source package like this, it's either because it fails to build from source, or because it has some kind of tricky licensing pitfall that…

.NET Core is available for Debian, you just have to add Microsoft's APT source [1].

Fedora [2], Ubuntu [3], and FreeBSD [4] build .NET from source themselves. A lot of work has been done to make it possible to build .NET from source [5] without closed source components, so it might just be a matter of someone being motivated to create the package for Debian.

[1]: https://learn.microsoft.com/en-us/dotnet/core/install/linux-...

[2]: https://src.fedoraproject.org/rpms/dotnet8.0

[3]: https://launchpad.net/ubuntu/+source/dotnet8

[4]: https://github.com/freebsd/freebsd-ports/tree/main/lang/dotn...

[5]: https://github.com/dotnet/source-build

Re: Microsoft donates the Mono Project to the Wine team

#205
post #126

Earlier quoted context omitted.

i want to love dotnet-core, especially since godot switched from mono in godot 3 to dotnet-core in godot 4, but so far i haven't been able to currently debian has a mono package but no dotnet-core package. i'm not sure why this is; usually when debian lacks a popular nominally open-source package like this, it's either because it fails to build from source, or because it has some kind of tricky licensing pitfall that…

.NET Core is available for Debian, you just have to add Microsoft's APT source [1]. Fedora [2], Ubuntu [3], and FreeBSD [4] build .NET from source themselves. A lot of work has been done to make it possible to build .NET from source [5] without closed source components, so it might just be a matter of someone being motivated to create the package for Debian. [1]: https://learn.microsoft.com/en-us/dotnet/core/install/…

yes, i know about the microsoft apt source

as for building from source, i see, thanks! or maybe it's unresolved legal concerns? nobody so far in this thread has known of any, though

Re: Microsoft donates the Mono Project to the Wine team

#206

Earlier quoted context omitted.

No, Microsoft's .NET only supports WinForms on Windows. They do have an official cross platform GUI toolkit in MAUI, but it strangely does not support Linux.

Last I knew it is also considered pretty lackluster. Every time I read up on it it feels like, even beyond the lack of Linux support people just don't care for it. If I was building a cross platform native app with .NET I'd probably use Avalonia right now.

Yeah, the took an age delivering it, then it came out and most of the early reports were “It’s still not ready.” and then I think Microsoft just gave up.

I think not supporting Linux was a tactical error, though. Some people will put up with a lot for Linux GUI support, and some of those people are the types who can resolve problems with your half-baked GUzi framework.

Re: Microsoft donates the Mono Project to the Wine team

#207
post #11

Is the correct interpretation, reading between the lines that the original Mono project is being retired, and basically put on life support?

Somewhat?

Mono is still really the only way to run older .NET (pre FOSS runtime/Core .NET) on non-Windows platforms.

So Wine has historically kept a fork of mono for use within Wine for supporting .NET apps.

Modern .NET can be built for Linux, etc so this is less relevant now but there are still a lot of apps that depend on old .NET and Wine still gets value out of that.

There are a bunch of downstreams that get used for various purposes (Microsoft uses mono for webasm embedded .NET for example) so it makes sense to give over ownership of Mono to the Wine community as they are best aligned with the original upstream's intended use case (as a full replacement for .NET).

So yes it's on life support but arguably more in the sense that it has since specialized into a bunch of downstream projects. The upstream will probably mainly be used for coordinating common improvements that all of the downstream forks care about (which are mainly Wine and Microsoft).

Re: Microsoft donates the Mono Project to the Wine team

#208

Earlier quoted context omitted.

> Nowadays it sounds like .NET Core + third-party GUI libraries is the way to go. For reference for those unfamiliar with the terms: .NET Core was the name given to the cross-platform fork of the .NET runtime. It was forked out of .NET 4.x and dropped support for a lot of things in the first versions. It ran on various distributions of Linux and MacOS. At the same time there were forks of other libraries/frameworks i…

Good write up that wonderfully encapsulates how stupid Microsoft’s naming is - you didn’t even mention .NET standard. I love .NET. It’s a great stack, especially for backend web apps. Blazor is a great SPA framework too. But I loathe how Microsoft continue to handle just about everything that isn’t the framework and C# / F#. It’s laughable.

Well, to be fair .NET Standard wasn't a framework, it was a standards/compatibility label and compilation target.

.NET Standard includes various versions of things that MS doesn't even touch.

I stopped doing .NET stuff before .NET 5 so I'm not hugely up to date with the latest shenanigans.

Re: Microsoft donates the Mono Project to the Wine team

#209
post #124

For everyone who is confused by what is going on, here's the explanation: Today, there are 2.5 Mono's: Mono that lives in https://github.com/mono/mono . This is the original Mono codebase that was written back then and was the .NET Framework for Linux, with corresponding compat. and such, pioneered by Miguel De Icaza, who now seems to be happier in Swift land. At the present day, it was receiving very little maintena…

> due to a massive rift in performance between the two Not that massive; factor 1.8 as we found out recently.

This is not an accurate assessment, I'm afraid.

The comparison we discussed was for unrepresentative code that used none of the features that make .NET fast (generics, SIMD, expected forms of inheritance and abstraction and devirtualization they enable, CoreLib APIs). The closest case in there was JSON serialization which CoreCLR was 385% faster at. It is unfortunate that you feel a need to say this, knowing that it doesn't even show a tip of the iceberg.

Please do not mislead casual readers here with such comments.

They will have a bad time running basic programs - the original Mono is outdated and cannot execute assemblies that target non-legacy versions, and the Mono that lives in dotnet/runtime (which you have to go out of your way to use on CoreCLR platforms) tends to have all kinds of regressions on user-provided code that is not as robust on runtime checks to ensure that Mono does not accidentally go onto the path that that it has especially bad regression on. Even CoreLib code nowadays uses more and more struct generics assuming monomorhpization which performs poorly on Mono. There is very little work done to improve performance on Mono with effort invested mostly in WASM area and to ensure it does not regress further. Major platforms like Android and iOS are in the slow but steady progress to migrate to CoreCLR/NativeAOT (there are other reasons not in the least much smaller binary size). And for WASM there is NativeAOT-LLVM experiment that is likely to make Mono obsolete for that target too.

The workloads that matter and are representative are the ones produced by C#, F# and VB.NET compilers as well as projects that care about exercising the standard library and/or produce recommended CIL forms (like https://github.com/FractalFir/rustc_codegen_clr).

Re: Microsoft donates the Mono Project to the Wine team

#210

Earlier quoted context omitted.

Good write up that wonderfully encapsulates how stupid Microsoft’s naming is - you didn’t even mention .NET standard. I love .NET. It’s a great stack, especially for backend web apps. Blazor is a great SPA framework too. But I loathe how Microsoft continue to handle just about everything that isn’t the framework and C# / F#. It’s laughable.

Well, to be fair .NET Standard wasn't a framework, it was a standards/compatibility label and compilation target. .NET Standard includes various versions of things that MS doesn't even touch. I stopped doing .NET stuff before .NET 5 so I'm not hugely up to date with the latest shenanigans.

Oh don’t get me wrong - I wasn’t criticising your write up. It was concise and still relevant.

It’s just funny for newcomers to peel back the onion more. Writing a source generator? Target .NET standard 2.0 (not even 2.1) for a whole host of reasons.

Post reply on HN