Xamarin's Mono runtime gets a looser license
“Moving the Mono runtime to the MIT license removes barriers to the adoption of C# and .Net in a large number of scenarios [such as] embedded applications, including embedding Mono as a scripting engine in game engines or other applications,” said Miguel de Icaza, who has led development of Mono at Xamarin, on Thursday.
Mono enables development of cross-platform applications via Microsoft’s C# language, including native applications for iOS, Android, and Windows. Microsoft will contribute it to the .Net Foundation, formed to promote .Net technologies in open source.
The MIT license grants permission to use, copy, and modify software free of charge without restriction, while GPL and LGPL have more restrictive terms. “Developers embedding Mono, using Mono in DRM-protected solutions, or distributing their applications in app stores no longer need to acquire a commercial license in order to avoid the copyleft terms of earlier Mono releases,” according to a statement from Xamarin.
Formerly proprietary Mono extensions will also be released under the MIT license, including an ARM64 port of the runtime, workarounds for bugs in some ARM chips, use of Apple’s CommonCrypto to implement crypto classes in the .Net API, and integration with X.509 certificates on Apple platforms. They join support for “native types” on Apple platforms, generic value type sharing, and an offset tool to the main cross-compiler as extensions released in this manner and contributed to the foundation.
Mono class libraries previously were available under an MIT license, and the runtime was dual-licensed. Most developers could run apps on Windows, Linux, or Mac OS X on the LGPL version of the runtime, with the option to use the runtime under commercial terms when LGPL was not suitable, de Icaza said.
Xamarin was acquired by Microsoft in February. Microsoft also on Thursday revealed intentions to open-source the Xamarin framework and make it part of .Net.