Microsoft transfiere a Wine la dirección de Mono, la reimplementación abierta de .NET

Microsoft ha anunciado que transfiere a Wine la responsabilidad de Mono, la reimplementación del framework .NET publicada como código abierto. Esta noticia posiblemente haya dejado a más de uno con la cara torcida, así que vamos a repasar un poco los antecedentes para entender el contexto de lo que está ocurriendo.

Mono, o Proyecto Mono, nació como una reimplementación del framework .NET de Microsoft publicada como software libre. Fue anunciado en el año 2001, contó con el apoyo de una empresa llamada Ximian, la cual fue fundada por Miguel de Icaza, y en un principio su propósito era proporcionar una plataforma de desarrollo de aplicaciones para el escritorio Linux. La primera versión estable (1.0) fue publicada el 30 de junio de 2004, pero Ximian ya había sido adquirida el año anterior por Novell.

Tiempo después, en 2011 y después de que Attachmate despidiera a muchos de los empleados de Novell, la gestión de Mono fue transferida de SUSE a Xamarin, una empresa creada por el propio Miguel de Icaza que tuvo como propósito servir una versión comercial de Mono. Bajo Xamarin, Mono empezó a tener un mayor enfoque hacia la multiplataforma, alejándose de la idea de soportar el escritorio Linux al menos en su variante comercial.

Xamarin fue comprada por Microsoft en el año 2016 y desde entonces el gigante de Redmond pasó a ser el responsable de Mono. Este cambio de manos supuso el cambio definitivo de la licencia, que pasó de GPLv2 a MIT. Esto posiblemente se deba a un intento de ajustar Mono al resto del ecosistema de .NET publicado como código abierto, que emplea la permisiva licencia MIT.

Dejando de lado anécdotas y episodios, la trayectoria de Mono no ha estado exenta de controversia, sobre todo porque en un principio fue un intento de llevar una de las tecnologías estrella de Microsoft a Linux, cosa que se sumaba a las dudas que generaban las patentes que posee la responsable de Windows en torno a .NET. Por otro lado, es una tecnología que ha tenido repercusión en la industria de los videojuegos, siendo parte de Unity (el motor de Unity Technologies, no el antiguo escritorio de Canonical) y de MonoGame.

Centrándonos en la noticia, Jeff Schwartz, empleado de Microsoft, ha anunciado a través del repositorio GitHub de Mono que les “complace anunciar que la organización WineHQ asumirá el cargo de administrador del Proyecto Mono en wine-mono / Mono · GitLab (winehq.org). El código fuente en mono/mono existente y otros repositorios permanecerá disponible, aunque los repositorios pueden archivarse. Los binarios permanecerán disponibles hasta por cuatro años”.

Si alguien cree que Microsoft está deshaciéndose totalmente de Mono, el propio Schwartz explica que la compañía para la que trabaja “mantiene una bifurcación moderna del entorno de ejecución de Mono en el repositorio de dotnet/runtime y ha estado trasladando progresivamente cargas de trabajo a esa bifurcación. Ese trabajo ya está completo y recomendamos que los usuarios activos de Mono y los mantenedores de marcos de aplicaciones basados ​​en Mono que migren a .NET, que incluye el trabajo de esta bifurcación”.

Para terminar, Schwartz ha reconocido en nombre de Microsoft “que el Proyecto Mono fue la primera implementación de .NET en Android, iOS, Linux y otros sistemas operativos. El Proyecto Mono fue pionero para la plataforma .NET en muchos sistemas operativos. Ayudó a hacer realidad .NET multiplataforma y habilitó .NET en muchos lugares nuevos y apreciamos el trabajo de quienes nos precedieron”. Es bueno recordar que el último lanzamiento mayor de Mono fue en 2019 y que el último lanzamiento de parches fue en febrero de 2024.

