diff --git a/pkgs/build-support/dotnet/fetch-nupkg/overrides.nix b/pkgs/build-support/dotnet/fetch-nupkg/overrides.nix index f4bc1976e0eb..76e241c0cd3a 100644 --- a/pkgs/build-support/dotnet/fetch-nupkg/overrides.nix +++ b/pkgs/build-support/dotnet/fetch-nupkg/overrides.nix @@ -17,6 +17,38 @@ # buildInputs = old.buildInputs or [ ] ++ [ hello ]; # }); + "Avalonia" = + package: + package.overrideAttrs ( + old: + let + # These versions have a runtime error when built with `dotnet publish --no-build` + # When attempting to draw a window, Avalonia will throw "No precompiled XAML found" + # + # Introduced in https://github.com/AvaloniaUI/Avalonia/pull/13840 + # Fixed by https://github.com/AvaloniaUI/Avalonia/pull/16835 + affectedVersions = [ + "11.1.0-beta1" + "11.1.0-beta2" + "11.1.0-rc1" + "11.1.0-rc2" + "11.1.0" + "11.1.1" + "11.1.2-rc1" + "11.1.2" + "11.1.3" + "11.2.0-beta1" + ]; + in + lib.optionalAttrs (builtins.elem old.version affectedVersions) { + postPatch = '' + substituteInPlace {build,buildTransitive}/AvaloniaBuildTasks.targets \ + --replace-fail 'BeforeTargets="CopyFilesToOutputDirectory;BuiltProjectOutputGroup"' \ + 'BeforeTargets="CopyFilesToOutputDirectory;BuiltProjectOutputGroup;ComputeResolvedFilesToPublishList"' + ''; + } + ); + "Avalonia.X11" = package: package.overrideAttrs (