!bxVOQwsVoHhZcmNDGw:nixos.org

Nix + dotnet

117 Members
24 Servers

Load older messages


SenderMessageTime
21 Apr 2025
@6pak:matrix.org6pakideally build-dotnet.nix in nixpkgs should just add that file23:43:09
@gggkiller:matrix.orgGGGyeah, I might make a PR to do that23:43:22
@gggkiller:matrix.orgGGG

yeah, seems like only the source-built variants have that:

$ nix-locate userlocal               
dotnetCorePackages.dotnet_8.vmr.out                   0 r /nix/store/agr6lyqz3zp4a3llaa0sx1x1i624r55k-dotnet-vmr-8.0.14/dotnet-sdk-8.0.114-linux-x64/metadata/workloads/8.0.100/userlocal
dotnetCorePackages.dotnet_10.vmr.out                  0 r /nix/store/vfd744wlv3338igbai9q711p8647hn75-dotnet-vmr-10.0.0-preview.2/dotnet-sdk-10.0.100-preview.2.25164.1-linux-x64/metadata/workloads/10.0.100/userlocal
(dotnetCorePackages.dotnet_9.sdk.out)                 0 r /nix/store/d3cndkqm57ika3qb2abmvr5snr4fp6pc-dotnet-sdk-9.0.104/share/dotnet/metadata/workloads/9.0.100/userlocal
dotnetCorePackages.dotnet_9.vmr.out                   0 r /nix/store/b679fsfkc571n08cr95zsrh0xgzbn3q4-dotnet-vmr-9.0.3/dotnet-sdk-9.0.104-linux-x64/metadata/workloads/9.0.100/userlocal
(dotnet-sdk_10.out)                                   0 r /nix/store/k1qkscqxcvs801bqihl9rwjm19dpr2xs-dotnet-sdk-10.0.100-preview.2.25164.1/share/dotnet/metadata/workloads/10.0.100/userlocal
(dotnetCorePackages.dotnet_8.sdk.out)                 0 r /nix/store/1nqkg50ljc7rxvhg58f8iws7nqb5mwxa-dotnet-sdk-8.0.114/share/dotnet/metadata/workloads/8.0.100/userlocal
23:44:09
@6pak:matrix.org6pakI hope it just changes the install path but still also discovers workloads from system paths23:44:31
@6pak:matrix.org6pakfor future declarative workloads23:44:41
22 Apr 2025
@corruptcomputer:matrix.orgcorruptcomputer

I've got dotnet up and running well with the suggested config for it, even after changing vscode its still not able to open a solution, gives me an error "command 'csdevkit.openSolution' not found". Have the following configuration for that:

systemPackages = with pkgs; [
  (vscode-with-extensions.override {
      vscodeExtensions = with vscode-extensions; [
        ms-dotnettools.csharp
        ms-dotnettools.vscode-dotnet-runtime
        ms-dotnettools.csdevkit
        ms-dotnettools.vscodeintellicode-csharp
      ] ++ vscode-utils.extensionsFromVscodeMarketplace [
        # To get sha256: nix-prefetch-url https://marketplace.visualstudio.com/_apis/public/gallery/publishers/[publisher]/vsextensions/[name]/[version]/vspackage
        {
            name = "vscode-entity-framework";
            publisher = "richardwillis";
            version = "0.0.20";
            sha256 = "0karaxnaalhr08n7dyc89wr5i3y9jxa5nfiyqcxdg4ws0p3zcsbk";
        }
        {
            name = "vscode-avalonia";
            publisher = "avaloniateam";
            version = "0.0.32";
            sha256 = "1vrsnq7v0p508c077g62yy2h9l8dqgad5929nnyqiys3bcx5ksnq";
        }
      ];
  })
];

Any idea what might I be missing here?

02:27:58
@corruptcomputer:matrix.orgcorruptcomputerI can see the extension in vscode, and I can see its command in the F1 menu for opening the solution, its just when I try to do that it gives me that error02:29:45
23 Apr 2025
@corruptcomputer:matrix.orgcorruptcomputer

well, I think I've figured out why. On the docs for that extension, they have a section with a list of reasons why the command might not be found:

using a readonly OS. C# Dev Kit requires write access to its own extension folder and to the VS Code-provided folder for extensions to write arbitrary state within the operating system, so if you are using an OS that is completely readonly, C# Dev Kit will not work.

Which I think would mean it doesn't work on NixOS, right?

