.NET 6 is now in Ubuntu 22.04

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • .NET Runtime

    .NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.

  • https://github.com/dotnet/runtime/issues/14537

    About 2 months ago they crushed hopes for official FreeBSD support to happen soon by clearly stating that at this point, updating their Quality Assurance process to support FreeBSD would not make business sense for them as they have to put together an extensive tests suit for every OS. Microsoft folks remain friendly and helpful in the thread though.

    The FreeBSD ports system insists on requiring third party applications to be able to be built from source offline, while the .NET build process downloads packages left and right at various parts of the process. This is one of the things that complicates its inclusion in the ports tree. Building .NET for FreeBSD is close to rocket science, the community has worked to make the process way simpler. It it is frustrating that the .NET team refuses to take things from there. Providing FreeBSD support is that I would expect from them to strengthen their cross-platform posture. This is the last major platform they need to support, and one being heavily used for servers.

  • FrameworkBenchmarks

    Source for the TechEmpower Framework Benchmarks project

  • Would you call TechEmpower benchmarks synthetic? I think they're a pretty useful data source and indeed support the claim that the performance of .NET is rather good.

    https://www.techempower.com/benchmarks/#section=data-r21

    Personally I think that some of their tests are pretty close to what web applications might actually do a lot of the time (fetching the data, processing it, saving it), for example, see here: https://github.com/TechEmpower/FrameworkBenchmarks/tree/mast...

    Sure, sometimes the code you see in benchmarks can be a bit more clever than the code you'd see normally, but for the most part TechEmpower seems close enough to be a vague indicator towards what frameworks/languages/stacks have decent performance.

    It also helps you get a feel for how big the differences are between any two given platforms, like using something like Java + Spring and Python + Django, which may or may not be relevant in actual business conditions, since you might also want to iterate quickly.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • installer

    .NET SDK Installer (by dotnet)

  • Fedora and Red Hat have offered .NET packages for years. We've worked very closely with those folks and they've taught us a lot about how to work collaboratively with distro maintainers. We meet with them weekly. Notice that Fedora is mentioned in the blog post and here: https://docs.microsoft.com/dotnet/core/install/linux#officia....

    Also notice that our default build instructions are for Fedora: https://github.com/dotnet/installer#building.

    I'm the post author.

  • Avalonia

    Develop Desktop, Embedded, Mobile and WebAssembly apps with C# and XAML. The most popular .NET UI client technology

  • CoreWCF

    Main repository for the Core WCF project

  • GtkSharp

    .NET wrapper for Gtk and other related libraries

  • There's also the more direct route by using say Gtk directly[1].

    [1]: https://github.com/GtkSharp/GtkSharp

  • language-ext

    C# functional language extensions - a base class library for functional programming

  • Not all, some rely on the runtime, like static interface methods.

    Records can be done like this [1]

    [1] https://github.com/louthy/language-ext/blob/main/LanguageExt...

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • CoreCLR

    Discontinued CoreCLR is the runtime for .NET Core. It includes the garbage collector, JIT compiler, primitive data types and low-level classes.

  • Technically the restrictions already exist, just as a part of the development experience.

    - .NET Hot Reload is only implemented on Windows. It requires support in the .NET runtime, which is technically possible to implement, but the team has not gotten around to implementing it for years. This doesn't have to do with the issue around MS removing the "dotnet watch" command, it's for the "Edit and Continue" feature in IDEs.[1][2]

    - MS was considering deprecating Omnisharp, the open-source language server that implements C# support for VS Code, and replacing it with a closed-source version. Since the announcement, commits to omnisharp-vscode have dropped off significantly. The lack of Omnisharp would mean there would be no real open-source C# development environment for Linux anymore, since MonoDevelop was abandoned a few years ago. [3]

    [1] https://youtrack.jetbrains.com/issue/RIDER-31366/EditContinu...

    [2] https://github.com/dotnet/coreclr/issues/23685

    [3] https://github.com/omnisharp/omnisharp-vscode/issues/5276

  • omnisharp-vscode

    Discontinued Official C# support for Visual Studio Code [Moved to: https://github.com/dotnet/vscode-csharp]

  • Technically the restrictions already exist, just as a part of the development experience.

    - .NET Hot Reload is only implemented on Windows. It requires support in the .NET runtime, which is technically possible to implement, but the team has not gotten around to implementing it for years. This doesn't have to do with the issue around MS removing the "dotnet watch" command, it's for the "Edit and Continue" feature in IDEs.[1][2]

    - MS was considering deprecating Omnisharp, the open-source language server that implements C# support for VS Code, and replacing it with a closed-source version. Since the announcement, commits to omnisharp-vscode have dropped off significantly. The lack of Omnisharp would mean there would be no real open-source C# development environment for Linux anymore, since MonoDevelop was abandoned a few years ago. [3]

    [1] https://youtrack.jetbrains.com/issue/RIDER-31366/EditContinu...

    [2] https://github.com/dotnet/coreclr/issues/23685

    [3] https://github.com/omnisharp/omnisharp-vscode/issues/5276

  • LetsShip

    Let's learn devops by shipping a final product in .NET 5

  • I have two DigitalOcean sites on the same VPS just serving from kestrel behind an nginx reverse proxy and then one site on a Hetzner VPS where I was playing around with k3s.

    For digitalocean I followed this post which is probably way out of date now https://www.hanselman.com/blog/publishing-an-aspnet-core-web...

    For the k3s site the source is here https://github.com/EliotJones/LetsShip/blob/main/kubernetes/... though worth noting I have set up LetsEncrypt incorrectly but that's my lack of k3s understanding.

  • azurelinux

    Linux OS for Azure 1P services and edge appliances

  • sdk

    Core functionality needed to create .NET Core projects, that is shared between Visual Studio and CLI (by dotnet)

  • Are you sure about that? Can you share the steps I can run to reproduce that?

    I am looking at the sources at https://packages.ubuntu.com/source/jammy-updates/dotnet6 and (as far as I can tell) they are applying a patch called 1500sdk-telemetry-optout.patch (originally from Fedora https://src.fedoraproject.org/rpms/dotnet3.1/blob/f36/f/cli-...) that is supposed to make telemetry opt-in.

    There's a better fix landing upstream for .NET 7: https://github.com/dotnet/sdk/pull/25935

  • svntogit-community

    Discontinued Automatic import of svn 'community' repo (read-only mirror)

  • homebrew-core

    🍻 Default formulae for the missing package manager for macOS (or Linux)

  • bflat

    C# as you know it but with Go-inspired tooling (small, selfcontained, and native executables)

  • I feel like the "Java" way of doing things in C# is simply a byproduct of inertia and outdated habits. You can model domain with records in C# in a very concise manner (F# style), you can pass around raw memory slices with Span. Writing simple CLI tools is incredibly easy with top-level statements and implicit using, or even using bFlat [0] or ProcessX/Chell [1, 2].

    [0]: https://github.com/bflattened/bflat

  • ProcessX

    Simplify call an external process with the async streams in C# 8.0.

  • Chell

    Write scripts with the power of C# and .NET

  • source-build

    A repository to track efforts to produce a source tarball of the .NET Core SDK and all its components

  • Unfortunately, packaging applications built on .NET is still a challenge for any OS that wants to build everything from source and doesn't allow network access. Like you say, duplicating nuget into os-app-package-manager is challenging. Even side from the duplication, we need to bootstrap the ecosystem, in particular dealing with cyclic dependencies and version explosion as a result of all the different versions of all the dependencies that an average dotnet application needs.

    We are starting to work through it here: https://github.com/dotnet/source-build/discussions/2960. Any advice/tips/contributions would be welcome, I think.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Building a bare-metal bootable game for Raspberry Pi in C#

    4 projects | news.ycombinator.com | 11 Dec 2023
  • Do you think this programmer's argument is correct?

    2 projects | /r/dotnet | 9 Jul 2023
  • Duda carrera: C#/.NET vs. Node/Express

    13 projects | /r/devsarg | 18 May 2023
  • wrapped_mono 0.3 - run C#/F# code inside your rust projects!

    2 projects | /r/rust | 22 Apr 2023
  • .Net7 broke DefaultInterpolatedStringHandler?

    2 projects | /r/csharp | 27 Mar 2023