Microsoft has announced the publication of .NET 6 , the new version of its archicon framework with which you can make applications that cover all areas, including servers, the cloud and the IoT. However, in Linux the thing is more focused on server, console and web solutions, that is, that nothing of support for graphical desktop applications.
.NET 6 is packed with new features, so let’s start with the more general parts. To begin with, it is an LTS release that will be supported for three years , so it inherits the path of .NET Core 3.1, whose support will end in December 2022, while the end of cycle of version 5 will arrive in May 2022.
Microsoft has been working for years to make .NET a unified platform , something in which it has come a long way in version 6 in its own words. In fact, the company has said that .NET 6 offers a “unified platform across browser, cloud, desktop, IoT, and mobile applications, all using the same .NET libraries and the ability to easily share code.”
“The reach of .NET developers continues to expand with each release. Machine learning and WebAssembly are two of the newer additions ” . On the other hand, “one of the most interesting additions is the .NET multiplatform application user interface (.NET MAUI). Now you can write code in a single project that provides a modern client application experience on desktop and mobile operating systems ” .
At the language level we find C #, whose version 10 continues with the simplification that began with the declarations of version 9. The purpose of this simplification is to make the programs occupy fewer lines, to the point that “the new features eliminate even more ceremony from Program.cs, resulting in programs so short that they occupy a single line ”.
Among the features of C # 10 we have mentioned the global ‘using’ directives, which allow you to declare a ‘using’ directive only once and then be applied to all the files covered by the compilation process. Other new features are File-scoped namespaces, which “allow you to declare the namespace of an entire file without nesting the remaining content” , and the ability to declare records to be structures.
For F # 6, Microsoft has also worked to make it simpler and more efficient , eliminating obstacles that the user may encounter when learning it and making it faster and more interoperable, as well as more uniform. Tools are another improved aspect in F # 6.
For security, .NET 6 on Linux requires OpenSSL 1.1 or later to perform all cryptographic operations , although the company recommends using the newest cryptographic library release. However, OpenSSL 3 is too recent, so on systems like Red Hat 8 and Ubuntu 20.04, this version will not be used, at least initially.
Apple has hit hard with its processors based on ARM architecture, so these are increasingly taken into account when supporting technologies that run in desktop and professional environments. .NET 6 is the first release of the framework to offer native Apple Silicon support, and support for Windows ARM has been. There is also a Docker container for 64-bit ARM, but this only works on operating systems that are running on the same architecture.
Special mention has gone to Debian 11 Bullseye, the latest stable release from the veteran and reputable community distribution. Microsoft has acknowledged that it uses Debian for the creation of its Linux container images. In fact, in case of downloading a Docker container from the company, the user will be able to see that it takes Debian as its base.
Microsoft has been clear from the beginning that it wanted to supply .NET 6 through a container image Debian 11 Bullseye, so during the development of the latest version of the framework, it decided to go for that version of the distribution despite still occupying the branch testing. The corporation acknowledged that there was some uncertainty as it did not want to ship a Linux image based on a system that was officially not ready for production, but it stuck to its position and has gotten away with it.
Along with .NET 6 has also arrived PowerShell 7.2, the new version of its next- command interpreter generation that for a few years has been Open Source, which has allowed it to be ported to Linux and Mac (although the company has reserved some letters). PowerShell 7.2 has improved ANSI support, built in predictive Intellisense with PSReadLine, and has been compiled with the aforementioned .NET 6.
All the details of .NET 6 can be consulted through the official announcement published on the Microsoft developer blog. Those who are interested in testing the framework can obtain it for Linux, Windows and macOS from its download section or in container format by resorting to DockerHub . The company has published various instructions for installing it on Linux.