04:37:29
@gggkiller:matrix.orgGGGNo, it should work since I patch it to work under those conditions05:28:03
@gggkiller:matrix.orgGGGbut if you are having troubles with that, you can open an issue and mention me, since I'm the maintainer for them05:28:16
@gggkiller:matrix.orgGGGjust make sure to get the logs from the Extension Host, C# DevKit and C# extensions05:28:32
@docbrown101:matrix.orgDanielI have not been able to get it to work properly yet, even though I am already using pkgs.vscode.fhs. Are there any instructions on what we need to get it to run properly?10:23:41
@corruptcomputer:matrix.orgcorruptcomputer

Would this be enough info? Neither C# or C# DevKit have any logs in the output window, only that one. This package is installed though

Extension Host:

2025-04-21 21:22:00.068 [error] Activating extension ms-dotnettools.csharp failed due to an error:
2025-04-21 21:22:00.069 [error] Error: Version 2.2.3 of the .NET Install Tool (ms-dotnettools.vscode-dotnet-runtime) was not found, C# will not activate.
	at /nix/store/igyqc0cisbwz6zj15fb6xl74ljilas2a-vscode-extension-ms-dotnettools-csharp-2.61.28/share/vscode/extensions/ms-dotnettools.csharp/dist/extension.js:2:1205715
	at Generator.next (<anonymous>)
	at s (/nix/store/igyqc0cisbwz6zj15fb6xl74ljilas2a-vscode-extension-ms-dotnettools-csharp-2.61.28/share/vscode/extensions/ms-dotnettools.csharp/dist/extension.js:2:1204371)
2025-04-21 21:22:00.073 [info] Eager extensions activated
13:06:12
@gggkiller:matrix.orgGGGyeah, you're missing that extension, it won't work without it15:00:06
@gggkiller:matrix.orgGGGeven though it's pointless to have it since there's no dynamic installing of .NET, it's needed for them to work15:00:37
@corruptcomputer:matrix.orgcorruptcomputerI have it defined in my configuration.nix for vscode, and I can see it when looking at my installed extensions in vscode too. I think the nix builds version is too old though, looking at its version in vscode it says 2.1.1, but I have both of those extensions installed from pkgs.vscode-extensions so it seems like a packaging problem, they are just incompatible versions currently 15:10:49
@gggkiller:matrix.orgGGGoh, I see15:18:06
@gggkiller:matrix.orgGGGmaybe it hasn't been updated in too long. in my config I've been using the src and version from nix-vscode-extensions to override the ones in nixpkgs15:18:43
24 Apr 2025
@ortolanbunting3002:tchncs.deortolanbunting3002 joined the room.18:20:55
26 Apr 2025
@lord-valen:matrix.orglord-valen joined the room.21:39:24
27 Apr 2025
@ortolanbunting3002:tchncs.deortolanbunting3002

Does anyone have an idea why I'm only seeing these workloads?

% nix shell nixpkgs-unstable\#dotnetCorePackages.dotnet_9.sdk
% dotnet --info
.NET SDK:
 Version:           9.0.105
 Commit:            b7deac6d42
 Workload version:  9.0.100-manifests.3b27a542
 MSBuild version:   17.12.32+b7deac6d4

Runtime Environment:
 OS Name:     nixos
 OS Version:  24.11
 OS Platform: Linux
 RID:         linux-x64
 Base Path:   /nix/store/hzdqc45clz93vdrhwmdd87zc92r2bwwc-dotnet-sdk-9.0.105/share/dotnet/sdk/9.0.105/

.NET workloads installed:
There are no installed workloads to display.
Configured to use loose manifests when installing new manifests.

Host:
  Version:      9.0.4
  Architecture: x64
  Commit:       b7deac6d42

