Live data from Hacker News

Microsoft donates the Mono Project to the Wine team

mono-project.com

31–40 of 509 posts

Re: Microsoft donates the Mono Project to the Wine team

#31
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 the iPhone where you can't JIT, or for random architectures that don't matter anymore but once did for Linux (Alpha, Itanium, PPC, MIPs, etc.). When Microsoft bought Xamarin (which itself was born out of the ashes of the Novell shutdown of the Mono effort) and started the DotNET Core efforts to make .NET more portable itself and less a system-provided framework and merge in a lot of the stuff Mono did a single more focused project made more sense.

Mono was still left out there to support the edge cases where DotNET Core didn't make sense, which was mostly things like being a backend for Wine stuff in some cases, some GNOME Desktop stuff (via GTK#, which is pretty dead now), and older niche use cases (second life and Unity still embed mono as a runtime for their systems). The project was limping, though, and sharing a standard library but different runtimes after much merging. Mono's runtime was always a little more portable (C instead of C++) and more accessible to experiment with, but we need that less and less, but it's still perfect for Wine. So, having it live on in Wine makes sense. It's a natural fit.

Re: Microsoft donates the Mono Project to the Wine team

#32
post #7

Earlier quoted context omitted.

Perhaps us C programmers should be telling the Rust programmers to stop shitting up the industry for everyone else because "C" is too hard to get right? Really, point aside, there is no place for zealots and many places for a rational decision analysis in what tools to use. Absolutes and extremism are all bad.

[flagged]

There are a very tiny minority of people who can choose the right technology for the job.

Rust is not the answer for most problems. If you like it or not!

Re: Microsoft donates the Mono Project to the Wine team

#34
post #32

Earlier quoted context omitted.

[flagged]

There are a very tiny minority of people who can choose the right technology for the job. Rust is not the answer for most problems. If you like it or not!

I write fullstack web applications in Rust, client-side too with a shim for interfacing with some JS for the DOM.

So, I can agree with you in the abstract, but I'm gonna have to see you as part of the crowd that "hasn't figured it out yet".

Re: Microsoft donates the Mono Project to the Wine team

#35
post #11

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

I think this has already been the case for years? Mono didn't really have much of a point after MS opensource .NET and ported it to other platforms.

Re: Microsoft donates the Mono Project to the Wine team

#37
> We want to recognize that the Mono Project was the first .NET implementation on Android, iOS, Linux, and other operating systems.

Is this true? The pre-releases and version 1 of .Net came with the source for a reference implementation of the CLR that ran on Linux or BSD. I can't remember what license it had and I thought Mono was a separate project, but maybe Mono was based on it. Not that it matters now.

Re: Microsoft donates the Mono Project to the Wine team

#38

I feel like I’m missing some context here. Is this a “free as in take this puppy” situation? How do the wine developers benefit from this?

Microsoft's own FOSS multiplatform implementation of the .NET runtime is now much more performant and feature complete than Mono.

However Mono is easier to embed into other applications and easier to port to new platforms. That is for example why it's used for the .NET/Blazor WebAssembly stuff. Microsoft still maintains their own fork of Mono for this specific use case.

Mono also implements some of the legacy Windows Desktop GUI frameworks like WinForms and WPF that Microsoft never bothered to port to their new .NET runtime. This is probably why the Wine developers might be interested in Mono.

Re: Microsoft donates the Mono Project to the Wine team

#39

Earlier quoted context omitted.

That’s the old code base which has been in maintenance mode for 5 years and which Microsoft doesn’t want to maintain anymore. New development still happen in a fork which remains under the stewardship of Microsoft. Second paragraph of the article by the way, just saying.

So Microsoft gave the Wine project the software equivalent of a stained mattress?

Pretty much, by the look of it. But we still don’t know everything or what exactly the Wine project has on its metaphorical mind.

Re: Microsoft donates the Mono Project to the Wine team

#40
post #3

I have only used mono a couple times, but I am a bit confused by the wording here and it is likely because I don't know the full story of Mono. But: > Microsoft maintains a modern fork of Mono runtime in the dotnet/runtime repo and has been progressively moving workloads to that fork. Does that mean that this mono project and its associated repo and what is within the dotnet repo are not the same and could (if they h…

Mono was the .net implementation for Linux (and others ?) years ago while microsoft published the windows .net runtime Since then, microsoft supports https://github.com/dotnet/runtime , which is MIT licensed Mono has no reason to live anymore, hence the lack of commits and contributions It is a dead project, I wonder what winehq has in mind here edit: as pointed by the comments, mono supports .net runtime before the…

I know little of dotnet beyond trying various semirandom things to make some .net apps work on linux. With that out of the way, my understanding is that

- Originally there was .Net Framework, by microsoft, for windows only. Versions 1.0 -> 4.8 were released.

- Then mono came along as a somewhat clean-room reimplementation of .Net framework, focusing on making it run on Linux. Though mono does not implement windows gui widgets, so for that there's stuff like Gtk#. And you cannot run windows GUI applications on mono for this reason, even though the core parts might be portable. Eventually Microsoft acquihired the Mono team.

- Later on Microsoft made the core of .net open source and portable, creating .Net Core. Or .Net Runtime, linked above, which is apparently the same thing (not sure when they dropped the "Core" part of the name). Applications written for .Net Framework can't just be recompiled for .Net Core/Runtime, there is porting work that needs to be done. And similarly as for .Net framework, even though the core is portable and open source, the windows gui libraries are not. So again windows GUI applications written using .Net Runtime cannot run on Linux. Not sure if there exists anything like Gtk# for .Net Runtime, allowing creating native Linux GUI applications with .Net Runtime?

- Finally, we have wine which is an implementation of the Windows API on Linux. And in a wine environment you can install e.g. .Net Framework including GUI libraries, so you can run .Net GUI applications that way.

Post reply on HN