VSCodium debugger setup for C# using DotRush

I post it here so that people are aware that this option exists.

Since micrsoft stabbed FOSS community in the back with its move to lock most of their language support extensions only to their forks of VSCode, we are forced to use alternatives, sadly the Open Vsix packages for C# support may not work for everyone, and even can break-on-purpose randomly if anything in the toolchain is updated to the same msoft license.

Having encountered that myself and being very close to giving up on c# altogether I stumbled on DotRush, which works for me and may work for you if your current setup doesn’t for whatever reason.

It is available on Open Vsix in VSCodium.
launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": ".NET Core Debugger (attach)",
            "type": "coreclr",
            "request": "attach",
            "processPath": "C:\\Programs\\.... path to Godot.exe",
            "preLaunchTask": "dotrush: Build"
        }
    ]
}

And I had to remove this line from csproj because for some reason starting from vscodium defaulted to .net9 with it instead of 8. If you have both installed you wont be affected I think.

    <TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net9.0</TargetFramework>

Issues I had

Go to definition doesnt work
Make sure your Project.sln is not excluded in VSCodium explorer settings (search ‘exclude’ list)
Additionally - in DotRush settings set
Analyzer Diagnostics Scope to Project and
Load Metadata For Referenced Projects to true

Go to definition adds annoying extra step on every partial class
Editor › Goto Location: Multiple Definitions set to goto
Editor › Goto Location: Multiple Type Definitions set to goto
This disables choice in cases when you have partial classes that you wrote yourself.

I get CA1050 warnings
Disable it and any other warning by adding <NoWarn>to your .csproj file PropertyGroup block.
Rebuild after that.

<Project Sdk="Godot.NET.Sdk/4.5.1">
  <PropertyGroup>
      <NoWarn>CA1050;1006</NoWarn>