diff --git a/pkgs/build-support/dotnet/make-nuget-source/default.nix b/pkgs/build-support/dotnet/make-nuget-source/default.nix index a23a143ab246..ddc2e7b52dbb 100644 --- a/pkgs/build-support/dotnet/make-nuget-source/default.nix +++ b/pkgs/build-support/dotnet/make-nuget-source/default.nix @@ -6,10 +6,9 @@ }: let - nuget-source = stdenvNoCC.mkDerivation rec { + nuget-source = stdenvNoCC.mkDerivation { inherit name; - meta.description = description; nativeBuildInputs = [ python3 ]; buildCommand = '' @@ -24,11 +23,16 @@ let # Note that this currently ignores any license provided in plain text (e.g. "LICENSE.txt") python ${./extract-licenses-from-nupkgs.py} $out/lib > $out/share/licenses ''; + + meta.description = description; } // { # We need data from `$out` for `meta`, so we have to use overrides as to not hit infinite recursion. - meta.licence = let - depLicenses = lib.splitString "\n" (builtins.readFile "${nuget-source}/share/licenses"); - in (lib.flatten (lib.forEach depLicenses (spdx: - lib.optionals (spdx != "") (lib.getLicenseFromSpdxId spdx) - ))); + meta = nuget-source.meta // { + licenses = let + # TODO: avoid IFD + depLicenses = lib.splitString "\n" (builtins.readFile "${nuget-source}/share/licenses"); + in lib.flatten (lib.forEach depLicenses (spdx: + lib.optionals (spdx != "") (lib.getLicenseFromSpdxId spdx) + )); + }; }; in nuget-source