As someone with no horse in this race, I must say that I'm a little disappointed in the way Linux "compatibility" deals with platform differences. Most parts of the crypto API seem to be marked as "works on Linux if/except when" which seems strange given that porting to macOS didn't seem to impose such restrictions. In some cases, the inner workings of the underlying library works differently and you get an exception when using certain functionality on Linux at all.
I though Microsoft did better porting dotnet to Linux. I knew they don't care about Linux GUI, but I hoped they'd at least do system libraries better.
This is an uncharacteristically involved type of comment for "someone with no horse in this race". It is unserious and/or malicious. I can't believe we are still having to deal with the same type of conversation 9 years later.
In case someone else is reading:
- AvaloniaUI/Uno
- Algorithms are dependent on what an OS crypto provider supports (which is OpenSSL in the case of Linux, so it's an OpenSSL issue), but you can always just use bindings to an alternative and wrap it in a stream, like some do with e.g. libsodium
- IO behaves differently because each OS has different IO implementation, .NET tries to homogenize it within reason, but there are differences that cannot be hidden, big surprise?
AvaloniaUI/Uno are both third party open source GUIs ... not by Microsoft. The Microsoft provided MAUI does NOT run on Linux (though it runs on ALL others ... android, ios, and even Mac). Not squinting on this omission and not ignoring it, sorry!
Agree on the "Algorithms are dependent on what an OS crypto provider supports" bit.
I though Microsoft did better porting dotnet to Linux. I knew they don't care about Linux GUI, but I hoped they'd at least do system libraries better.