diff --git a/pkgs/build-support/dotnet/build-dotnet-module/default.nix b/pkgs/build-support/dotnet/build-dotnet-module/default.nix index 339eac16b0b2..1a5d499929ac 100644 --- a/pkgs/build-support/dotnet/build-dotnet-module/default.nix +++ b/pkgs/build-support/dotnet/build-dotnet-module/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenvNoCC, linkFarmFromDrvs, callPackage, nuget-to-nix, writeScript, makeWrapper, fetchurl, xml2, dotnetCorePackages, dotnetPackages, mkNugetSource, mkNugetDeps, cacert, srcOnly }: +{ lib, stdenvNoCC, linkFarmFromDrvs, callPackage, nuget-to-nix, writeScript, makeWrapper, fetchurl, xml2, dotnetCorePackages, dotnetPackages, mkNugetSource, mkNugetDeps, cacert, srcOnly, symlinkJoin }: { name ? "${args.pname}-${args.version}" , pname ? name @@ -84,12 +84,30 @@ let then nugetDeps else mkNugetDeps { inherit name; nugetDeps = import nugetDeps; }; - nuget-source = mkNugetSource { - name = "${name}-nuget-source"; + # contains the actual package dependencies + _dependenciesSource = mkNugetSource { + name = "${name}-dependencies-source"; description = "A Nuget source with the dependencies for ${name}"; deps = [ _nugetDeps ] ++ lib.optional (localDeps != null) localDeps; }; + # this contains all the nuget packages that are implictly referenced by the dotnet + # build system. having them as separate deps allows us to avoid having to regenerate + # a packages dependencies when the dotnet-sdk version changes + _sdkDeps = mkNugetDeps { + name = "dotnet-sdk-${dotnet-sdk.version}-deps"; + nugetDeps = dotnet-sdk.passthru.packages; + }; + + _sdkSource = mkNugetSource { + name = "dotnet-sdk-${dotnet-sdk.version}-source"; + deps = [ _sdkDeps ]; + }; + + nuget-source = symlinkJoin { + name = "${name}-nuget-source"; + paths = [ _dependenciesSource _sdkSource ]; + }; in stdenvNoCC.mkDerivation (args // { nativeBuildInputs = args.nativeBuildInputs or [] ++ [ dotnetConfigureHook @@ -116,7 +134,9 @@ in stdenvNoCC.mkDerivation (args // { passthru = { inherit nuget-source; - fetch-deps = writeScript "fetch-${pname}-deps" '' + fetch-deps = let + exclusions = dotnet-sdk.passthru.packages { fetchNuGet = attrs: attrs.pname; }; + in writeScript "fetch-${pname}-deps" '' set -euo pipefail cd "$(dirname "''${BASH_SOURCE[0]}")" @@ -146,8 +166,10 @@ in stdenvNoCC.mkDerivation (args // { ${lib.optionalString (dotnetFlags != []) (builtins.toString dotnetFlags)} done + echo "${lib.concatStringsSep "\n" exclusions}" > "$HOME/package_exclusions" + echo "Writing lockfile..." - ${nuget-to-nix}/bin/nuget-to-nix "$HOME/nuget_pkgs" > "$deps_file" + ${nuget-to-nix}/bin/nuget-to-nix "$HOME/nuget_pkgs" "$HOME/package_exclusions" > "$deps_file" echo "Succesfully wrote lockfile to: $deps_file" ''; } // args.passthru or {}; diff --git a/pkgs/build-support/dotnet/nuget-to-nix/default.nix b/pkgs/build-support/dotnet/nuget-to-nix/default.nix index 18757692e92d..e3a3e45ac20c 100644 --- a/pkgs/build-support/dotnet/nuget-to-nix/default.nix +++ b/pkgs/build-support/dotnet/nuget-to-nix/default.nix @@ -8,6 +8,7 @@ , gnused , jq , curl +, gnugrep }: runCommandLocal "nuget-to-nix" { @@ -22,6 +23,7 @@ runCommandLocal "nuget-to-nix" { gnused jq curl + gnugrep ]; }; diff --git a/pkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh b/pkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh index c8db14a4d918..ad75cf6574b7 100755 --- a/pkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh +++ b/pkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh @@ -5,11 +5,12 @@ set -euo pipefail export PATH="@binPath@" if [ $# -eq 0 ]; then - >&2 echo "Usage: $0 [packages directory] > deps.nix" + >&2 echo "Usage: $0 [path to file with a list of excluded packages] > deps.nix" exit 1 fi pkgs=$1 +exclusions=$2 tmpfile=$(mktemp /tmp/nuget-to-nix.XXXXXX) trap "rm -f ${tmpfile}" EXIT @@ -21,6 +22,11 @@ while read pkg_spec; do { read pkg_name; read pkg_version; } < <( # Build version part should be ignored: `3.0.0-beta2.20059.3+77df2220` -> `3.0.0-beta2.20059.3` sed -nE 's/.*([^<]*).*/\1/p; s/.*([^<+]*).*/\1/p' "$pkg_spec") + + if grep "$pkg_name" "$exclusions" > /dev/null; then + continue + fi + pkg_sha256="$(nix-hash --type sha256 --flat --base32 "$(dirname "$pkg_spec")"/*.nupkg)" pkg_src="$(jq --raw-output '.source' "$(dirname "$pkg_spec")/.nupkg.metadata")" diff --git a/pkgs/development/compilers/dotnet/build-dotnet.nix b/pkgs/development/compilers/dotnet/build-dotnet.nix index cadb6fb31d78..f8cf3d302ec4 100644 --- a/pkgs/development/compilers/dotnet/build-dotnet.nix +++ b/pkgs/development/compilers/dotnet/build-dotnet.nix @@ -1,10 +1,12 @@ { type , version , srcs -, icu #passing icu as an argument, because dotnet 3.1 has troubles with icu71 +, icu # passing icu as an argument, because dotnet 3.1 has troubles with icu71 +, packages ? null }: assert builtins.elem type [ "aspnetcore" "runtime" "sdk" ]; +assert if type == "sdk" then packages != null else true; { lib , stdenv @@ -104,7 +106,7 @@ stdenv.mkDerivation rec { ''; passthru = { - inherit icu; + inherit icu packages; }; meta = with lib; { diff --git a/pkgs/development/compilers/dotnet/default.nix b/pkgs/development/compilers/dotnet/default.nix index 9097604e428e..b983481477c8 100644 --- a/pkgs/development/compilers/dotnet/default.nix +++ b/pkgs/development/compilers/dotnet/default.nix @@ -8,9 +8,16 @@ https://dotnet.microsoft.com/download/dotnet { callPackage, icu70, icu }: let buildDotnet = attrs: callPackage (import ./build-dotnet.nix attrs) {}; - buildAspNetCore = attrs: buildDotnet (attrs // { type = "aspnetcore"; }); - buildNetRuntime = attrs: buildDotnet (attrs // { type = "runtime"; }); - buildNetSdk = attrs: buildDotnet (attrs // { type = "sdk"; }); + buildAttrs = { + buildAspNetCore = attrs: buildDotnet (attrs // { type = "aspnetcore"; }); + buildNetRuntime = attrs: buildDotnet (attrs // { type = "runtime"; }); + buildNetSdk = attrs: buildDotnet (attrs // { type = "sdk"; }); + }; + + ## Files in versions/ are generated automatically by update.sh ## + dotnet_3_1 = import ./versions/3.1.nix (buildAttrs // { icu = icu70; }); + dotnet_5_0 = import ./versions/5.0.nix (buildAttrs // { inherit icu; }); + dotnet_6_0 = import ./versions/6.0.nix (buildAttrs // { inherit icu; }); in rec { combinePackages = attrs: callPackage (import ./combine-packages.nix attrs) {}; @@ -19,192 +26,4 @@ rec { sdk_2_1 = throw "Dotnet SDK 2.1 is EOL, please use 3.1 (LTS), 5.0 (Current) or 6.0 (LTS)"; sdk_2_2 = throw "Dotnet SDK 2.2 is EOL, please use 3.1 (LTS), 5.0 (Current) or 6.0 (LTS)"; sdk_3_0 = throw "Dotnet SDK 3.0 is EOL, please use 3.1 (LTS), 5.0 (Current) or 6.0 (LTS)"; - - ##### Following attributes with urls and hashes should be auto-generated by print-hashes.sh ##### - - # v3.1 (maintenance) - aspnetcore_3_1 = buildAspNetCore { - icu = icu70; - version = "3.1.26"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/6f72adf7-0e78-48ea-85ef-e72a39a1f8a1/1ec0238c236c3757e5628563a329fdc4/aspnetcore-runtime-3.1.26-linux-x64.tar.gz"; - sha512 = "8bbf06012cdd2cff23c592e0d3c49d032d77add4dda8fba1d7ba73e6cc4ae97b1676908b14cdc7fc2fe723302e1efd27a44b48190a91d69c0e41bb5edb47501f"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/6b68a14a-b4dd-4a75-bb32-26c08d19190f/1d6b637e290775f668701f8f6092ab35/aspnetcore-runtime-3.1.26-linux-arm64.tar.gz"; - sha512 = "757ff6cbc31b1c8743077288d7fa621c73fa7f4d155d636ad100cda6e1f601e31d2f842d5cfef3dec5daa4c8c3efbcf76f02afd1c518cae7b67b2a46a9faab08"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/33e8be5c-5e6a-4dc2-9aa8-846aaffa6897/fe9d96af1d75f8d5f4cba4bff95f2fae/aspnetcore-runtime-3.1.26-osx-x64.tar.gz"; - sha512 = "0657d8b11a58357f5374e5d8201b401e55f9f4710794be565f7b9022d10639c2e72aebc6b7433b34fd24a03e8e12541c998fad28b5263de4439b3d31a8252c4c"; - }; - }; - }; - - runtime_3_1 = buildNetRuntime { - icu = icu70; - version = "3.1.26"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/a14c8e4d-a22b-47f8-953c-bb4337634513/58017d103d432f7106c44b0891936aba/dotnet-runtime-3.1.26-linux-x64.tar.gz"; - sha512 = "03676885ec4d1f5ba184678a6b774f8e385abfff800a6bcee6f85557b39e9cdde500be49b5d6c956fc95cdfb9f33d31e467548bb498a52bc4fd639b3cb87c8d0"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/cb0e8b4b-7b2b-40cc-b7a6-30f0d4fabe6c/f5cb06cbb1b1b5d198792333b3db235a/dotnet-runtime-3.1.26-linux-arm64.tar.gz"; - sha512 = "574409616f5cbef35a2bd6fd1a2f0bcb3bdaa81457aea3af5e0e237ba768ced5214c51a3045697fe7478e8211e2045fc2072e382d6f456509a8f2923e9b1fc26"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/6bedea65-b104-45b8-abe9-36cefbeedadf/05f4e472ec2395dad7103fda9ed278b2/dotnet-runtime-3.1.26-osx-x64.tar.gz"; - sha512 = "7957b5e697db7548964c399197ae8e61cc31f15374df384b6db9b47472a7d6f1b5b3e256c191e203c4d18c18cc8bdb6c4a331c5875bd37bd6415f3c83b8062da"; - }; - }; - }; - - sdk_3_1 = buildNetSdk { - icu = icu70; - version = "3.1.420"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/5424da8c-ce12-46de-a51a-8fa61aefdde6/52a9d6b5718ea40863db96901c780d4b/dotnet-sdk-3.1.420-linux-x64.tar.gz"; - sha512 = "b3bdd964182f9edc3c2976541e657fcc43b0eaf9bc97197597c7ecb8b784d79e3efb9e0405c84e1dcb434cf4cd38ddc4af628c5df486c3d7ae8a23e5254796e3"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/a84bf296-ee6e-4e66-9694-90d3da7af2b4/b00b2efe2432938e5a19c45d3759d80f/dotnet-sdk-3.1.420-linux-arm64.tar.gz"; - sha512 = "ac66b1544fe178153bb85c2e5be584464374ce4c036fc95720547c231c2730312018fbdfc735f9071579749415bc54e1f6b8f080cc2b08d5799a0da941e8a5f5"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/bb0efe58-450c-4e28-81c1-4081acd6ffa4/1d0eaf8b624dff000c8b10ea0497e731/dotnet-sdk-3.1.420-osx-x64.tar.gz"; - sha512 = "370cba4685e07d1cdb5d7f9b754812b237802ace679c9b9985c6e5c4dc09f500580f1413679a288615079bd155b68b362adb00151b2b8f5ca7c3718ab9e16194"; - }; - }; - }; - - # v5.0 (current) - aspnetcore_5_0 = buildAspNetCore { - inherit icu; - version = "5.0.12"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/ad0a54ca-4b88-4762-a790-aebeaba6b9e7/0f796fb90696d078046d90d8a05c027e/aspnetcore-runtime-5.0.12-linux-x64.tar.gz"; - sha512 = "0529f23ffa651ac2c2807b70d6e5034f6ae4c88204afdaaa76965ef604d6533f9440d68d9f2cdd3a9f2ca37e9140e6c61a9f9207d430c71140094c7d5c33bf79"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/bfc8ae06-2830-4082-a09e-63b3c7134096/880a4712d4ba3491c88aa566553c4e8a/aspnetcore-runtime-5.0.12-linux-arm64.tar.gz"; - sha512 = "70570177896943613f0cddeb046ffccaafb1c8245c146383e45fbcfb27779c70dff1ab22c2b13a14bf096173c9279e0a386f61665106a3abb5f623b50281a652"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/06d71ed5-0755-40d6-8b8e-14a24b8a9cb7/47a8b4deda0deecf3658716b642c69bf/aspnetcore-runtime-5.0.12-osx-x64.tar.gz"; - sha512 = "bd9e7dd7f48c220121dde85b3acc4ce7eb2a1944d472f9340276718ef72d033f05fd9a62ffb9de93b8e7633843e731ff1cb5e8c836315f7571f519fdb0a119e1"; - }; - }; - }; - - runtime_5_0 = buildNetRuntime { - inherit icu; - version = "5.0.12"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/781b7ae6-166c-4114-97f8-926d2bf74d34/fe51479e3138d672c512ef0322be23d3/dotnet-runtime-5.0.12-linux-x64.tar.gz"; - sha512 = "32b5f86db3b1d4c21e3cf616d22f0e4a7374385dac0cf03cdebf3520dcf846460d9677ec1829a180920740a0237d64f6eaa2421d036a67f4fe9fb15d4f6b1db9"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/7c342ad2-2dae-471b-ae46-c0c820321c1f/a480ad8ca0bc826a48c9b1e56efd972b/dotnet-runtime-5.0.12-linux-arm64.tar.gz"; - sha512 = "a8089fad8d21a4b582aa6c3d7162d56a21fee697fd400f050a772f67c2ace5e4196d1c4261d3e861d6dc2e5439666f112c406104d6271e5ab60cda80ef2ffc64"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/8f990fa6-6b13-40ad-95f6-383391ff3d91/7531048d16c01efdf3885da367aa8b89/dotnet-runtime-5.0.12-osx-x64.tar.gz"; - sha512 = "a3160eaec15d0e2b62a4a2cdbb6663ef2e817fd26a3a3b8b3d75c5e3538b2947ff66eaddafb39cc297b9f087794d5fbd5a0e097ec8522ab6fea562f230055264"; - }; - }; - }; - - sdk_5_0 = buildNetSdk { - inherit icu; - version = "5.0.403"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/b77183fa-c045-4058-82c5-d37742ed5f2d/ddaccef3e448a6df348cae4d1d271339/dotnet-sdk-5.0.403-linux-x64.tar.gz"; - sha512 = "7ba5f7f898dba64ea7027dc66184d60ac5ac35fabe750bd509711628442e098413878789fad5766be163fd2867cf22ef482a951e187cf629bbc6f54dd9293a4a"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/91015c72-ce5a-4840-9e87-5bfa4bb80224/b39692ac418d790ff7a2e092eb07de98/dotnet-sdk-5.0.403-linux-arm64.tar.gz"; - sha512 = "6cc705fe45c0d8df6a493eb2923539ef5b62d048d5218859bf3af06fb3934c9c716c16f98ee1a28c818d77adff8430bf39a2ae54a59a1468b704b4ba192234ac"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/5ccdb916-531f-4064-84e8-5475b273a4de/80dcfa0c2eb528f8b0e7c313ed36f4f1/dotnet-sdk-5.0.403-osx-x64.tar.gz"; - sha512 = "70beea069db182cca211cf04d7a80f3d6a3987d76cbd2bb60590ee76b93a4041b1b86ad91057cddbbaddd501c72327c1bc0a5fec630f38063f84bd60ba2b4792"; - }; - }; - }; - - # v6.0 (lts) - aspnetcore_6_0 = buildAspNetCore { - inherit icu; - version = "6.0.6"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/afd5344f-a9e9-45f9-85b5-de4551c53736/c30996daa407f9bb540ebc5edfcf16fc/aspnetcore-runtime-6.0.6-linux-x64.tar.gz"; - sha512 = "1a5c0f85820f0eb589700df94de6dbff45fe4089a37f1cd5b1fac33476a2cbd8d5c6f129e55b3716f5a7a2616f1a5a720c52238f21b28a510a3e5c8bcb8c516c"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/94553ccb-ce1a-401c-8840-bdffb4e9d0cb/ab8a0024df90506d953904ac38b5a978/aspnetcore-runtime-6.0.6-linux-arm64.tar.gz"; - sha512 = "a3bd7ce99ffb9b87766c49fcf28d802f4072af1d55f1d53ef4043a1a0b038a0fc8046669bbd82f64fb37e4c73703fa8f54a460caaa473d952baf941d23341c90"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/0f5eb01e-6b46-4ef3-8c1c-7b99657a36df/7d4807a527cd5bc5a6a864f1fcd354e7/aspnetcore-runtime-6.0.6-osx-x64.tar.gz"; - sha512 = "d1a469a5d27afd2f035f9865a295b8948bb2fcefd0e734c61ea8d0fe1b272fd1e0ba3aa4ad414aa68491fc611695c8d94064d1bb02d62cf1e7ea071a73a844da"; - }; - aarch64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/550f6609-521f-42e4-9b53-ff6c88bbe26a/1abbac456fe075a1b6f0f578716e0c4a/aspnetcore-runtime-6.0.6-osx-arm64.tar.gz"; - sha512 = "0d62c151b4d25d606becbc0a99d4ed3988aaae97a95990a8d5b6e0e220bdf661e3f7fad64dad6a479f8c9bbd42971d6e5fab7dca43b74ca7ccbc423fa5b200af"; - }; - }; - }; - - runtime_6_0 = buildNetRuntime { - inherit icu; - version = "6.0.6"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/ec4172e3-077a-42c0-859d-349e517d7935/82d945cdc4c33fbe440a86a240a58a41/dotnet-runtime-6.0.6-linux-x64.tar.gz"; - sha512 = "4fe090f934f0ba4e64a63dfccbac97d49b19a913f2a7d73abe85efd604ee5577cefd65d6e0dc02086e9fa28be4ce2bbaecb33ea70d022714138ed54deea58c72"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/44ed3398-9838-4fd0-b225-60d5aadfb00e/00fd4a320d09a380753b45106e2a8e94/dotnet-runtime-6.0.6-linux-arm64.tar.gz"; - sha512 = "659bf64c5f2e11f2b8cf01dc595a4280d1960bf484fc379d3a382660eea7adb6e69ace49d84522a85920ed53fa2ffb95a3b0ca0ebf63dc909b865028174ed29f"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/30056482-998a-42ed-b3a7-8fc057977e2e/698c75b7f2429e796dd3c13f980e4188/dotnet-runtime-6.0.6-osx-x64.tar.gz"; - sha512 = "efe5b6287c4a62688bc94aae2d4ed8831ca5d62280ba477bb3efa49666c9fdbb9b091980837882b1b52ddfba566a8ab0071746cbfa63efea99a0bb3ebf19a2a1"; - }; - aarch64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/f91e108d-487b-4a47-b6e9-52bcc56df7ed/d722468512150e73489f2cee0b2d7087/dotnet-runtime-6.0.6-osx-arm64.tar.gz"; - sha512 = "0cb4f3c808ae5476ebdbc18840846fb625a51ac5ce53688e83c3ae22a062095f9012c066dbcce231eca50ca3f057d7a29721d4b9cd04c9891ca26fc0c1c4a481"; - }; - }; - }; - - sdk_6_0 = buildNetSdk { - inherit icu; - version = "6.0.301"; - srcs = { - x86_64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/77d472e5-194c-421e-992d-e4ca1d08e6cc/56c61ac303ddf1b12026151f4f000a2b/dotnet-sdk-6.0.301-linux-x64.tar.gz"; - sha512 = "2f434ea4860ee637e9cf19991a80e1febb1105531dd96b4fbc728d538ca0ab202a0bdff128fd13b269fac3ba3bc9d5f9c49039a6e0d7d32751e8a2bb6d790446"; - }; - aarch64-linux = { - url = "https://download.visualstudio.microsoft.com/download/pr/06c4ee8e-bf2c-4e46-ab1c-e14dd72311c1/f7bc6c9677eaccadd1d0e76c55d361ea/dotnet-sdk-6.0.301-linux-arm64.tar.gz"; - sha512 = "978dd04f78ac3d6b594c47f1482bba0abe93f0b37379c1c46a2b9b33bdf5188576b055250546295de39bb22cba93ea9b31c31bb026a319ad1b3fc507db44481f"; - }; - x86_64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/cf3e1c73-a9a9-4e08-8607-8f9edae5f3f2/40a021a98a6b6e430a1f170037735f6f/dotnet-sdk-6.0.301-osx-x64.tar.gz"; - sha512 = "027328a353b65fad0618d1e5abeb973c9f05787d9432631bf9ab5fafe636ea2f494f70c0704e81a1664fe7a3519174bd269dbc795b651b14e9a86c83f8e3adec"; - }; - aarch64-darwin = { - url = "https://download.visualstudio.microsoft.com/download/pr/3859fff3-f8a9-4e05-87cd-bd6db75833f5/64ec1099d45f85d14099da3c1f92a5c3/dotnet-sdk-6.0.301-osx-arm64.tar.gz"; - sha512 = "899558be856769ad6ccc4606f3a9f996327a7395a72acb18a5fb0899e0c4c4ba8c90b94f16771439193f87a974e1e884dd55a9fc6649fe929ebe47ef19cb4efc"; - }; - }; - }; -} +} // dotnet_3_1 // dotnet_5_0 // dotnet_6_0 diff --git a/pkgs/development/compilers/dotnet/print-hashes.sh b/pkgs/development/compilers/dotnet/print-hashes.sh deleted file mode 100755 index 162f1af70ecf..000000000000 --- a/pkgs/development/compilers/dotnet/print-hashes.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -i bash -p curl jq - -set -eu - -release () { - local content="$1" - local version="$2" - - jq -r '.releases[] | select(."release-version" == "'"$version"'")' <<< "$content" -} - -release_files () { - local release="$1" - local type="$2" - - jq -r '[."'"$type"'".files[] | select(.name | test("^.*.tar.gz$"))]' <<< "$release" -} - -release_platform_attr () { - local release_files="$1" - local platform="$2" - local attr="$3" - - jq -r '.[] | select(.rid == "'"$platform"'") | ."'"$attr"'"' <<< "$release_files" -} - -platform_sources () { - local release_files="$1" - local platforms=( \ - "x86_64-linux linux-x64" \ - "aarch64-linux linux-arm64" \ - "x86_64-darwin osx-x64" \ - "aarch64-darwin osx-arm64" \ - ) - - echo "srcs = {" - for kv in "${platforms[@]}"; do - local nix_platform=${kv%% *} - local ms_platform=${kv##* } - - local url=$(release_platform_attr "$release_files" "$ms_platform" url) - local hash=$(release_platform_attr "$release_files" "$ms_platform" hash) - - [[ -z "$url" || -z "$hash" ]] && continue - echo " $nix_platform = { - url = \"$url\"; - sha512 = \"$hash\"; - }; " - done - echo " };" -} - -main () { - pname=$(basename "$0") - if [[ ! "$*" =~ ^.*[0-9]{1,}\.[0-9]{1,}.*$ ]]; then - echo "Usage: $pname [sem-versions] -Get updated dotnet src (platform - url & sha512) expressions for specified versions - -Examples: - $pname 3.1.21 5.0.12 - specific x.y.z versions - $pname 3.1 5.0 6.0 - latest x.y versions -" >&2 - exit 1 - fi - - for sem_version in "$@"; do - patch_specified=false - if [[ "$sem_version" =~ ^[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}$ ]]; then - patch_specified=true - elif [[ ! "$sem_version" =~ ^[0-9]{1,}\.[0-9]{1,}$ ]]; then - continue - fi - - major_minor=$(sed 's/^\([0-9]*\.[0-9]*\).*$/\1/' <<< "$sem_version") - content=$(curl -sL https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/"$major_minor"/releases.json) - major_minor_patch=$([ "$patch_specified" == true ] && echo "$sem_version" || jq -r '."latest-release"' <<< "$content") - - release_content=$(release "$content" "$major_minor_patch") - aspnetcore_version=$(jq -r '."aspnetcore-runtime".version' <<< "$release_content") - runtime_version=$(jq -r '.runtime.version' <<< "$release_content") - sdk_version=$(jq -r '.sdk.version' <<< "$release_content") - - aspnetcore_files="$(release_files "$release_content" "aspnetcore-runtime")" - runtime_files="$(release_files "$release_content" "runtime")" - sdk_files="$(release_files "$release_content" "sdk")" - if [ $major_minor = "3.1" ]; then - icu_attr="icu = icu70;" - else - icu_attr="inherit icu;" - fi - - major_minor_underscore=${major_minor/./_} - channel_version=$(jq -r '."channel-version"' <<< "$content") - support_phase=$(jq -r '."support-phase"' <<< "$content") - echo " - # v$channel_version ($support_phase) - aspnetcore_$major_minor_underscore = buildAspNetCore { - $icu_attr - version = \"${aspnetcore_version}\"; - $(platform_sources "$aspnetcore_files") - }; - - runtime_$major_minor_underscore = buildNetRuntime { - $icu_attr - version = \"${runtime_version}\"; - $(platform_sources "$runtime_files") - }; - - sdk_$major_minor_underscore = buildNetSdk { - $icu_attr - version = \"${sdk_version}\"; - $(platform_sources "$sdk_files") - }; " - done -} - -main "$@" diff --git a/pkgs/development/compilers/dotnet/update.sh b/pkgs/development/compilers/dotnet/update.sh new file mode 100755 index 000000000000..285117e14e6d --- /dev/null +++ b/pkgs/development/compilers/dotnet/update.sh @@ -0,0 +1,255 @@ +#!/usr/bin/env nix-shell +#!nix-shell -I nixpkgs=../../../../. -i bash -p curl jq nix gnused + +set -euo pipefail + +release () { + local content="$1" + local version="$2" + + jq -r '.releases[] | select(."release-version" == "'"$version"'")' <<< "$content" +} + +release_files () { + local release="$1" + local type="$2" + + jq -r '[."'"$type"'".files[] | select(.name | test("^.*.tar.gz$"))]' <<< "$release" +} + +release_platform_attr () { + local release_files="$1" + local platform="$2" + local attr="$3" + + jq -r '.[] | select(.rid == "'"$platform"'") | ."'"$attr"'"' <<< "$release_files" +} + +platform_sources () { + local release_files="$1" + local platforms=( \ + "x86_64-linux linux-x64" \ + "aarch64-linux linux-arm64" \ + "x86_64-darwin osx-x64" \ + "aarch64-darwin osx-arm64" \ + ) + + echo "srcs = {" + for kv in "${platforms[@]}"; do + local nix_platform=${kv%% *} + local ms_platform=${kv##* } + + local url=$(release_platform_attr "$release_files" "$ms_platform" url) + local hash=$(release_platform_attr "$release_files" "$ms_platform" hash) + + [[ -z "$url" || -z "$hash" ]] && continue + echo " $nix_platform = { + url = \"$url\"; + sha512 = \"$hash\"; + };" + done + echo " };" +} + +sdk_packages () { + local version=$1 + # These packages are implicitly references by the build process, + # based on the specific project configurations (RIDs, used features, etc.) + # They are always referenced with the same version as the SDK used for building. + # Since we lock nuget dependencies, when these packages are included in the generated + # lock files (deps.nix), every update of SDK required those lock files to be + # updated to reflect the new versions of these packages - otherwise, the build + # would fail due to missing dependencies. + # + # Moving them to a separate list stored alongside the SDK package definitions, + # and implictly including them along in buildDotnetModule allows us + # to make updating .NET SDK packages a lot easier - we now just update + # the versions of these packages in one place, and all packages that + # use buildDotnetModule continue building with the new .NET version without changes. + # + # Keep in mind that there is no canonical list of these implicitly + # referenced packages - this list was created based on looking into + # the deps.nix files of existing packages, and which dependencies required + # updating after a SDK version bump. + # + # Due to this, make sure to check if new SDK versions introduce any new packages. + # This should not happend in minor or bugfix updates, but probably happens + # with every new major .NET release. + local pkgs=( \ + "Microsoft.AspNetCore.App.Ref" \ + "Microsoft.AspNetCore.App.Runtime.linux-arm" \ + "Microsoft.AspNetCore.App.Runtime.linux-arm64" \ + "Microsoft.AspNetCore.App.Runtime.linux-musl-arm" \ + "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64" \ + "Microsoft.AspNetCore.App.Runtime.linux-musl-x64" \ + "Microsoft.AspNetCore.App.Runtime.linux-x64" \ + "Microsoft.AspNetCore.App.Runtime.osx-arm64" \ + "Microsoft.AspNetCore.App.Runtime.osx-x64" \ + "Microsoft.AspNetCore.App.Runtime.win-arm" \ + "Microsoft.AspNetCore.App.Runtime.win-arm64" \ + "Microsoft.AspNetCore.App.Runtime.win-x64" \ + "Microsoft.AspNetCore.App.Runtime.win-x86" \ + "Microsoft.NETCore.App.Composite" \ + "Microsoft.NETCore.App.Host.linux-arm" \ + "Microsoft.NETCore.App.Host.linux-arm64" \ + "Microsoft.NETCore.App.Host.linux-musl-arm" \ + "Microsoft.NETCore.App.Host.linux-musl-arm64" \ + "Microsoft.NETCore.App.Host.linux-musl-x64" \ + "Microsoft.NETCore.App.Host.linux-x64" \ + "Microsoft.NETCore.App.Host.osx-arm64" \ + "Microsoft.NETCore.App.Host.osx-x64" \ + "Microsoft.NETCore.App.Host.win-arm" \ + "Microsoft.NETCore.App.Host.win-arm64" \ + "Microsoft.NETCore.App.Host.win-x64" \ + "Microsoft.NETCore.App.Host.win-x86" \ + "Microsoft.NETCore.App.Ref" \ + "Microsoft.NETCore.App.Runtime.linux-arm" \ + "Microsoft.NETCore.App.Runtime.linux-arm64" \ + "Microsoft.NETCore.App.Runtime.linux-musl-arm" \ + "Microsoft.NETCore.App.Runtime.linux-musl-arm64" \ + "Microsoft.NETCore.App.Runtime.linux-musl-x64" \ + "Microsoft.NETCore.App.Runtime.linux-x64" \ + "Microsoft.NETCore.App.Runtime.osx-arm64" \ + "Microsoft.NETCore.App.Runtime.osx-x64" \ + "Microsoft.NETCore.App.Runtime.win-arm" \ + "Microsoft.NETCore.App.Runtime.win-arm64" \ + "Microsoft.NETCore.App.Runtime.win-x64" \ + "Microsoft.NETCore.App.Runtime.win-x86" \ + "Microsoft.NETCore.DotNetAppHost" \ + "Microsoft.NETCore.DotNetHost" \ + "Microsoft.NETCore.DotNetHostPolicy" \ + "Microsoft.NETCore.DotNetHostResolver" \ + "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost" \ + "runtime.linux-arm64.Microsoft.NETCore.DotNetHost" \ + "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost" \ + "runtime.linux-arm.Microsoft.NETCore.DotNetHost" \ + "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost" \ + "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost" \ + "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost" \ + "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost" \ + "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost" \ + "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost" \ + "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost" \ + "runtime.linux-x64.Microsoft.NETCore.DotNetHost" \ + "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost" \ + "runtime.osx-arm64.Microsoft.NETCore.DotNetHost" \ + "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost" \ + "runtime.osx-x64.Microsoft.NETCore.DotNetHost" \ + "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost" \ + "runtime.win-arm64.Microsoft.NETCore.DotNetHost" \ + "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.win-arm.Microsoft.NETCore.DotNetAppHost" \ + "runtime.win-arm.Microsoft.NETCore.DotNetHost" \ + "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.win-x64.Microsoft.NETCore.DotNetAppHost" \ + "runtime.win-x64.Microsoft.NETCore.DotNetHost" \ + "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver" \ + "runtime.win-x86.Microsoft.NETCore.DotNetAppHost" \ + "runtime.win-x86.Microsoft.NETCore.DotNetHost" \ + "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy" \ + "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver" \ + ) + + local nuget_url="$(curl -f "https://api.nuget.org/v3/index.json" | jq --raw-output '.resources[] | select(."@type" == "PackageBaseAddress/3.0.0")."@id"')" + + for pkg in "${pkgs[@]}"; do + local url hash + url="${nuget_url}${pkg,,}/${version,,}/${pkg,,}.${version,,}.nupkg" + hash="$(nix-prefetch-url "$url")" + echo " (fetchNuGet { pname = \"${pkg}\"; version = \"${version}\"; sha256 = \"${hash}\"; })" + done +} + +main () { + pname=$(basename "$0") + if [[ ! "$*" =~ ^.*[0-9]{1,}\.[0-9]{1,}.*$ ]]; then + echo "Usage: $pname [sem-versions] +Get updated dotnet src (platform - url & sha512) expressions for specified versions + +Examples: + $pname 3.1.21 5.0.12 - specific x.y.z versions + $pname 3.1 5.0 6.0 - latest x.y versions +" >&2 + exit 1 + fi + + for sem_version in "$@"; do + echo "Generating ./versions/${sem_version}.nix" + patch_specified=false + # Check if a patch was specified as an argument. + # If so, generate file for the specific version. + # If only x.y version was provided, get the latest patch + # version of the given x.y version. + if [[ "$sem_version" =~ ^[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}$ ]]; then + patch_specified=true + elif [[ ! "$sem_version" =~ ^[0-9]{1,}\.[0-9]{1,}$ ]]; then + continue + fi + + # Make sure the x.y version is properly passed to .NET release metadata url. + # Then get the json file and parse it to find the latest patch release. + major_minor=$(sed 's/^\([0-9]*\.[0-9]*\).*$/\1/' <<< "$sem_version") + content=$(curl -sL https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/"$major_minor"/releases.json) + major_minor_patch=$([ "$patch_specified" == true ] && echo "$sem_version" || jq -r '."latest-release"' <<< "$content") + + release_content=$(release "$content" "$major_minor_patch") + aspnetcore_version=$(jq -r '."aspnetcore-runtime".version' <<< "$release_content") + runtime_version=$(jq -r '.runtime.version' <<< "$release_content") + sdk_version=$(jq -r '.sdk.version' <<< "$release_content") + + aspnetcore_files="$(release_files "$release_content" "aspnetcore-runtime")" + runtime_files="$(release_files "$release_content" "runtime")" + sdk_files="$(release_files "$release_content" "sdk")" + + major_minor_underscore=${major_minor/./_} + channel_version=$(jq -r '."channel-version"' <<< "$content") + support_phase=$(jq -r '."support-phase"' <<< "$content") + echo "{ buildAspNetCore, buildNetRuntime, buildNetSdk, icu }: + +# v$channel_version ($support_phase) +{ + aspnetcore_$major_minor_underscore = buildAspNetCore { + inherit icu; + version = \"${aspnetcore_version}\"; + $(platform_sources "$aspnetcore_files") + }; + + runtime_$major_minor_underscore = buildNetRuntime { + inherit icu; + version = \"${runtime_version}\"; + $(platform_sources "$runtime_files") + }; + + sdk_$major_minor_underscore = buildNetSdk { + inherit icu; + version = \"${sdk_version}\"; + $(platform_sources "$sdk_files") + packages = { fetchNuGet }: [ +$(sdk_packages "${runtime_version}") + ]; + }; +}" > "./versions/${sem_version}.nix" + echo "Generated ./versions/${sem_version}.nix" + done +} + +main "$@" diff --git a/pkgs/development/compilers/dotnet/versions/3.1.nix b/pkgs/development/compilers/dotnet/versions/3.1.nix new file mode 100644 index 000000000000..f9a34bbb169c --- /dev/null +++ b/pkgs/development/compilers/dotnet/versions/3.1.nix @@ -0,0 +1,64 @@ +{ buildAspNetCore, buildNetRuntime, buildNetSdk, icu }: + +# v3.1 (maintenance) +{ + aspnetcore_3_1 = buildAspNetCore { + inherit icu; + version = "3.1.26"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/6f72adf7-0e78-48ea-85ef-e72a39a1f8a1/1ec0238c236c3757e5628563a329fdc4/aspnetcore-runtime-3.1.26-linux-x64.tar.gz"; + sha512 = "8bbf06012cdd2cff23c592e0d3c49d032d77add4dda8fba1d7ba73e6cc4ae97b1676908b14cdc7fc2fe723302e1efd27a44b48190a91d69c0e41bb5edb47501f"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/6b68a14a-b4dd-4a75-bb32-26c08d19190f/1d6b637e290775f668701f8f6092ab35/aspnetcore-runtime-3.1.26-linux-arm64.tar.gz"; + sha512 = "757ff6cbc31b1c8743077288d7fa621c73fa7f4d155d636ad100cda6e1f601e31d2f842d5cfef3dec5daa4c8c3efbcf76f02afd1c518cae7b67b2a46a9faab08"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/33e8be5c-5e6a-4dc2-9aa8-846aaffa6897/fe9d96af1d75f8d5f4cba4bff95f2fae/aspnetcore-runtime-3.1.26-osx-x64.tar.gz"; + sha512 = "0657d8b11a58357f5374e5d8201b401e55f9f4710794be565f7b9022d10639c2e72aebc6b7433b34fd24a03e8e12541c998fad28b5263de4439b3d31a8252c4c"; + }; + }; + }; + + runtime_3_1 = buildNetRuntime { + inherit icu; + version = "3.1.26"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/a14c8e4d-a22b-47f8-953c-bb4337634513/58017d103d432f7106c44b0891936aba/dotnet-runtime-3.1.26-linux-x64.tar.gz"; + sha512 = "03676885ec4d1f5ba184678a6b774f8e385abfff800a6bcee6f85557b39e9cdde500be49b5d6c956fc95cdfb9f33d31e467548bb498a52bc4fd639b3cb87c8d0"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/cb0e8b4b-7b2b-40cc-b7a6-30f0d4fabe6c/f5cb06cbb1b1b5d198792333b3db235a/dotnet-runtime-3.1.26-linux-arm64.tar.gz"; + sha512 = "574409616f5cbef35a2bd6fd1a2f0bcb3bdaa81457aea3af5e0e237ba768ced5214c51a3045697fe7478e8211e2045fc2072e382d6f456509a8f2923e9b1fc26"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/6bedea65-b104-45b8-abe9-36cefbeedadf/05f4e472ec2395dad7103fda9ed278b2/dotnet-runtime-3.1.26-osx-x64.tar.gz"; + sha512 = "7957b5e697db7548964c399197ae8e61cc31f15374df384b6db9b47472a7d6f1b5b3e256c191e203c4d18c18cc8bdb6c4a331c5875bd37bd6415f3c83b8062da"; + }; + }; + }; + + sdk_3_1 = buildNetSdk { + inherit icu; + version = "3.1.420"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/5424da8c-ce12-46de-a51a-8fa61aefdde6/52a9d6b5718ea40863db96901c780d4b/dotnet-sdk-3.1.420-linux-x64.tar.gz"; + sha512 = "b3bdd964182f9edc3c2976541e657fcc43b0eaf9bc97197597c7ecb8b784d79e3efb9e0405c84e1dcb434cf4cd38ddc4af628c5df486c3d7ae8a23e5254796e3"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/a84bf296-ee6e-4e66-9694-90d3da7af2b4/b00b2efe2432938e5a19c45d3759d80f/dotnet-sdk-3.1.420-linux-arm64.tar.gz"; + sha512 = "ac66b1544fe178153bb85c2e5be584464374ce4c036fc95720547c231c2730312018fbdfc735f9071579749415bc54e1f6b8f080cc2b08d5799a0da941e8a5f5"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/bb0efe58-450c-4e28-81c1-4081acd6ffa4/1d0eaf8b624dff000c8b10ea0497e731/dotnet-sdk-3.1.420-osx-x64.tar.gz"; + sha512 = "370cba4685e07d1cdb5d7f9b754812b237802ace679c9b9985c6e5c4dc09f500580f1413679a288615079bd155b68b362adb00151b2b8f5ca7c3718ab9e16194"; + }; + }; + packages = { fetchNuGet }: [ + + ]; + }; +} diff --git a/pkgs/development/compilers/dotnet/versions/5.0.nix b/pkgs/development/compilers/dotnet/versions/5.0.nix new file mode 100644 index 000000000000..4a792f59d016 --- /dev/null +++ b/pkgs/development/compilers/dotnet/versions/5.0.nix @@ -0,0 +1,64 @@ +{ buildAspNetCore, buildNetRuntime, buildNetSdk, icu }: + +# v5.0 (eol) +{ + aspnetcore_5_0 = buildAspNetCore { + inherit icu; + version = "5.0.12"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/ad0a54ca-4b88-4762-a790-aebeaba6b9e7/0f796fb90696d078046d90d8a05c027e/aspnetcore-runtime-5.0.12-linux-x64.tar.gz"; + sha512 = "0529f23ffa651ac2c2807b70d6e5034f6ae4c88204afdaaa76965ef604d6533f9440d68d9f2cdd3a9f2ca37e9140e6c61a9f9207d430c71140094c7d5c33bf79"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/bfc8ae06-2830-4082-a09e-63b3c7134096/880a4712d4ba3491c88aa566553c4e8a/aspnetcore-runtime-5.0.12-linux-arm64.tar.gz"; + sha512 = "70570177896943613f0cddeb046ffccaafb1c8245c146383e45fbcfb27779c70dff1ab22c2b13a14bf096173c9279e0a386f61665106a3abb5f623b50281a652"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/06d71ed5-0755-40d6-8b8e-14a24b8a9cb7/47a8b4deda0deecf3658716b642c69bf/aspnetcore-runtime-5.0.12-osx-x64.tar.gz"; + sha512 = "bd9e7dd7f48c220121dde85b3acc4ce7eb2a1944d472f9340276718ef72d033f05fd9a62ffb9de93b8e7633843e731ff1cb5e8c836315f7571f519fdb0a119e1"; + }; + }; + }; + + runtime_5_0 = buildNetRuntime { + inherit icu; + version = "5.0.12"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/781b7ae6-166c-4114-97f8-926d2bf74d34/fe51479e3138d672c512ef0322be23d3/dotnet-runtime-5.0.12-linux-x64.tar.gz"; + sha512 = "32b5f86db3b1d4c21e3cf616d22f0e4a7374385dac0cf03cdebf3520dcf846460d9677ec1829a180920740a0237d64f6eaa2421d036a67f4fe9fb15d4f6b1db9"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/7c342ad2-2dae-471b-ae46-c0c820321c1f/a480ad8ca0bc826a48c9b1e56efd972b/dotnet-runtime-5.0.12-linux-arm64.tar.gz"; + sha512 = "a8089fad8d21a4b582aa6c3d7162d56a21fee697fd400f050a772f67c2ace5e4196d1c4261d3e861d6dc2e5439666f112c406104d6271e5ab60cda80ef2ffc64"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/8f990fa6-6b13-40ad-95f6-383391ff3d91/7531048d16c01efdf3885da367aa8b89/dotnet-runtime-5.0.12-osx-x64.tar.gz"; + sha512 = "a3160eaec15d0e2b62a4a2cdbb6663ef2e817fd26a3a3b8b3d75c5e3538b2947ff66eaddafb39cc297b9f087794d5fbd5a0e097ec8522ab6fea562f230055264"; + }; + }; + }; + + sdk_5_0 = buildNetSdk { + inherit icu; + version = "5.0.403"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/b77183fa-c045-4058-82c5-d37742ed5f2d/ddaccef3e448a6df348cae4d1d271339/dotnet-sdk-5.0.403-linux-x64.tar.gz"; + sha512 = "7ba5f7f898dba64ea7027dc66184d60ac5ac35fabe750bd509711628442e098413878789fad5766be163fd2867cf22ef482a951e187cf629bbc6f54dd9293a4a"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/91015c72-ce5a-4840-9e87-5bfa4bb80224/b39692ac418d790ff7a2e092eb07de98/dotnet-sdk-5.0.403-linux-arm64.tar.gz"; + sha512 = "6cc705fe45c0d8df6a493eb2923539ef5b62d048d5218859bf3af06fb3934c9c716c16f98ee1a28c818d77adff8430bf39a2ae54a59a1468b704b4ba192234ac"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/5ccdb916-531f-4064-84e8-5475b273a4de/80dcfa0c2eb528f8b0e7c313ed36f4f1/dotnet-sdk-5.0.403-osx-x64.tar.gz"; + sha512 = "70beea069db182cca211cf04d7a80f3d6a3987d76cbd2bb60590ee76b93a4041b1b86ad91057cddbbaddd501c72327c1bc0a5fec630f38063f84bd60ba2b4792"; + }; + }; + packages = { fetchNuGet }: [ + + ]; + }; +} diff --git a/pkgs/development/compilers/dotnet/versions/6.0.nix b/pkgs/development/compilers/dotnet/versions/6.0.nix new file mode 100644 index 000000000000..fd8b838d2ad5 --- /dev/null +++ b/pkgs/development/compilers/dotnet/versions/6.0.nix @@ -0,0 +1,166 @@ +{ buildAspNetCore, buildNetRuntime, buildNetSdk, icu }: + +# v6.0 (lts) +{ + aspnetcore_6_0 = buildAspNetCore { + inherit icu; + version = "6.0.8"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/5cc06c3a-4d8a-4fb2-8f7a-ecd23cd8c4e0/dd386c0e3a41ea54f459907c834acedf/aspnetcore-runtime-6.0.8-linux-x64.tar.gz"; + sha512 = "b74676ca0d2f47a95533739fd36977bb1552890a81820ee51b29b3d6514398f0952362417bbb31fad4bdf031803cb3e8d2aaf065dfb154a78a1b471a536d4abd"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/83695c9b-c954-459e-b9bf-2f1ac269e34e/1316ff4a6fe4c6916e7ecb3623d67cee/aspnetcore-runtime-6.0.8-linux-arm64.tar.gz"; + sha512 = "07babe85c8872ca303a17268b0d23c382a9ac49f8b923c45c496db039f6c01094303cd18cd31f964ba7369bb993c896eeadbb7e458a77d5b86992222b91db52c"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/0601cae2-aa41-4318-a996-36633cd641f3/ffc290161ae37b28894ff7465dd50c17/aspnetcore-runtime-6.0.8-osx-x64.tar.gz"; + sha512 = "73d3569c13965de927e9d1eb02ce7d31b44643335a351ddc6392be1a693837263287d9bc5e82a89f2456b7a9cf1bd6c217d9f98cf9fa8da1b6c820e9ddf43933"; + }; + aarch64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/7859a31f-74c9-4756-a9ab-f040550666ac/3c4ad4317e732436f8c092eb9cdb4168/aspnetcore-runtime-6.0.8-osx-arm64.tar.gz"; + sha512 = "a6cabc3b4c7350deb141e122c194c7eefaf99127cee726ee227e4218add7155b8decdb2a5cd217f757410e267f2370a78806c22a0294098f245105cea925a7b2"; + }; + }; + }; + + runtime_6_0 = buildNetRuntime { + inherit icu; + version = "6.0.8"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/5596ef6f-a174-4fba-aef1-99173e3f3c67/77edd755d605688885ca7114bc4f9ae9/dotnet-runtime-6.0.8-linux-x64.tar.gz"; + sha512 = "c776813bf87c25766b31a3a514d124d0526086ceea514a10f104d70ba435c91a6bd3c8bf10c6662b4df2b13ffcdf385518f3418e51d05cccec6a2cf2c26099de"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/866ce4df-8aaa-417d-ad81-26131a2b8734/7ba8391188bc194156ee7d82f494ee00/dotnet-runtime-6.0.8-linux-arm64.tar.gz"; + sha512 = "7cd60eda5219a6b882e53e85e2b6543dedc91605503ce8085f447835382fd1b6abd7c8810e0fd865ecaa33167cedf2a33884dd4eb2bdd2857fe69d509cd62a9c"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/1c11dcab-2b1b-4f89-88a8-32665c56a131/c1654a9f3d01805033b7fd8d505050e8/dotnet-runtime-6.0.8-osx-x64.tar.gz"; + sha512 = "8100003430b073e9f1f16910eef8af5a5ea806754a1818971ba15f4ba44e12455330334bd1488088880f7ed3ff67c2a4c4a3d8037f4202c95e6bc029806c8b15"; + }; + aarch64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/0b8a7b71-8f77-439b-a4d8-b4fd863466d3/7a852ca4536bdef2e63d9f5e98731777/dotnet-runtime-6.0.8-osx-arm64.tar.gz"; + sha512 = "99264f4e34e2b6e1a82f3716cce5753967f3386348593e7f51085d96dbec4acf1400a451e9320afbfb45a9b777df1f8bbed8e78d7c4810336f3d226bdfd4343f"; + }; + }; + }; + + sdk_6_0 = buildNetSdk { + inherit icu; + version = "6.0.400"; + srcs = { + x86_64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/cd0d0a4d-2a6a-4d0d-b42e-dfd3b880e222/008a93f83aba6d1acf75ded3d2cfba24/dotnet-sdk-6.0.400-linux-x64.tar.gz"; + sha512 = "8decbba0a6b09501daede52cbb5a9ae9e5f31ade201918c03efcd1b4cc345ec934f88321704ec3beb1f90f2204934be7259c76f66d9204cbdd15933582602763"; + }; + aarch64-linux = { + url = "https://download.visualstudio.microsoft.com/download/pr/901f7928-5479-4d32-a9e5-ba66162ca0e4/d00b935ec4dc79a27f5bde00712ed3d7/dotnet-sdk-6.0.400-linux-arm64.tar.gz"; + sha512 = "a21010f9e0e091bf0a4df9dfc4ec9893c056c2b07b10be093ea392a4fa5c8a38bad9535f66e570b45dc25165b685199fb729434b845bcfb35f8b79cceb22c632"; + }; + x86_64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/f52fb2f4-a0a3-4094-9f75-add72fcbc21e/d46eda7abf39baf278c0b0b040c7b81d/dotnet-sdk-6.0.400-osx-x64.tar.gz"; + sha512 = "35b80347e31baefdbd42e7434ffa0df1069367a4f8deec8b4051a44658b3ed531832f0e92357887a2f5a27c6433304537c846cdd4793aac874bace82a899053e"; + }; + aarch64-darwin = { + url = "https://download.visualstudio.microsoft.com/download/pr/0e45597f-a72d-42fa-95c5-85a811a7a8b6/1d77d2eeb8c08815edd1a6e9e9dfda4a/dotnet-sdk-6.0.400-osx-arm64.tar.gz"; + sha512 = "c3b016bc558f42fba29a8aebcc04be7b3aa3b0290755b6ee2fea1f48f921da78b86cb31913c4b7e32c0421b45a617b551ba593f98f349fae43ea1faa38348412"; + }; + }; + packages = { fetchNuGet }: [ + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.8"; sha256 = "1sxl6nsv8magamqbykdr6jnd9q6r1afavc7pzm2jmcqyxv121hv3"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.8"; sha256 = "1qksplqav4nrjbib6hrbdqg8rd8lxr63ljq57p4h7lbgw0wpxa5c"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.8"; sha256 = "049s2617s3aqcqxbvb0idrmjw6vnwjjfnqrn7s6hi2w4w5f4z10x"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "6.0.8"; sha256 = "0pphpvag4i0zq7c51r72b9zjlj726wv2hn1vxd1mdsj85f2q77zz"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "6.0.8"; sha256 = "00hhv36d8wjdhnz10jjdv3nikpd4x0sj6v2jfi5p3firl64p5wf2"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "6.0.8"; sha256 = "1lcvphg7s6iwh3dkl9c2c0h5mx9gsp0aic7v2xaqgaq3sz0jalnk"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.8"; sha256 = "1lmcy66m1yrm0ii1agydn8zmvydjf2sdvng5x07vda574shrr39h"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.8"; sha256 = "14q6sjbcs1xvd1lz670bnq4pgi1cgayih2bpsjbv33z6w1wshay5"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.8"; sha256 = "14968kh3c0028nyyxivx01wj1k6a6mk2wm4fk0sbh6p2g7wpaqdp"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "6.0.8"; sha256 = "1dmajf3hqs5njm6yd6g9vy72sndf93g4p6ghsjkxizgz46z3qsxh"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "6.0.8"; sha256 = "1cyczl8a4b3plb7f1w0jp06v65yd1fk7mcx2y1jr8qpcmxrad3gl"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.8"; sha256 = "1qcg7awjd9xf6bvn5wsbd8kiy3vf6iag8q2myzzzy5jj4azbl2wd"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "6.0.8"; sha256 = "1dm953nh7d1k9cpclxxf3831rlx739skrxxw1whqnczffd8rjfmd"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "6.0.8"; sha256 = "1g21mp68ljpvv6g4xgzihpfn96szchpny1h0g9g71bwbgp93aad8"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.8"; sha256 = "0gp93f4ch0h95wl30xbz60xn7i752hvjkiivn3q7wnkary2g8mpr"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.8"; sha256 = "1bdfpxs31x0a6cbb911vl3ncy26gsffgba3v598k6ki4662xlawv"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "6.0.8"; sha256 = "0w5pxahcgxr4826hv6b72aq60gpbbrj6va2hvj4gzi917dkqdb94"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "6.0.8"; sha256 = "03x0zz9ig1m78gmf2r8wny1y1ripyzsdxak6cqha1zl8gbf0bcck"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "6.0.8"; sha256 = "167kc0766ppkfrv66b0xg844cm7vj7q6p3bm695j8m0gakz71kx3"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.8"; sha256 = "0a0zrk6lcmbjyl0wkal9p0xw3n5qzvbc72by492vi3cwl8j6qv6d"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.8"; sha256 = "04l1smar1hrg0r5pzqa5580aw17jx4cbk7i2mrgj7yy2m86m3d4s"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.8"; sha256 = "0j1qdixwxj2bwgcfxf6fbs2krw6gcm7s9mcx41z9l9q4lq9qh1gc"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "6.0.8"; sha256 = "17ji5vjqw59dkrjqfrdbmwf318x9f61ch855l6z3099g84bp9nqk"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "6.0.8"; sha256 = "0c9pxqsi99m91c25n7j2pq9gmyl88k9bf4a5bisqv7v5w7mi2h9x"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.8"; sha256 = "1k8jh8s2rqyp7rr2vdwqfj35zkr77vnba4jnmgx5ank87z24vmhd"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "6.0.8"; sha256 = "1z5ja82jxmlndivxrm4abapg41zkgs5bjc7ks2azzn8znghksvya"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.8"; sha256 = "1654jcqp80i3gkasf9axnfrjnk8iaxkhgfkbrgv5fi5vz0lbgi2h"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.8"; sha256 = "0999pi4dyr4l7grrw47xip8prqsc3inpz9gkxjd34dzi7wcpfy47"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.8"; sha256 = "040c6505idayhym3j90ixw85h4l6m23nlwp5g9zf4p9dl2mfgicv"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "6.0.8"; sha256 = "0qd9pz33wibc3db2sn452wd5vipzq6kf7gclc6lfzz4cavlzqxc4"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "6.0.8"; sha256 = "0qzkybsfx4pps97kzyy8325brljdi4h9vqapcgyfb2rmkvvfqsby"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "6.0.8"; sha256 = "0fxp7zz6pjxhmasy7xza9gi83zag81b2gpp08cam69kjn1razlq1"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.8"; sha256 = "01fci2411qhi6gxp0jddmy4pb248n08ng8wxap37ysh5zc1qmjcm"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.8"; sha256 = "06ahjlsr43vx3dnw28fpkk2vmagrrn1m8jds8pdgj44jpn57lc8r"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.8"; sha256 = "0bz6qja5lbi1a7iqkbin4p97dinn9iykw0x0nmmjs4ihx33ic1jr"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "6.0.8"; sha256 = "080jaw5y9zwfsj3b0ziw3s75whankyn99q5sjhq7pmpi6763xw48"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "6.0.8"; sha256 = "0wmb4jx6l9dg17ng5cf4k3s54s08lf220gzphdgrcl0w1jihg7n5"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.8"; sha256 = "067blnpwccsfp201803yrb4j4gp9vzkppgc4h7s13dxjz78cf7ss"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "6.0.8"; sha256 = "1ws1sbsly7n7p6p5k057m063vk5by88fxfkkqw5i61vh6iwkcbnd"; }) + (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "04dknyln95q0qx0h374d3xxs5rwh4sm0j489p370bkv0czl0ha4b"; }) + (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "1rav7v08nc01b443cy58gk32n6d30zkjx99m8hpsz17vcxw8jiqq"; }) + (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1g03lm7ckqa67m9l701lmw6pwxym8l390zlf8km02gfq0x1g2fyj"; }) + (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "1wb9db76nnm9sr2kj8q53j8wamybkrk7x6gwqw17xk6cxq2fgxq4"; }) + (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "02l7ahcrhq8lnxnf323d6qk3saha73d2sbmgjmp1rcy5q2mqly05"; }) + (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "0cinkimphbrpjmz38acrmjqr9md4vi7ad7r757gm363z0hal2783"; }) + (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1dr2a2bgia8i5pwk8b8z3jwlbkshh9pb8hhzbkhjmc56sx49h0lx"; }) + (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "1kj8a9l65slgb3r45b8x5qnhcs80bx8437cfisyfbhjkw17i5cgg"; }) + (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "1v06qri2f6h2ndbaydgsnpas6nfhvi58yx68v3w4gdbdablnycvb"; }) + (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "0vskm16p0aj7jlwsp5mfbilszwvfaglp6p69196v7kdqmskwxw8c"; }) + (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1j1j81az67rwdnqfapjnvxx35fjr1n035pwb2nlg6kz2r2mfw4ph"; }) + (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "0sfqc7v6zi3ma446jgrd4bjfjl0d48wpyb40wc1frcsvms9zskwr"; }) + (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "0sp90fz8qyz7gn2fmgavsq909dpk44ymq3cs1mxdwfp3v9dssmyh"; }) + (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "08k90llf2p1bg62w1mk7vv5lk8s4ymfq5j6hdl1al5an4gl7niif"; }) + (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1akvfw5p9s7w9jr09s20ph4x82kfbabsbd5dafpvakd4zw7cawfx"; }) + (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "0r4fbkjqy1g9cmaa55rpbsphslcmlpzmag5w47kmq4hxz0ll68d2"; }) + (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "015dadmlghkbvxz7d7m3fanrq2lqls094immxdv0laxl3smkg7pw"; }) + (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "0gnnpxv0pnbrsx4zf28agwrgra7y3zm0z4lsr09i0wvrz97n65p7"; }) + (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "136kjcl98n019764sy3pck9v4pmrz6q68qi8a2cdqm6hw7canc05"; }) + (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "0ibrah9jzcs7i27z9alllg1d46dx0px0m3mgvnsg34zhbpqfbilp"; }) + (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "0i4vmdgrvnr9fkmk2h88h1x37m4g4ksz7c24l585q6sg0343p0hp"; }) + (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "0rpb7py9j40jqhi9ndfpvspdkrbl4vwqq8r6hva7kfjva61x9ky2"; }) + (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "06jf5qv6ldsapbjd8g01pwm0yw20w7slpi9yrgxr8q2y0f9fqnhy"; }) + (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "1mj8gzvnk5f16vchwc94bp6726m6n8j6bi9d3rzbly8k63xdnnv3"; }) + (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "05491m5xzd6sbbpad6v7z1apkf00ip13sl23d9r2g5hv22i61qr9"; }) + (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "1wsafi273xsh9q9cbfq123p33k2kgvrqz7hvkj4hlshl0dzlky7z"; }) + (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1661dn6v40g8yzwxdfskv0llvwf422zs5b5ndrhbs15cihh10axw"; }) + (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "17dicgyc24x4krjy37j36cln0770cl52ihyyrg40n8l1b6q3hcdx"; }) + (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "0pjhfxkzbgf0zxibrwrkzjhqz163qhczc476pzvd5fy9cxcdnkl5"; }) + (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "145zkswksir8q0n83jw1kv2xsg5x4sf6w80hyynfjmpfhv7klmcw"; }) + (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1r473bl4g9xgn69q9jp1mfxrvllsg7a2z4lan7nv58anwsz1bfyl"; }) + (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "1kcx09jsklbnjl6mhdarg0c2j84553q6zj9bs73n70idczzn6iyp"; }) + (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "1g7vb2dba007aqw51k1ab962d63xh549zd3j9jsrnrmwpbk7yp58"; }) + (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "0p2rv3n9pkv27q20jmps4xl29dmraqc1wgcyw78wm5pgz1717wr4"; }) + (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "0153c9n7zx4cpxwa71yddgjpy021c98r7h2w6mxg4fqnb8hrk23b"; }) + (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "199qscm2is4xrbhnvyjp0lb4wwgw71c436vfxn7g6qmq7c4y1cyz"; }) + (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "1h5ndqz2djp21d3qj2rqcf41z7y6njb5gjflvhzgjgpqb2xmsqaz"; }) + (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "0d10q75a645gdfk2krcwyhj3ncivmgbdkr1j7p7varl38ml1631i"; }) + (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1lb78gjg28r3s0wwjsz3hvannlhqafc5jf8aqlyfk6w92c7p9y3z"; }) + (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "05nay2zf8fp2y2ki232pkgwb29119fkhhg3z5dgbqn44dpsk7x1h"; }) + (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "14yn29p83il7jympnnl34srqcygvlzn797702vg1qfdjs18iy6j9"; }) + (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "1d8z4yk06qcqzfhs1424bwvvpy07m4dafilgxl3qlnynfb2i4jzi"; }) + (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1np746181wn7mzf424qg4j68bs7nwr2iylq18hi1jcl2ysrdcfn3"; }) + (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "1b4qb36sgqbp5mpfni3iz2qs2kvvj341xn6w2rncvjajvgl73mpx"; }) + (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "19ha49v8wfn48v011jhrg9mlpalmb254rvkv409s4zj089612nfc"; }) + (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "1g6raxhpx7vlwl68xcw4r0xjra95zcbwifnj95w21wzv0nndna91"; }) + (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "1imhc4a3yb9q0cslp0mnsvrvjm152kmj8iiw58c9j8g8sypxcw5g"; }) + (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "1ynn1apan8czndb4n8pdvday2jw6jc19zx8nsla8rv6m7q3vc23r"; }) + (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "6.0.8"; sha256 = "03xkg1yg2h4k2y774vc438ahs0mlrbgh0w7nxyzn15pvlp95yyc6"; }) + (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "6.0.8"; sha256 = "0dgcnlsmjhqz8m2y8lpyd0s626pj48whb8fzsxv51l125acinsn7"; }) + (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.8"; sha256 = "05xisaphkmpfx2w1irb7vhc0f2rfycxkicbyjhgmpqq9cbdxg09l"; }) + (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.8"; sha256 = "1p5h36si87c461k854ky7hn5h5354mh9cprlkf6k814bhi4hjx7y"; }) + ]; + }; +} diff --git a/pkgs/development/compilers/inklecate/default.nix b/pkgs/development/compilers/inklecate/default.nix index d8276761f585..101c77a1c965 100644 --- a/pkgs/development/compilers/inklecate/default.nix +++ b/pkgs/development/compilers/inklecate/default.nix @@ -25,6 +25,7 @@ buildDotnetModule rec { executables = [ "inklecate" ]; dotnet-runtime = dotnetCorePackages.runtime_3_1; + dotnet-sdk = dotnetCorePackages.sdk_3_1; meta = with lib; { description = "Compiler for ink, inkle's scripting language"; diff --git a/pkgs/development/tools/continuous-integration/github-runner/default.nix b/pkgs/development/tools/continuous-integration/github-runner/default.nix index c0f261ea4925..aa1941fa3d19 100644 --- a/pkgs/development/tools/continuous-integration/github-runner/default.nix +++ b/pkgs/development/tools/continuous-integration/github-runner/default.nix @@ -21,14 +21,15 @@ , nuget-to-nix }: let + fetchNuGet = { pname, version, sha256 }: fetchurl { + name = "${pname}.${version}.nupkg"; + url = "https://www.nuget.org/api/v2/package/${pname}/${version}"; + inherit sha256; + }; + nugetSource = linkFarmFromDrvs "nuget-packages" ( - import ./deps.nix { - fetchNuGet = { pname, version, sha256 }: fetchurl { - name = "${pname}.${version}.nupkg"; - url = "https://www.nuget.org/api/v2/package/${pname}/${version}"; - inherit sha256; - }; - } + import ./deps.nix { inherit fetchNuGet; } ++ + dotnetSdk.passthru.packages { inherit fetchNuGet; } ); dotnetSdk = dotnetCorePackages.sdk_6_0; diff --git a/pkgs/tools/games/opentracker/default.nix b/pkgs/tools/games/opentracker/default.nix index 33dc69ff4e68..8140b34c1e97 100644 --- a/pkgs/tools/games/opentracker/default.nix +++ b/pkgs/tools/games/opentracker/default.nix @@ -25,13 +25,14 @@ buildDotnetModule rec { }; dotnet-runtime = dotnetCorePackages.runtime_3_1; + dotnet-sdk = dotnetCorePackages.sdk_3_1; + nugetDeps = ./deps.nix; projectFile = "OpenTracker.sln"; executables = [ "OpenTracker" ]; doCheck = true; - dotnet-test-sdk = dotnetCorePackages.sdk_3_1; nativeBuildInputs = [ autoPatchelfHook