A long, strange FOSS circle ends as Microsoft donates Mono to the Wine project

Man looks at the selection of a wine shop with a tablet in his hand.
Enlarge / Does Mono fit between the Chilean Cabernet and the Argentinian Malbec or is it perhaps more of an orange?

Getty Images

Microsoft has donated the Mono project, an open-source framework that brought its .NET platform to non-Windows systems, to the Wine community. WineHQ will maintain the Mono project's upstream code, while Microsoft will encourage Mono-based apps to migrate to its open-source .NET framework.

As Microsoft notes on the Mono project homepage, the last major release of Mono was in July 2019. Mono was “a pioneer for the .NET platform on many operating systems” and was the first implementation of .NET on Android, iOS, Linux, and other operating systems.

Ximian, Novell, SUSE, Xamarin, Microsoft – now Wine

Mono began as a project by Miguel de Icaza, co-developer of the GNOME desktop. De Icaza ran Ximian (originally Helix Code) with the goal of bringing Microsoft's then-new .NET platform to Unix-like platforms. Ximian was acquired by Novell in 2003.

Mono was key to de Icaza's efforts to bring Microsoft's Silverlight, a browser plug-in for “rich-media interactive applications” (a competitor to Flash), to Linux systems. Novell promoted Mono as a way to develop iOS apps using C# and other .NET languages. Microsoft applied its “Community Promise” to its .NET standards in 2009, confirming its willingness to let Mono thrive outside of its specific control.

By 2011, however, Novell, which was about to be acquired, was no longer doing much with Mono, and de Icaza founded Xamarin to push Mono for Android. Novell (through its subsidiary SUSE) and Xamarin agreed that Xamarin would take over the intellectual property and customers and use Mono within Novell/SUSE.

Microsoft released most of .NET as open source in 2014, then went a step further by fully acquiring Xamarin in 2016, placing Mono under an MIT license, and bundling Xamarin offerings into various open source projects. Mono now exists as a repository that may one day be archived, though Microsoft promises to keep binaries available for at least four years. Those who want to continue using Mono are directed to Microsoft's “modern fork” of the project within .NET.

What does this mean for Mono and Wine? Not much at first. Wine, a compatibility layer for Windows apps on POSIX-compliant systems, has already used Mono code in fixes and has its own Mono engine. By donating Mono to Wine, Microsoft has at least put to rest the last concerns anyone might have had about the company's control over the project. Of course, it's a very different, open source-savvy Microsoft making this move, but it's a good gesture nonetheless.

Leave a Reply