diff --git a/1000-dotnet-anolis-add-distro.patch b/1000-dotnet-anolis-add-distro.patch
new file mode 100644
index 0000000000000000000000000000000000000000..344982bc1ae803ac176adffa01fb11c8c8d1d6f3
--- /dev/null
+++ b/1000-dotnet-anolis-add-distro.patch
@@ -0,0 +1,91 @@
+diff -Nur dotnet-v5.0.212-SDK/src/dotnet-runtime.3065735be79d6b7d17e8e3a723115810b43c9b3a/src/libraries/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props dotnet-v5.0.212-SDK/src/dotnet-runtime.3065735be79d6b7d17e8e3a723115810b43c9b3a.new/src/libraries/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props
+--- dotnet-v5.0.212-SDK/src/dotnet-runtime.3065735be79d6b7d17e8e3a723115810b43c9b3a/src/libraries/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props 2022-03-01 10:27:04.000000000 +0800
++++ dotnet-v5.0.212-SDK/src/dotnet-runtime.3065735be79d6b7d17e8e3a723115810b43c9b3a.new/src/libraries/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props 2022-03-11 13:51:34.255987938 +0800
+@@ -25,6 +25,14 @@
+ 21;22;23;24;25;26;27;28;29
+
+
++
++ rhel
++ x64;arm64
++ 8
++ true
++ false
++
++
+
+ linux
+ x64
+@@ -249,6 +257,6 @@
+ RuntimeJson="runtime.json"
+ CompatibilityMap="runtime.compatibility.json"
+ RuntimeDirectedGraph="$(PackageReportDir)$(Id)$(NuspecSuffix)-runtime.json.dgml"
+- UpdateRuntimeFiles="$(UpdateRuntimeFiles)" />
++ UpdateRuntimeFiles="true" />
+
+
+--- dotnet-v5.0.212-SDK/src/dotnet-runtime.3065735be79d6b7d17e8e3a723115810b43c9b3a/eng/native/init-distro-rid.sh 2022-05-17 09:26:01.940587615 +0800
++++ dotnet-v5.0.212-SDK/src/dotnet-runtime.3065735be79d6b7d17e8e3a723115810b43c9b3a/eng/native/init-distro-rid.sh.new 2022-05-17 09:25:10.434811640 +0800
+@@ -41,7 +41,7 @@
+ # We have forced __PortableBuild=0. This is because -portablebuld
+ # has been passed as false.
+ if (( isPortable == 0 )); then
+- if [ "${ID}" = "rhel" ]; then
++ if [ "${ID}" = "rhel" ] || [ "${ID}" = "anolis" ]; then
+ # remove the last version digit
+ VERSION_ID="${VERSION_ID%.*}"
+ fi
+--- dotnet-v5.0.212-SDK/src/diagnostics.47296ca69bb66180c132f3b16667f904dfc7c6c7/eng/init-distro-rid.sh 2022-03-01 10:27:48.000000000 +0800
++++ dotnet-v5.0.212-SDK/src/diagnostics.47296ca69bb66180c132f3b16667f904dfc7c6c7/eng/init-distro-rid.sh.new 2022-05-17 11:28:26.290612114 +0800
+@@ -51,7 +51,7 @@
+ # We have forced __PortableBuild=0. This is because -portablebuld
+ # has been passed as false.
+ if (( ${isPortable} == 0 )); then
+- if [ "${ID}" == "rhel" ]; then
++ if [ "${ID}" == "rhel" ] || [ "${ID}" == "anolis" ]; then
+ # remove the last version digit
+ VERSION_ID=${VERSION_ID%.*}
+ fi
+--- dotnet-v5.0.212-SDK/src/dotnet-sdk.983ff3c3e84516a257537c7f26c3e3d44b08afbe/src/Cli/Microsoft.DotNet.Cli.Utils/RuntimeEnvironment.cs 2022-03-01 10:27:31.000000000 +0800
++++ dotnet-v5.0.212-SDK/src/dotnet-sdk.983ff3c3e84516a257537c7f26c3e3d44b08afbe/src/Cli/Microsoft.DotNet.Cli.Utils/RuntimeEnvironment.cs.new 2022-05-17 12:21:56.629862215 +0800
+@@ -211,7 +211,7 @@
+ lastVersionNumberSeparatorIndex = distroInfo.VersionId.IndexOf('.', lastVersionNumberSeparatorIndex + 1);
+ }
+
+- if (lastVersionNumberSeparatorIndex != -1 && (distroInfo.Id == "rhel" || distroInfo.Id == "alpine"))
++ if (lastVersionNumberSeparatorIndex != -1 && (distroInfo.Id == "rhel" || distroInfo.Id == "alpine" || distroInfo.Id == "anolis"))
+ {
+ distroInfo.VersionId = distroInfo.VersionId.Substring(0, lastVersionNumberSeparatorIndex);
+ }
+--- dotnet-v5.0.212-SDK/src/arcade.6eec4404c2df5bfa46e5da52383c881c5cca3a9f/src/Microsoft.DotNet.XUnitConsoleRunner/src/common/AssemblyResolution/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs 2022-03-01 10:26:37.000000000 +0800
++++ dotnet-v5.0.212-SDK/src/arcade.6eec4404c2df5bfa46e5da52383c881c5cca3a9f/src/Microsoft.DotNet.XUnitConsoleRunner/src/common/AssemblyResolution/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs.new 2022-05-17 12:36:21.524546024 +0800
+@@ -131,7 +131,7 @@
+ // Handle if VersionId is null by just setting the index to -1.
+ int minorVersionNumberSeparatorIndex = distroInfo.VersionId?.IndexOf('.') ?? -1;
+
+- if (distroInfo.Id == "rhel" && minorVersionNumberSeparatorIndex != -1)
++ if ((distroInfo.Id == "rhel" || distroInfo.Id == "anolis") && minorVersionNumberSeparatorIndex != -1)
+ {
+ distroInfo.VersionId = distroInfo.VersionId.Substring(0, minorVersionNumberSeparatorIndex);
+ }
+--- dotnet-v5.0.212-SDK/src/dotnet-runtime.3065735be79d6b7d17e8e3a723115810b43c9b3a/src/installer/corehost/cli/hostmisc/pal.unix.cpp 2022-05-17 14:17:31.131811793 +0800
++++ dotnet-v5.0.212-SDK/src/dotnet-runtime.3065735be79d6b7d17e8e3a723115810b43c9b3a/src/installer/corehost/cli/hostmisc/pal.unix.cpp.new 2022-05-17 16:16:25.407854400 +0800
+@@ -652,6 +652,7 @@
+ pal::string_t normalize_linux_rid(pal::string_t rid)
+ {
+ pal::string_t rhelPrefix(_X("rhel."));
++ pal::string_t anolisPrefix(_X("anolis."));
+ pal::string_t alpinePrefix(_X("alpine."));
+ size_t lastVersionSeparatorIndex = std::string::npos;
+
+@@ -659,6 +660,10 @@
+ {
+ lastVersionSeparatorIndex = rid.find(_X("."), rhelPrefix.length());
+ }
++ else if (rid.compare(0, anolisPrefix.length(), anolisPrefix) == 0)
++ {
++ lastVersionSeparatorIndex = rid.find(_X("."), anolisPrefix.length());
++ }
+ else if (rid.compare(0, alpinePrefix.length(), alpinePrefix) == 0)
+ {
+ size_t secondVersionSeparatorIndex = rid.find(_X("."), alpinePrefix.length());
diff --git a/dotnet5.0.spec b/dotnet5.0.spec
index ceb46267e60ded5093b5112e632445196fcb4960..2bbb5104068da419585c9c8dbe31bdf59a823b4c 100644
--- a/dotnet5.0.spec
+++ b/dotnet5.0.spec
@@ -1,4 +1,3 @@
-%define anolis_os_version %(source /etc/os-release; echo ${VERSION})
%define anolis_release .0.1
%bcond_with bootstrap
@@ -22,10 +21,10 @@
# until that's done, disable LTO. This has to happen before setting the flags below.
%define _lto_cflags %{nil}
-%global host_version 5.0.14
-%global runtime_version 5.0.14
+%global host_version 5.0.15
+%global runtime_version 5.0.15
%global aspnetcore_runtime_version %{runtime_version}
-%global sdk_version 5.0.211
+%global sdk_version 5.0.212
%global templates_version %{runtime_version}
#%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }')
@@ -54,7 +53,6 @@
%global runtime_arch arm64
%endif
-%global runtime_id anolis.%{anolis_os_version}-%{runtime_arch}
%{!?runtime_id:%global runtime_id %(. /etc/os-release ; echo "${ID}.${VERSION_ID%%.*}")-%{runtime_arch}}
Name: dotnet5.0
@@ -75,6 +73,8 @@ Patch1: source-build-remove-test-references-from-patches.patch
# Disable telemetry by default; make it opt-in
Patch500: sdk-telemetry-optout.patch
+Patch1000: 1000-dotnet-anolis-add-distro.patch
+
%if 0%{?fedora} > 32 || 0%{?rhel} > 8
ExclusiveArch: aarch64 x86_64
%else
@@ -343,6 +343,8 @@ pushd src/dotnet-sdk.*
%patch500 -p1
popd
+%patch1000 -p1
+
%ifnarch x86_64
mkdir -p artifacts/obj/%{runtime_arch}/Release
cp artifacts/obj/x64/Release/PackageVersions.props artifacts/obj/%{runtime_arch}/Release/PackageVersions.props
@@ -519,9 +521,13 @@ rm -rf %{buildroot}%{_libdir}/dotnet/packs/NETStandard.Library.Ref/2.1.0
%changelog
-* Thu Feb 10 2022 Ma Hailiang - 5.0.211-1.0.1
+* Fri Mar 11 2022 - 5.0.212-1.0.1
- Fix sdk suffix for Anolis OS
+* Thu Mar 03 2022 Omair Majid - 5.0.212-1
+- Update to .NET SDK 5.0.212 and Runtime 5.0.15
+- Resolves: RHBZ#2060496
+
* Fri Jan 28 2022 Omair Majid - 5.0.211-1
- Update to .NET SDK 5.0.211 and Runtime 5.0.14
- Resolves: RHBZ#2047767
diff --git a/download b/download
index c67a62de4cca48caf4deabf83be9d703ac989557..08b726920428d1b5627a74412269757634ac43fd 100644
--- a/download
+++ b/download
@@ -1 +1 @@
-2adc00545a3e2c233de4a9a4addd1722 dotnet-v5.0.211-SDK.tar.gz
+9c5d3fa8dd1b67afd08d67e3384ca6c9 dotnet-v5.0.212-SDK.tar.gz