!bxVOQwsVoHhZcmNDGw:nixos.org

Nix + dotnet

121 Members
24 Servers

Load older messages


SenderMessageTime
13 Aug 2025
@whovian9369:matrix.orgWhovian9369

Hi, me again. Sorry
A friend is trying to use AoT with his app, and I can't figure out for the life of me how to have selfContained = false; (which he insists has to be false) and use the AoT at the same time due to the following. Any thoughts?

...
@nix { "action": "setPhase", "phase": "installPhase" }
Executing dotnetInstallHook
/build/nuget.yzA66y/fallback/microsoft.dotnet.ilcompiler/9.0.7/build/Microsoft.NETCore.Native.Publish.targets(56,5): error : PublishTrimmed is implied by native compilation and cannot be disabled. [/build/gx7q6dmvpva0fphxrx9dkj7yyyx1yl43-source/GrindCore.PerfTest.csproj]

Anyone have any suggestions on what to do next?

17:18:25
@emma:rory.gayEmma [it/its]i thought nativeaot and multi-file were mutually exclusive?17:19:34
@whovian9369:matrix.orgWhovian9369Can't say I kno17:19:56
@whovian9369:matrix.orgWhovian9369* Can't say I know17:19:58
@6pak:matrix.org6paknativeaot has to be self-contained, yeah17:20:22
@6pak:matrix.org6pakready2run is a form of aot, but that's not nativeaot17:20:55
@whovian9369:matrix.orgWhovian9369 My friend seems to think that AoT (I'm assuming nativeaot) can be enabled while selfContained = false; is set (seemingly to not need the runtime at all?), but the above error seems to claim otherwise. 17:29:43
@whovian9369:matrix.orgWhovian9369 Admittedly I'm not quite sure what I'm asking, since the build works fine with dotnetInstallFlags = [ "-p:PublishAot=false" ]; selfContainedBuild = false; but not with ... [ "-p:PublishAot=true" ]; selfContainedBuild = false; which is what my friend seems to want me to try. 17:32:47
@whovian9369:matrix.orgWhovian9369If they're mutually exclusive on the Dotnet side then that's completely fine, I will just have to make sure he's aware of that fact. 😅17:33:36
@whovian9369:matrix.orgWhovian9369Or this is a huge misunderstanding on my part with the dev, ugh 😓 Oh well, I'll figure it out eventually. Thanks for the thoughts Emma and 6pak!17:41:12
@whovian9369:matrix.orgWhovian9369

Okay, sorry, I think I've figured out the situation again and I was slightly wrong.

  • He wants me to try building with AoT (again seemingly NativeAoT) enabled and self-contained disabled, which seems reasonable
  • Trying to do so throws an error, seemingly due to Emma's point about them being mutually exclusive.
  • Friend seems to insist that I can do AoT and --no-self-contained (via selfContainedBuild = false;) even though it appears to me that I cannot due to PublishTrimmed
17:55:28
@whovian9369:matrix.orgWhovian9369 *

Okay, sorry, I think I've figured out the situation again and I was slightly wrong.

  • He wants me to try building with AoT (again seemingly NativeAoT) enabled and self-contained disabled, which seems reasonable
  • Trying to do so throws an error, seemingly due to Emma's point about them being mutually exclusive.
  • Friend seems to insist that I can do AoT and --no-self-contained (via selfContainedBuild = false;) even though it appears to me that I cannot due to PublishTrimmed being implied, throwing the earlier error.
17:56:00
@6pak:matrix.org6pakimage.png
Download image.png
17:56:11
@6pak:matrix.org6pak buildDotnetModule is adding the PublishTrimmed=false 17:56:20
@6pak:matrix.org6pak I assume publishaot simply overrides --no-self-contained when using dotnet cli normally 17:56:40
@whovian9369:matrix.orgWhovian9369That's my assumption too, yeah.18:02:55
@whovian9369:matrix.orgWhovian9369Is there a good way to print the used flags used during a build? I feel like that might help expose what's being done "incorrectly"...18:07:28
@whovian9369:matrix.orgWhovian9369 In the mean time, I'm testing "-p:PublishTrimmed=true" as a dotnetInstallFlags option to see what happens. 18:09:57
@whovian9369:matrix.orgWhovian9369... The answer is seemingly nothing due to the hook seemingly overriding it.18:10:24
@6pak:matrix.org6pak why would you want to disable selfContainedBuild on nix side? 18:11:08
@whovian9369:matrix.orgWhovian9369 You mean explicitly settings selfContainedBuild = false;? Honestly I think it's personal preference so I know exactly what's set where I can set stuff.
I believe Nix does set it automatically anyway, so 🤷
18:21:06
@whovian9369:matrix.orgWhovian9369 * You mean explicitly setting selfContainedBuild = false;? Honestly I think it's personal preference so I know exactly what's set where I can set stuff.
I believe Nix does set it automatically anyway, so 🤷
18:21:56
@6pak:matrix.org6pakI mean not setting it to true18:22:16
@whovian9369:matrix.orgWhovian9369 Sorry, I'm afraid I'm missing the question then. You're asking why I'm setting selfContainedBuild = false; in the first place? 18:22:51
@6pak:matrix.org6pakyeah18:23:13
@whovian9369:matrix.orgWhovian9369 I mean, as I said I think it's just personal opinion. I don't remember why I started doing it other than "Nix seems to automatically set this to false", but it might just be that I've seen it in Nixpkgs one time and preferred how it was laid out versus the output of selfContainedBuild = true; on "normal" (non-AoT) builds that I've done. 18:26:12
@whovian9369:matrix.orgWhovian9369 It seems that Nix defaults to selfContainedBuild = false; anyway, but I like having the feeling of extra control or knowledge that for me comes from having that option immediately exposed (especially for testing like this, where having it as false seems to show errors due to AoT wanting PublishTrimmed set to true, which is disabled by default by a hook as you pointed out). 18:36:21
14 Aug 2025
@oatmealraisin:matrix.orgoatmealraisin I have a project with a long tree of projectReferences, and I've got (most) building. I'm changing them to packNupkg=true, but I'm running into a common error between some of them: error NU5026: The file '/build/flake-build/src/Shared/bin/Release/net8.0/Shared.dll' to be packed was not found on disk. [/build/flake-build/src/Shared/Shared.csproj] 19:01:03
@oatmealraisin:matrix.orgoatmealraisin(Shared.csproj is the currently building project)19:01:15
@oatmealraisin:matrix.orgoatmealraisinAny ideas why this might be happening?19:01:24

Show newer messages


Back to Room ListRoom Version: 9