runtime: dotnet-sdk-2.1 package for OpenSUSE is broken
From @pavelbraginskiy on July 26, 2018 2:31
I don’t know if this is the correct repo for this issue, but I can’t think of a better place.
Steps to reproduce
Attempt to install .NET Core on OpenSUSE Tumbleweed following the instructions at https://www.microsoft.com/net/learn/get-started-with-dotnet-tutorial
Expected behavior
$ sudo zypper install dotnet-sdk-2.1
[sudo] password for root:
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 6 NEW packages are going to be installed:
aspnetcore-runtime-2.1 dotnet-host dotnet-hostfxr-2.1 dotnet-runtime-2.1 dotnet-runtime-deps-2.1 dotnet-sdk-2.1
6 new packages to install.
Overall download size: 163.1 MiB. Already cached: 0 B. After the operation, additional 163.1 MiB will be used.
Continue? [y/n/...? shows all options] (y):
Actual behavior
$ sudo zypper install dotnet-sdk-2.1
[sudo] password for root:
Loading repository data...
Reading installed packages...
Resolving package dependencies...
Problem: nothing provides libicu52_1 needed by dotnet-runtime-deps-2.1-2.1.2-1.x86_64
Solution 1: do not install dotnet-sdk-2.1-2.1.302-1.x86_64
Solution 2: break dotnet-runtime-deps-2.1-2.1.2-1.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or cancel [1/2/c] (c): 2
Resolving dependencies...
Resolving package dependencies...
The following 6 NEW packages are going to be installed:
aspnetcore-runtime-2.1 dotnet-host dotnet-hostfxr-2.1 dotnet-runtime-2.1 dotnet-runtime-deps-2.1 dotnet-sdk-2.1
6 new packages to install.
Overall download size: 163.1 MiB. Already cached: 0 B. After the operation, additional 163.1 MiB will be used.
Continue? [y/n/...? shows all options] (y):
Environment data
dotnet --info
output:
FailFast:
Couldn't find a valid ICU package installed on the system. Set the configuration flag System.Globalization.Invariant to true if you want to run with no globalization support.
at System.Environment.FailFast(System.String)
at System.Globalization.GlobalizationMode.GetGlobalizationInvariantMode()
at System.Globalization.GlobalizationMode..cctor()
at System.Globalization.CultureData.CreateCultureWithInvariantData()
at System.Globalization.CultureData.get_Invariant()
at System.Globalization.CultureInfo..cctor()
at System.StringComparer..cctor()
at System.AppDomain.InitializeCompatibilityFlags()
at System.AppDomain.Setup(System.Object)
[1] 3049 abort (core dumped) TERM=xterm dotnet --info
dotnet --info
output after setting System.Globalization.Invariant:
.NET Core SDK (reflecting any global.json):
Version: 2.1.302
Commit: 9048955601
Runtime Environment:
OS Name: opensuse-tumbleweed
OS Version: 20180723
OS Platform: Linux
RID: linux-x64
Base Path: /usr/share/dotnet/sdk/2.1.302/
Host (useful for support):
Version: 2.1.2
Commit: 811c3ce6c0
.NET Core SDKs installed:
2.1.302 [/usr/share/dotnet/sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.2 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.2 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.2 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download
Copied from original issue: dotnet/cli#9735
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Reactions: 2
- Comments: 23 (10 by maintainers)
Installing on LEAP is broken again, and I’d expect on TW also based on what has been posted in this Issue. The maintainers of the the install and package should consider using something like the Open Build Service (https://openbuildservice.org/) to build packages so that with a common source packages can be targeted at numerous distros and distro versions. Package builds can be automated so that for instance rolling releases like Tumbleweed are created automatically for each distro release.
I’m reluctant to produce an installer for Tumbleweed. Its rolling nature would have us chasing our tails keeping up with dependencies. Installing from tar.gz should be the plan but even that does not work at the moment. The libicu version available on Tumbleweed is libicu-suse61_1 and even after installing that, dotnet fails to locate what it believes is a valid ICU package.