El mensaje de Schwartz ha sido copiado y pegado en el índice del sitio web de Mono, lo que insinúa que el proyecto puede vivir una profunda reestructuración en los próximos meses en su transición a Wine. Aparte de la cercanía tecnológica, Wine emplea su propia bifurcación de mono, Wine Mono, que es empleada para ejecutar aplicaciones hechas con el framework .NET. Esto quiere decir que esta transferencia puede ser de interés para Wine, sobre todo porque le permitiría tener un mayor control sobre un proyecto que le es importante. Por otro lado, es posible que Valve, quien es responsable de Proton, vea con buenos ojos este movimiento.

Veremos qué futuro le depara a Mono, pero viendo la gran cantidad de empresas y proyectos que hay por ahí, Wine parece en un principio un buen destino, más viendo que se trata de un proyecto que depende de la tecnología para su soporte.

Fuente: www.muylinux.com

Mono 4.0.0 adopta el código de .NET que Microsoft ha liberado como Open Source

Mono-Microsoft-open-source-punto-net

A pesar de no haber ningún anuncio oficial, ni un enlace para descargarlo, las notas de lanzamiento de Mono 4.0.0 han sido publicadas en el sitio web del proyecto, detallando los cambios y novedades que incorporará.

Mono 4.0.0 sustituirá varios componentes propios por otros creados a través del código de .NET liberado por Microsoft. La intención de los desarrolladores del proyecto es crear un “Mono Core” que se ajuste a la líneas de “.NET Core”, con el fin de permitir el uso de la máquina virtual de Mono con el nuevo sistema de distribución de bibliotecas que está siendo desarrollado con CoreFX. Mientras que Microsoft trabaja en una versión renovada de su framework, Mono seguirá ofreciendo una API que rastree las versiones de escritorio y servidor de .NET.

Además de la previsible incorporación del código de .NET de Microsoft al Proyecto Mono, se han publicado las siguientes novedades:

  • El compilador de C# de Mono ahora usa por defecto C# 6.0.
  • Optimización en las operaciones de coma flotante gracias al uso de 32 bits matemáticos para las operaciones de coma flotante de 32 bits.
  • Abandono del soporte para las versiones de .NET 2.0, 3.5 y 4.0. Mono 4.0.0 solo será compatible con .NET 4.5, así como los perfiles para dispositivos móviles.
  • Mejoras en IKVM.
  • Soporte básico para PowerPC64 Little Endiar (PPC64LE).
  • Sobrecarga del depurador más ligero.

La liberación del código del Framework .NET ha supuesto toda una revolución para Mono, que en su última versión ha decidido romper con lo anterior en algunos aspectos y con la clara intención de profundizar en esta línea, así que en futuras versiones veremos más partes .NET incluidas en esta implementación libre, que lleva siendo multiplataforma mucho antes de que Microsoft volviese Open Source la rama oficial del proyecto.

Personalmente espero que estos movimientos ayuden a Mono a ser más fácil de implementar entre distintos sistemas operativos, porque por mi escasa experiencia con él, siempre me ha resultado difícil ejecutar un formulario sencillo tanto en GNU/Linux como Windows, mientras que en Java ejecutar cualquier bytecode sobre cualquier sistema operativo es sencillísimo, más tras el lanzamiento de Java 7, que se basó en OpenJDK.

¿Qué es Mono?

Para los que anden despistados, Mono es una implementación de .NET bajo software libre, que ha intentado acercar el famoso de framework de Microsoft a otros sistemas, como GNU/Linux, OS X, Solaris, Andoid e iOS, con una versión también para el propio Windows.

Iniciado por Miguel de Icaza, que sigue al frente, se ha ido beneficiando de todo aquello que Microsoft ha ido liberando hasta el día de hoy. Empezó bajo Ximian, una empresa fundada por el propio Icaza que luego fue adquirida por Novell. Tras ser comprada por Attachmate, se puso en duda la continuidad del proyecto, así que pasó a Xamarin, la actual empresa de Miguel de Icaza.

Xamarin y Microsoft han creado la .NET Foundation, que pretende fomentar la colaboración y el desarrollo abierto del framework .NET.

Fuente: www.muylinux.com