{ lib , buildDotnetGlobalTool , dotnetCorePackages , versionCheckHook , nix-update-script , }: let inherit (dotnetCorePackages) sdk_8_0; in buildDotnetGlobalTool rec { pname = "csharp-ls"; version = "0.16.0"; nugetHash = "sha256-1uj0GlnrOXIYcjJSbkr3Kugft9xrHX4RYOeqH0hf1VU="; dotnet-sdk = sdk_8_0; dotnet-runtime = sdk_8_0; nativeInstallCheckInputs = [ versionCheckHook ]; versionCheckProgramArg = "--version"; doInstallCheck = true; passthru.updateScript = nix-update-script { }; meta = { description = "Roslyn-based LSP language server for C#"; mainProgram = "csharp-ls"; homepage = "https://github.com/razzmatazz/csharp-language-server"; changelog = "https://github.com/razzmatazz/csharp-language-server/releases/tag/v${version}"; license = lib.licenses.mit; platforms = lib.platforms.unix; maintainers = with lib.maintainers; [ GaetanLepage ]; badPlatforms = [ # Crashes immediately at runtime # terminated by signal SIGKILL (Forced quit) # https://github.com/razzmatazz/csharp-language-server/issues/211 "aarch64-darwin" ]; }; }