theregister.com

Fresh Wine-flavored version of Mono released

The WINE project has put out its first release of Mono, the original FOSS .NET runtime, since it took the project over from Microsoft six months ago.

It has been a while – as Mono 6.14.0's release notes say:

This is the first release of Framework Mono from its new home at Winehq. It includes work from the past five years that was never included in a stable release because no stable branch had been created in that time. Highlights are native support for ARM64 on macOS and many improvements to windows forms for X11.

This is all good stuff. The Mono Project has been largely dormant since about 2019, for good and pragmatic reasons. In August 2024, Microsoft announced that it was handing over Mono to the WineHQ organization – the team of developers who develop the WINE Windows-compatibility layer for Unix-like OSes. In the last few years, we've reported on the releases of WINE 7, WINE 8, WINE 9 and most recently WINE 10.

As we have described in those stories, WINE is quite mature now, and as our 2022, 2023, 2024 and 2025 pieces show, the developers crank out upgrades quite regularly and frequently. One component is what this version's release notes describe thus:

"Wine Mono" is a downstream distribution based on Framework Mono that is used in Wine to replace .NET Framework.

So: Mono is under new management, there's a new release, and there are grounds for some optimism that there will be more new releases in the near future as well. That's good. The release notes have a number of first-person statements in them: "I'm hoping", "I understand" and so on, but the document is unsigned. We think it's the committer, Esme Povirk, whose day job is at Codeweavers. As we said in our WINE 7 story, this company does a lot of the development work on WINE these days, in aid of its commercial version of WINE, dubbed Crossover, which runs Windows apps on Unix boxes without needing a VM or a license – even including Apple Silicon Macs.

Why the Mono Project exists and how we got here is a complicated story, and there is a lot of history involved. The modern computing industry suffers from collective amnesia to the point of serious functional impairment, so we may have to dig quite deeply here to explain what this is and why it has happened.

Mono is one of two separate and independent implementations of the Microsoft .NET common language infrastructure. The other one is Microsoft's own. Back when the Mono Project was started by GNOME Project co-founder Miguel de Icaza, Microsoft's version was closed, proprietary code, although the functions it implemented were documented standards – notably, ISO/IEC 23271:2012 and ECMA-335.

The Mono Project began in 2001 as a FOSS implementation of the Microsoft Common Language Runtime and supporting frameworks, to enable .NET code to run on Linux. Ximian, the company behind Mono – and significant parts of the GNOME desktop – was acquired by Novell in 2003.

Mono got there – The Register reported on the release of Mono version 2.0 way back in 2008. But there was resistance in the Linux world against including tools implemented in .NET in common Linux distributions, as The Register reported in 2009, and tools such as Tomboy ended up being dropped by most distros.

Attachmate acquired Novell in 2010 and a year later laid off most of the Ximian staff. The team quickly reassembled and started a new company called Xamarin. That company partered with Microsoft in 2013, and a few years later, got swallowed up by Redmond.

However, some of the reasons for the existence of an open source version of .NET were obviated by later developments. Microsoft started the process of making .NET open source in 2014. By 2019 it announced that .NET 5 would be open source and cross-platform, merging Mono and .NET into one. The company released .NET version 5.0 in November 2020.

The work of running it as a FOSS project did hit some issues, as The Reg reported in 2021, although later that year, the company released .NET 6.0. In 2022, .NET 6 even formed part of Ubuntu 22.04. By then, though, de Icaza had left Redmond.

When Ubuntu Jammy included .NET 6, we described a bit of the history of .NET and what was included – and saliently, what was not included – but the short version is that it's server-only stuff. The Linux editions of .NET provide the tools to compile and run text-mode versions of apps in Windows-native languages such as C#, but not those to build and run native graphical apps. There are third-party tools, but the point is that you can't take graphical Windows apps written in .NET and recompile them for Linux.

That is in part where Mono comes in. With a new team in charge, it would be good to see a new surge of development and life in the project – but we suspect that for many FOSS developers, it remains tainted by association, and developer interest these days lies more in the direction of web apps and the Javascript framework of the day. ®

Read full news in source page