.NET SDKs installed:
  9.0.105 [/nix/store/hzdqc45clz93vdrhwmdd87zc92r2bwwc-dotnet-sdk-9.0.105/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 9.0.4 [/nix/store/hzdqc45clz93vdrhwmdd87zc92r2bwwc-dotnet-sdk-9.0.105/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 9.0.4 [/nix/store/hzdqc45clz93vdrhwmdd87zc92r2bwwc-dotnet-sdk-9.0.105/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
  None

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download
% dotnet workload search

Workload ID                 Description
----------------------------------------------------------------------------
aspire                      .NET Aspire SDK
wasi-experimental           workloads/wasi-experimental/description
wasi-experimental-net8      workloads/wasi-experimental-net8/description
wasm-experimental           .NET WebAssembly experimental tooling
wasm-experimental-net7      .NET WebAssembly experimental tooling for net7.0
wasm-experimental-net8      .NET WebAssembly experimental tooling for net8.0
wasm-tools                  .NET WebAssembly build tools
wasm-tools-net6             .NET WebAssembly build tools for net6.0
wasm-tools-net7             .NET WebAssembly build tools for net7.0
wasm-tools-net8             .NET WebAssembly build tools for net8.0
%
12:27:25
@ortolanbunting3002:tchncs.deortolanbunting3002
In reply to @ortolanbunting3002:tchncs.de

Does anyone have an idea why I'm only seeing these workloads?

% nix shell nixpkgs-unstable\#dotnetCorePackages.dotnet_9.sdk
% dotnet --info
.NET SDK:
 Version:           9.0.105
 Commit:            b7deac6d42
 Workload version:  9.0.100-manifests.3b27a542
 MSBuild version:   17.12.32+b7deac6d4

Runtime Environment:
 OS Name:     nixos
 OS Version:  24.11
 OS Platform: Linux
 RID:         linux-x64
 Base Path:   /nix/store/hzdqc45clz93vdrhwmdd87zc92r2bwwc-dotnet-sdk-9.0.105/share/dotnet/sdk/9.0.105/

.NET workloads installed:
There are no installed workloads to display.
Configured to use loose manifests when installing new manifests.

Host:
  Version:      9.0.4
  Architecture: x64
  Commit:       b7deac6d42

.NET SDKs installed:
  9.0.105 [/nix/store/hzdqc45clz93vdrhwmdd87zc92r2bwwc-dotnet-sdk-9.0.105/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 9.0.4 [/nix/store/hzdqc45clz93vdrhwmdd87zc92r2bwwc-dotnet-sdk-9.0.105/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 9.0.4 [/nix/store/hzdqc45clz93vdrhwmdd87zc92r2bwwc-dotnet-sdk-9.0.105/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
  None

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download
% dotnet workload search

Workload ID                 Description
----------------------------------------------------------------------------
aspire                      .NET Aspire SDK
wasi-experimental           workloads/wasi-experimental/description
wasi-experimental-net8      workloads/wasi-experimental-net8/description
wasm-experimental           .NET WebAssembly experimental tooling
wasm-experimental-net7      .NET WebAssembly experimental tooling for net7.0
wasm-experimental-net8      .NET WebAssembly experimental tooling for net8.0
wasm-tools                  .NET WebAssembly build tools
wasm-tools-net6             .NET WebAssembly build tools for net6.0
wasm-tools-net7             .NET WebAssembly build tools for net7.0
wasm-tools-net8             .NET WebAssembly build tools for net8.0
%
I want to install the android workload but it's not showing up
12:29:27
@6pak:matrix.org6pakpresumably the source build either doesn't support the android workload or it's not enabled in the nix build14:12:46
@6pak:matrix.org6pak

dotnetCorePackages.dotnet_9.sdk

and accessing the sdk like that is lowkey an implementation detail

14:15:15
@6pak:matrix.org6pak you probably want dotnetCorePackages.sdk_9_0 instead 14:15:41
28 Apr 2025
@emma:rory.gayEmma [it/its]TIL dotnet doesnt work in termux lol08:41:12
@emma:rory.gayEmma [it/its] export DOTNET_GCHeapHardLimit=1C0000000 works i suppose 08:44:16
@emma:rory.gayEmma [it/its]also missing ICU it seems08:45:28
@emma:rory.gayEmma [it/its]
bash-5.2$ dotnet bin/Release/net9.0/linux-arm64/MatrixAntiDmSpam.dll
Process terminated. Couldn't find a valid ICU package installed on the system. Please install libicu (or icu-libs) using your package manager and try again. Alternatively you can set the configuration flag System.Globalization.Invariant to true if you want to run with no globalization support. Please see https://aka.ms/dotnet-missing-libicu for more information.
   at System.Environment.FailFast(System.Runtime.CompilerServices.StackCrawlMarkHandle, System.String, System.Runtime.CompilerServices.ObjectHandleOnStack, System.String)
08:51:24
@coolio:nope.chat@coolio:nope.chat joined the room.18:21:24

Show newer messages


Back to Room ListRoom Version: 9