I’m about to start a new job working with C#/.NET and will try to practice before I start. How much of a pain is it to do on Linux?
Mono is the best open source free/libre??🤔 implementation of DotNet and CLI specification out there, it’s officially sponsored by M$. DotNet/C# it’s a great technology/platform BUT mostly of its ecosystem is M$/🍎 dependent, and therefore tends to work with it in proprietary environments 😢.
In addition, DotNet cannot be built from source.
As I understand, you can build from source but it’s more complex, or What do you mean?
It is specifically as you point https://github.com/dotnet/source-build
It is WIP and not everything is built from source yet.
These are the same reasons why OpenRA just download the DotNet package and embed it in the AppImage.
To build DotNet, there is no full bootstrapping yet. As result, you cannot build DotNet with, for example, Mono which already supply this first thing.
Nearly all .NET Core repositories require the .NET Core SDK to build. This is a circular dependency, which presents a bootstrapping problem.
Horrible 😨 . Surprising that the community of its developers accepts this. The Open Source Initiative has done a great job brainwashing 🧠 .
https://github.com/dotnet/source-build/issues/1930 Here’s more info about the bootstrapping problem if anyone is interested.
The sequence of commits you’d have to build to get from one to the the other might be prohibitively long, and AFAIK nobody is tracking this. Fortunately we avoid using floating versions in our repos (we commit updated pinned versions into the repo source), so it should be traceable. But I don’t think we have tooling to do that tracing.
It sounds like it might be theoretically possible, but unproven and not at all practical in the current scenario.
It works well on Linux, just that you probably want to invest on getting Rider IDE from Jetbrains. I had to drop C# when it come to developing something for Linux and I opt to use C Language for that, not Rust nor DLang, since I also have to be mindful about FFI.