- cross-posted to:
- linux@programming.dev
- linux@lemmy.ml
- cross-posted to:
- linux@programming.dev
- linux@lemmy.ml
I am no Microsoft fanboy, but I get the impression people are a bit overly skeptical here.
I think this is fairly obvious. They have no further use for it, they can either let it rot or they can do the tiniest bit of effort and get some positive PR. It might also just be as simple as an initiative from some employees.
Wasn’t it open source all the time? The article spins it more like microsoft don’t want to shepherd the project any more, another group takes over?
Isn’t it just less work for m$ or what am I missing?
That’s my take too
Edit: Yup, Microsoft kindly abandoned their work to others.
Yup, what they needed from Xamarin was absorbed into .NET and now that have MAUI for cross platform stuff, it was either sunset mono or give it to someone else
Now if only they would add Linux support to MAUI.
Maybe they’ll add it to Mono.
TIL that Mono is a Microsoft project. I always thought it was an open source reverse engineered .NET
It was only a Microsoft project the moment they bought Xamarin.
It was at first, then they became a for profit organization, Xamarin, who was bought by Microsoft.
What’s the twist? There must be some reason.
Cost cutting.
What’s the twist? There must be some reason.
.NET runs natively on Linux since quite some time. Honestly, I don’t get what Mono is even good for these days. Maybe reverse engineering old .NET versions.
.net core is the future but Mono is still important for running legacy .net framework applications like ones that use WinForms or WPF. That’s pretty much it. Anything new should go straight to .net core.
Hm, WinForms and WPF with Wine you mean? Otherwise makes not much sense. Was WPF ever run in this combination!
Ah yeah. Mono didn’t support WPF, but Mono did support running WinForms apps natively on Linux without using Wine.
The problem with WinForms is that at least serious 3rd party libraries do a lot of direct API calls I guess, hence Wine.
IIRC Mono was mostly used for WASM as it was optimized for smaller builds than the full fat CoreCLR (talking about .NET non-Framework Mono)
WASM? Are you talking about WebAssembly?
.NET runs natively on Linux
Only
.NET Core
sadlyWhen I moved my personal laptop to Linux I needed WINE to run some source-available .NET apps that were written targeting the Windows-only
.NET Framework
All the new stuff is now on .NET Core/5.0 and up at least.
I guess it’s simply the framing: You don’t ‘donate’ open source projects, they’re already open. Is simply a case of a new organisation taking over a stalled project.
Most of the time a company does something like this they would just let it die. It’s good that Microsoft have at least made the effort to hand it over to a team who’s willing to keep it going.
It’s certainly good, I’m not arguing that. My point is, if the wine team is interested, they can fork the unmaintained project, and work on that. Eventually, people will switch over to the active fork. What Microsoft is doing, is helping the process along, and making it easier. So it’s good, and helpful - but not really a “donation” to winehq.
Actually, wine used to maintain a fork.
…Like MS-DOS getting open sourced. It’s pretty much worthless unless you need to use some really old device.
So it’s like “gifting” someone a puppy.
Probably simply that they are done with it (mono specifically, and possibly .net framework in the long run)
I would be extremely surprised if they are planning to abandon .NET
With ICAAN introduction of gTLDs now they can drop .NET and pick up .ONLINE
Underrated comment.
Well they said .NET Framework, and I also wouldn’t be surprised if they more or less wrapped that up - .NET Framework specifically means the old implementation of the CLR, and it’s been pretty much superseded by an implementation just called .NET, formerly known as .NET Core (definitely not confusing at all, thanks Microsoft). .NET Framework was only written for Windows, hence the need for Mono/Xamarin on other platforms. In contrast, .NET is cross-platform by default.
They officially don’t care about running .NET applications on Linux anymore. They never really did before but so few people fell for that trap Microsoft is finally ready to turn in the towel
What the hell are you talking about?!
They are saying very little in Linux world moved to .NET/C# : https://qa.debian.org/popcon.php?package=mono
It’s just not popular in Linux world despite MS attempts to make it so. It’s a Windows people language.
If nothing else, a lot of (containerized) .NET (web) services run on Linux. Also note that .NET apps can be packed as standalone (ignore the size) and as such are as any other standalone app.
You got some stats? The Debian stats say no one is using it on the desktop or traditional server stuff. I can believe Windows C# Dev are porting their closed service to Linux to improve, well, everything.
No stats, just what I see and consider logically. If you have a .NET (web) app, it makes sense to run it (for free) under Linux (directly or using docker/kubernetes/etc.) instead of paying Windows server license. Sadly I don’t see download counter for dotnet linux images but they would be some sort of an indicator. I can believe Desktop apps are not many, though, for historical reasons mostly. But now one can create a standalone nice looking app as well, perhaps they will be more frequent in future, who knows.
I think it will remain a Windows dev thing. Even if they sometimes use Linux as a runtime. Linux devs will use Python or something else. PHP is legacy really now. Go is popular for apps started at a certain time, but Rust seams to be replacing it. Which is good as Go is as Google as C# is MS.
Very few package maintainers even like providing packages written in C#/.NET. For example, the linux version of git-credential-manager (included with git on windows) is only available on gentoo, nixpkgs, and the AUR. There’s linux builds in the github releases, but nobody will ship it.
Huh, you are very much mistaken. Since .NET they have official and vast support for running on Linux and MacOS. Before they didn’t and hence Mono/Xamarin.
It’s more they are focused on running ASP and CLI apps on Linux, there is no official MS GUI library/framework for Linux which is one big thing missing from modern .net, there are a couple of thrid party ones like Avalonia however.
That’s extremely uncharacteristic. Are they trying to prepare for an antitrust probe?
It’s not that uncharacteristic. Mono is a fully open source project they didn’t create, didn’t really work on, and one they can’t extract any value from. So this is basically a gesture that doesn’t cost them anything, but at the same time it doesn’t do much except generate a headline.
Microsoft gives the Wine team infectious mononucleosis. Got it.
But seriously, Microsoft is nobody’s friend and shouldn’t be trusted.
From a Microsoft employee: with all the conspiracy theories people have about Microsoft secretly planning to control th world, the most surprising thing is them assuming MS are this organized to attemp it.
Lol noone is thinking they are taking over the world. There is no conspiracy. Everyone has been so fucking tired of the operating system monopoly theve had on PC’s before they started ruining every fucking piece of technology they touch.
I’m just speaking from their history. Like when they embraced Java, built their own JVM, shipped it with Windows, and then forked the Java language by adding Windows-specific APIs to Microsoft Java and not adding the Java 1.2 features to Microsoft Java. You can’t convince me their aim all along wasn’t specifically to kill Java, and cross-platform technologies like it. The whole “Windows tax” thing is another good example. And “Open Core.”
And, who knows. Maybe they’re either nicer now or less competent at that kind of evil. But if so, that’s a relatively new thing. Their history as a company is full of (not-so-)“secretly planning to control the world”. And they have never really faced any consequences for their anti-trust violations. And if they didn’t want people to hold grudges, maybe they should have thought of that before fucking everyone over as thoroughly as they possibly could.
I guess you could say Microsoft was perfecting the art of enshittification before it became such a pervasive thing. Plus, I largely blame Gates personally for the rise of the institution of proprietary software, which is also complete BS.
Mind you, I don’t blame you for working for Microsoft or anything. No ethical consumption (or employment) under capitalism and all that. And it’s not like I’m not doing evil things on a regular basis as an employee where I work.
In an organization as large as MS there have to be a few good guys. Just don’t let the corporate leadership hear about it.
I know a lot of folk that work at MS or have worked there, they are all very good people. They are highly motivated professionals that are top in their field. MS is a rich company and they recruit the best they can. However those are not the people making any kind of decisions. And it’s a cut throat company, if the budget gets cut, you are out on your ass. At least in most of the world, where strong employee protection isn’t a thing.
Don’t get me wrong, MS has a lot of bad apples just like any other company. Useless managers who say dumb shit and take praise for other peoples work. A leadership that doesn’t care about anything except their bonuses and the bottom line. But at least as far as the engineers go, there’s plenty of really good folk.
People also seem to forget how huge MS actually is. And a lot of the time the different branches within the company are as far away from each other as can be. Even within the same branch one can only talk to so many people.
Microsoft has had dotnet-core for awhile. If you are running production dotnet loads (eg a C# app), you’ve probably been using those Linux containers for awhile. This doesn’t surprise me; they usually aren’t interested in maintaining an open version of software they have more restrictive licenses for. Enterprises will continue to use dotnet-core and Microsoft will probably do something to shoot mono in the foot in a few years.
Actually everybody will use .NET and not Mono if possible, as it’s officially supported and a successor.
The reason to use mono over dotnet is political. This is stirring up some really old shit; I expect a continuation of that shit now. Mono is currently MIT as is dotnet core. Who knows what direction each project will go now? MS has a history of fucking with licenses and Wine uses copyleft setups.
Someone on that page commented:
“It was always open source. They just bought the company who created* and maintained, it, moved the devs over to their own fork and closed down the original, graciously allowing the wine team to maintain their own fork of the old code, as if they needed a permission, lol. It’s a good PR move (also for Wine, mind you) but nothing else.”
Remember back in 2008 when people were losing their shit if someone created a mono app on Linux? Miguel remembers.
Plenty of good reasons existed for that wariness, and if they are doing this now it’s because it benefits MS in some way. Maybe they just got sick of maintaining it and figured they’d buy some goodwill.
I typed that before reading the article then saw this:
Microsoft maintains a modern fork of Mono runtime in the dotnet/runtime repo and has been progressively moving workloads to that fork. That work is now complete, and we recommend that active Mono users and maintainers of Mono-based app frameworks migrate to .NET which includes work from this fork.
Here you go Wine devs, we’re cleaning our our garage, and by the way, we would really like folks to continue to be hooked to the MS teat of .net instead. Please keep maintaining this for us. Aren’t we great?
I can’t help but think that Microsoft has decided to proceed in some way that will break compatibility, so they’re done with Mono now.
I know it’s skeptical, but I just have no faith in that company to act in good faith with anything.
dotnet is now a multiplatform framework itself. Do they still need mono?
Is mono not the .net framework version? .net core has always been multi platform, but is not compatible with .net framework apps. So any .net apps built against 3.5 or 4.x would still need to use mono.
It is the .net framework version. I’m not sure mono is used in anything but Xamarin and a handful of gnome apps. Xamarin has a clear upgrade path to MAUI but not without some effort and the risk of missing nugets, I did it on a small app once. This isn’t super useful.
As much as it is beloved, I don’t think windows sees Linux / wine as any kind of substantial threat.
I think they do in the enterprise hosting / software dev world, which is the reason for so much effort being poured into WSL, but for standard client applications or the “average user” switching to Linux I agree
Yeah, they want to be able to get people totally off Linux as a root OS.
By creating WSL, they now can say, "Oh, you like to develop for/on Linux? Well good news, Windows has Linux built in! Just come on over to Windows and you can use WSL and Linux on Azure for all your Linux needs!
I think it is partly that, but I think it is partly all the bright young tech kids coming in from uni want Linux not Windows. I think it’s targeted at inside and outside.
And WSL is pretty good according to one of the other guys in my department that’s been using it.
The problem for Microsoft is that my entire user experience is better when I boot straight into Linux and use all their software (except vscode) in browser tabs.
Very true because the relationship they have with laptop manufacturers will ensure windows domination
I can’t help but think that Microsoft has decided to proceed in some way that will break compatibility, so they’re done with Mono now.
It’s essentially right there in the article:
Microsoft maintains a modern fork of Mono runtime in the dotnet/runtime repo and has been progressively moving workloads to that fork. That work is now complete, and we recommend that active Mono users and maintainers of Mono-based app frameworks migrate to .NET which includes work from this fork.
We’re done with it, you guys can take the scraps. By the way, ours is better and folks should move to it.
proceed in some way that will break compatibility
That’s what new major versions are for.
Beware of Microsoft bearing gifts…
They don’t give a shit anymore. The business customers are paying for 365 and the gamers are paying for gamepass. Those are the money makers now. If you want you don’t run windows, but you’re still running windows apps (including 365) then Microsoft still gets paid.
So they forked, gave mono away and asked that everyone use their fork?
It seems like they’re hoping to gain a significant chunk of the mono community directly into .net.
That could be good or bad I suppose.
That’s a good.way to burden a competitor with a huge project.
.Net sucks, compared to mono. The compiler is slower, filesize after optimization is still higher and the character set in cli is far more limited when I compile an app with .Net.
Are those the most important factors for a framework? Or in the top 5?
… and execution speed is faster. And they’re both open source. I mean, good thing we have choices, right?
Source? I’d like to see some modern numbers about those compile times. Hasn’t been my experience at all.
Read the headline and thought “there’s a catch…”
Finally got around to reading the post and Microsoft is very politely saying “we’ve completed stealing their shit now. Don’t know why anyone would want it, use ours now. You can have it though.”
Thanks I guess? I’m glad it’s out of their hands now and with an open source group that cares and can make a difference.
Extend, Embrace, Extinguish?
Discard, De-license, Delete