Nix + dotnet | 122 Members | |
| 23 Servers |
| Sender | Message | Time |
|---|---|---|
| 28 Aug 2025 | ||
| * 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...(The error given is just error NU1101: Unable to find package Komponent. No packages exist with this id in source(s): nuget, _nix) | 08:55:14 | |
| * 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 I instead attempted 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...(The error given is just error NU1101: Unable to find package Komponent. No packages exist with this id in source(s): nuget, _nix) | 09:01:47 | |
In reply to @whovian9369:matrix.orgCan you share what you've got? | 10:11:10 | |
| I was unable to reproduce the dotnet 10 segfault on GHA, so I'm left with only being able to reliably reproduce it on hydra.nixos.org. Does anyone here have any experience getting elevated permissions on hydra? I'm not sure what I need exactly, but it would be helpful to be able to kick off a build without having it merged into master. | 13:45:27 | |
| Download flake.nix | 17:56:13 | |
| Download package.nix | 17:56:14 | |
| Download flake.lock | 17:56:14 | |
| Did not expect those to send as three different replies, sorry about that. | 17:56:28 | |
I'd say this is the important section, which as I explained above, doesn't actually fix my | 17:58:51 | |
I don't think this is causing the problem, but you should only need to put the last project in projectFile. The rest should be built via ProjectReference | 22:32:11 | |
That's what I had setup, but that still wasn't working during the fetch-deps phase. | 22:33:01 | |
Due to the same NU1101 issue. | 22:34:00 | |
This is a very weird project. It has a bunch of internal references using PackageReference. Have you been able to build it directly with the dotnet sdk, or found any build recipes from other distros? | 22:38:07 | |
| This got me a bit further I think: https://github.com/corngood/nixpkgs/commit/kuriimu2 | 22:46:02 | |
| I'm not sure why, but
| 23:07:36 | |
| Admittedly no I haven't looked or tried, but there's GitHub Actions that build them ( https://github.com/FanTranslatorsInternational/Kuriimu2/tree/imgui/.github/workflows ) and push them to a seemingly private (behind GH Token? Haven't explored that yet.) NuGet repo, that then gets used during the build of the main app. | 23:16:07 | |
| Oh very good job with those, thank you for the effort so far! | 23:17:29 | |
| * Oh very good job with those, thank you for the effort with this! | 23:17:41 | |
| Ah I think I see the problem. In Komponent.nuspec they have:
But we build with There are various ways we could fix that, but I'm not sure what would be best. Probably giving more control over the default flags (e.g. | 23:53:47 | |
| We have a test for building and consuming a nupkg, but it doesn't use an explicit nuspec like this | 23:54:27 | |
| 29 Aug 2025 | ||
| If you want to fix it inside the package, the easiest way might be to make a custom build/install phases that do something similar to their github actions | 00:04:37 | |
Do you have any thoughts on patching it in the Kuriimu2 src itself then, to possibly fix it that way? (Possibly fixing it directly in Komponent.nuspec to something closer to expected?) | 00:12:12 | |
yeah that's certainly an option. maybe it can even use bin\Release\net8.0\*\*.dll or something? or maybe there's a way to make it use the default packing logic? | 00:13:41 | |
like if you make a dotnet new classlib and pack it with --runtime it works as expected. the dll is in bin/Release/net8.0/$rid/, but it ends up in lib/net8.0/ in the package. | 00:14:41 | |
It looks like all of the | 00:59:38 | |
You seemed to signal out Komponent as the odd one out here, so that's a touch surprising to me. | 00:59:59 | |
| Oh it was just the first one that caused a build failure in another package because it was empty | 01:00:55 | |
| Ah fair enough | 01:01:09 | |
| 02:40:25 | ||
| 4 Sep 2025 | ||
I think that I got Kuriimu2 working, and it was overall surprisingly painless once I figured out PackageReference versus ProjectReference. A friend's warning me against doing it this way though, so I have something theoretically "working" at least, but the next step is seeing if I can make the build any cleaner in the process. | 00:25:13 | |