!bxVOQwsVoHhZcmNDGw:nixos.org

Nix + dotnet

113 Members
23 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
21 Aug 2025
@whovian9369:matrix.orgWhovian9369 Huh, now I seem to be getting a successful fetch-deps for the extra dependencies, but nix build -L .#kanvas seems to be running into... error CS0246: The type or namespace name 'Komponent' could not be found (are you missing a using directive or an assembly reference?) 07:46:53
@emma:rory.gayEmma [it/its]doesnt nuget2nix include custom repos from nuget.config?09:24:56
@corngood:corngood.comCorngoodYeah, `fetch-deps` should just work. You wouldn't usually get CS0246 from a missing nuget dependency.10:40:58
@whovian9369:matrix.orgWhovian9369Well I don't have the repo added yet, but good to know, thanks.13:29:12
@whovian9369:matrix.orgWhovian9369

Sorry, those are basically two different errors.

The original error was NU1101 ("error NU1101: Unable to find package NAME. No packages exist with this id in source(s): nuget, _nix") for Kaligraphy, Kanvas, Kompression, and Komponent.

CS0246 is from me trying to self-package Komponent, Kaligraphy, and Kanvas to provide the derivation.
(k2Repo in the following is just me trying to set the used src once in flake.nix and passing it to the derivations that way so I don't have to update the used commit info more than once)

{
  packages.x86_64-linux = {
    default = pkgs.callPackage ./package.nix { inherit k2Repo; komponent = self.packages.${system}.komponent; kaligraphy = self.packages.${system}.kaligraphy; kanvas = self.packages.${system}.kanvas; };
    komponent = pkgs.callPackage ./komponent.nix { inherit k2Repo; };
    kaligraphy = pkgs.callPackage ./kaligraphy.nix { inherit k2Repo; komponent = self.packages.${system}.komponent; };
    kanvas = pkgs.callPackage ./kanvas.nix { inherit k2Repo; komponent = self.packages.${system}.komponent; };
  };
};
13:43:49
@whovian9369:matrix.orgWhovian9369 When trying to build kanvas I seem to actually be hitting CS0246 multiple times for Komponent and some other entries. (ByteOrder, BitOrder seem to be the other main prints for that error code.) 13:46:45
@whovian9369:matrix.orgWhovian9369Redacted or Malformed Event13:51:49
@whovian9369:matrix.orgWhovian9369I suppose sending the build log would be handy for support, huh? 😅 https://pastebin.com/raw/GDQbrGLe13:53:35
@corngood:corngood.comCorngood So you definitely want to build all of these as separate nix derivations? If so, you need to make sure the dependent projects reference the dependencies with PackageReference, and you'll need to make sure the dependencies are built with packNupkg = true, and included in buildInputs of the dependent derivation. 14:55:51
@corngood:corngood.comCorngood Actually, you don't have to do it that way. I suppose you could publish them and set up references without nuget, but I don't really see the benefit of doing it that way. 14:58:25
@whovian9369:matrix.orgWhovian9369 If you can think of a good alternate way to do it that makes fetch-deps happy, I'm all ears. 15:24:39
@whovian9369:matrix.orgWhovian9369

Oh I forgot to respond to the rest of the post, sorry.

If so, you need to make sure the dependent projects reference the dependencies with PackageReference, and you'll need to make sure the dependencies are built with packNupkg = true, and included in `buildInputs of the dependent derivation.

The derivations for kaligraphy and kanvas both have buildInputs = [ komponent ];, and all three have packNupkg = true;, though I'm not 100% sure if they all have PackageReference in the original project, I'll have to look back at that in a bit. I'm assuming that they are correctly doing that, though.

15:46:56
@corngood:corngood.comCorngood
  <ItemGroup>
    <PackageReference Include="Imgui.Forms" Version="1.5.11" />
    <PackageReference Include="Serilog.Sinks.File" Version="6.0.0" />
    <PackageReference Include="System.Drawing.Common" Version="5.0.3" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\..\lib\Konnect.Contract\Konnect.Contract.csproj" />
    <ProjectReference Include="..\..\lib\Konnect\Konnect.csproj" />
    <ProjectReference Include="..\..\lib\Kryptography.Contract\Kryptography.Contract.csproj" />
    <ProjectReference Include="..\..\lib\Kryptography\Kryptography.csproj" />
  </ItemGroup>

This project doesn't seem to use PackageReference for internal stuff, which isn't really surprising. I think you should just make it a single derivation and build the one project you actually want. Kuriimu2.ImGui.csproj?

16:54:50
@whovian9369:matrix.orgWhovian9369 Yeah I'm wanting to build Kuriimu2.ImGui.csproj so I'll see if I can collapse it all nicely, thanks for the time! 17:16:03
24 Aug 2025
@jammie:matrix.orgJamieMagee

I've got a couple of .NET 6 EOL PRs if anyone has time to review

  • https://github.com/NixOS/nixpkgs/pull/436377
  • https://github.com/NixOS/nixpkgs/pull/436407
08:37:44
@jammie:matrix.orgJamieMageeOne more: https://github.com/NixOS/nixpkgs/pull/43653918:25:49
26 Aug 2025
@jammie:matrix.orgJamieMageeGoing to try and do some mono cleanup as well https://github.com/NixOS/nixpkgs/pull/43697203:01:19
@jammie:matrix.orgJamieMageehttps://github.com/NixOS/nixpkgs/pull/43699103:16:53
@whovian9369:matrix.orgWhovian9369 I'm guessing dotnetCorePackages.dotnet_10.vmr is still broken on Hydra with 10.0.0-preview.7? 08:04:00
@corngood:corngood.comCorngood

Yeah, sadly it seems to have failed again

./prep-source-build.sh: line 363:  6047 Segmentation fault         (core dumped) "$dotnetSdk/dotnet" build "$REPO_ROOT/eng/init-detect-binaries.proj" "/p:BinariesMode=Clean" "/p:AllowedBinariesFile=$REPO_ROOT/eng/allowed-sb-binaries.txt" "/p:BinariesPackagesDir=$psbDir" "/bl:artifacts/log/prep-remove-binaries.binlog" "/fileLoggerParameters:LogFile=artifacts/log/prep-remove-binaries.log" "${positional_args[@]}"

I had a go at reproducing this locally, but no luck so far. A core dump would be nice.

15:12:40
27 Aug 2025
@whovian9369:matrix.orgWhovian9369I'll try to report back if I run into one then!18:28:07
28 Aug 2025
@whovian9369:matrix.orgWhovian9369 Looks like my build attempt failed when building fsharp so likely long after the build failure you're worried about. 00:54:51
@corngood:corngood.comCorngoodStill bad though. What happened?01:49:47
@whovian9369:matrix.orgWhovian9369I don't remember and don't record it, sadly. I'll see if I get an error from another run.03:43:32
@whovian9369:matrix.orgWhovian9369 I did do --keep-failed though, though I don't actually know which directory it is it. 😅 03:45:00
@whovian9369:matrix.orgWhovian9369 Looks like fsharp appears to have built correctly this time, unfortunately. Sorry that I didn't capture the initial run 03:51:50
@whovian9369:matrix.orgWhovian9369 * Looks like fsharp appears to have built correctly this time, unfortunately. Sorry that I didn't capture the initial error! 03:51:58
@whovian9369:matrix.orgWhovian9369
$  nix log /nix/store/zcnfwxnbwss3anlqj9wld8mb0w0lp5by-dotnet-vmr-10.0.0-preview.7.drv | rg -i "Phase completed"
unpackPhase completed in 55 seconds
configurePhase completed in 36 seconds
buildPhase completed in 1 hours 20 minutes 17 seconds
installPhase completed in 48 seconds
fixupPhase completed in 3 minutes 21 seconds

It only took just under an hour and a half this time, nice!

05:12:12
@whovian9369:matrix.orgWhovian9369 I went back to that Kuriimu2 project that I was working on, and I can't for the life of me figure out how to get it building so far.
Originally I tried doing it as different packages that got provided via the Flake, but adding the various local dependencies via a projectFile list is just throwing errors on fetch-deps again since it wants NuGet binaries for most of them that don't actually exist yet since this is still just the dependency stage...
08:53:48

Show newer messages


Back to Room ListRoom Version: 9