-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for Fedora 33 #5018
Comments
Done via dotnet/runtime#32752 (master, 5.0) dotnet/corefx#42871 (release/3.1) and dotnet/corefx#42872 (release/2.1) |
I'm using Fedora 33. This is what I see from
The packages without the version suffix are also for
In case it's useful, the following is the output of
|
If you follow the instructions on release notes are you still installing 3.1.109 instead of .NET 5? |
@rbhanda is this a case of the "default" feeds? Fedora 32 had Core 3.1 in the default feed (no instructions given to include a microsoft specific package feed), is it not available in the default feed for 33? |
https://www.reddit.com/r/Fedora/comments/jt0zvf/how_to_get_net_5_sdk_in_fedora_33/ has a similar issue. It seems like the Microsoft documentation says "use the Fedora packages" which is a good idea, except when the Fedora packages are not ready yet - basically what happened with 5.0 😞 In that case, perhaps the docs can point to https://packages.microsoft.com/fedora/33/prod/ as the alternate mechanism? |
The instructions on release notes doesn't ask me to add Microsoft's repo into I'm fine adding Microsoft's repo config, since the |
@omajid Is this the same case with RHEL? @LukeXuan @rbhanda I'm updating the docs via dotnet/docs#21526 |
Pretty much. RHEL 8 has .NET 5 packages, except they are old (5.0 Preview 8 right now). RHEL 7 doesn't have any .NET 5 packages. It's the same underlying issue as Fedora since they all use the same source (https://github.com/dotnet/source-build) as the mechanism for building .NET (Core) packages. If customers want to use .NET 5 right now on CentOS, Fedora or RHEL, they should probably get it from Microsoft because the other versions are missing or too old. We (Red Hat and Microsoft) are trying to fix this but it will take a while (probably a few weeks) to resolve completely. |
Thanks I'll update these too |
I'm currently on Fedora 33 but I work on a lot of projects targeting .NET Core 2.1. Now I have the How can I best get Edit: answer seems to be at #4655 (comment) (for anyone coming after me). Now I have to tinker some more with repositories and yum configuration... I hope Microsoft can sort this mess out - I'm sorry for calling it that, but this has not exactly been a pleasant experience. Especially considering that the documentation does not seem to mention any of these caveats, and on top of that 2.1 is officially supported on Fedora 33. Edit 2:
|
@rbhanda Looks like |
3.1 packages should be available on https://packages.microsoft.com/fedora/33/prod/ now |
@rbhanda thanks for the swift intervention, but alas I still have the same problem. If you open the URL in a browser you get an index, and indeed |
@mario-d-s I have updated the prod feed. https://packages.microsoft.com/fedora/33/prod/dotnet-targeting-pack-3.1.0-x64.rpm is now available |
@rbhanda Hi, by the way, this ticket was also similarly vague in what the "support" means. Binary release is not, never was, and never will be a proper support. We ship packages in Fedora proper, that is proper "support." Those are a few months after binary release due to the source-build lag. (And 2.1 is just completely incompatible with open source type of publishing, so that's not gonna happen at all.) Especially with the shift of .NET 6 further towards open source development and source-build gaining ever increasing importance, the wording with these kinds of tracking issues should also shift. Binary release should not be considered proper release, or "support." |
Thanks for the fix. I was able to install To be clear: as a professional .NET developer on Linux, I specifically chose Fedora because it is officially supported by .NET and I like it by far the most between the other choices. But for "officially supported", I found this experience to be quite a bump in the road. The docs are not clear on what is in the official Fedora repo and what needs the MS repo. And even if you do the MS repo, you are going to run into conflicts with the official repo that are not documented either. I would appreciate if the team still works to smoothen this out further to have a good out-of-the-box experience because I can imagine a lot of people are going through the same trouble. |
@mario-d-s 2.1 is too old for us to backport A LOT of work that went into being able to properly build dotnet from source. Long story short is, that 2.1 can not be built from source code, and therefor it can not be packaged in Fedora. Fedora ships 3.1 and will ship 5.0 (which was also not possible to build from source until 3 days ago) Everything around these versions is (will be) in Fedora, you do not need any additional repositories. Simply type |
@mario-d-s the recommended way is to not use MS repositories at all, for any version. If you need both 3.1 and 2.1 you can use our copr repository for 2.1 which is compatible with Fedora proper and 3.1 and will work side by side. The end user can actually google all this - if they only click on the links that say |
@RheaAyase thanks for the additional info! I will follow your recommendation of switching to the COPR repository. Indeed googling a bit more I could have found this too. I was convinced however that it was Microsoft/.NET that should be supporting Fedora and not the other way around. Goes to show how much hard work the Fedora people are actually doing and it all adds up to what a great distro it is indeed. Thanks for that! |
5.0 is also in the mentioned copr now |
I still have some conflicts with the Fedora 33 packages if I try to have both .NET Core 3.1 and .NET 5.0 on my machine (as explained here: https://bugzilla.redhat.com/show_bug.cgi?id=1847206#c9) Since this issue is closed, does it mean I just need to wait until the Microsoft repo gets updated? Or do I need to do something on my machine so that I can install both? |
@MightyCreak this is not a bug, it's a well known feature that MS packages are not compatible with open source builds. And there is nothing we can do about it on the open source side. One should simply not combine these two because they're built in completely different way (open source vs binary magic) and they do not install the same way either. There are two possible solutions should you wish to use 3.1 and 5.0 at the same time:
|
That does not work on my machine. There seems to be an issue with the packages priority. If I do this:
Then I don't have the asp.net core 3.1 runtime, as you can see here I only have the .Net Core and ASP.NET Core 5.0.1:
Here's the list of dotnet and aspnet packages installed:
As you can see, there's a mix of
There might be a way to force the MS repo for all the .NET packages, but I don't know how to do that. |
Like I said. If you want to use the worse of the two options (a) you need to edit the repo file and increase the priority. (Add
No you actually do end up having both. Long story short HOST is the executable and is always provided from the highest version of dotnet, so in theory even if you were to install dotnet-sdk-3.1 alone, you would still have HOST package from the 5.0 - it is neither the sdk nor the runtime.
Either way though, you should NEVER install packages from two different sources at the same time. It doesn't matter if it's dotnet, golang, or google chrome. It will always cause problems. |
I might end up having both, but VS Code didn't want to compile and run my .NET Core 3.1 projects. So, as an end user, it wasn't working.
I agree 200% and that's what I wanted to achieve. I simply didn't know how to prevent this. I didn't know about the In the end, I tried with
|
Because these are proprietary binary blobs built by unknown magic shipped with unknown licensed code inside :P Fedora packaging requirements guarantee that everything is built from known source, on Fedora and for Fedora. And even all the tools used to build it are also built from known source on Fedora and for Fedora. Which is why it's so difficult to build .NET, historically very closed off platform, the open source way. Even though the source is available, all the tooling used wasn't open until very recently and even now it always lags behind Microsoft's releases. |
Aaaah, makes much more sense now! 😉 |
Is it planned to add both .net core 3.1 and .net 5.0 in official Fedora packages? |
3.1 has been in Fedora for really long time (that's why there are conflicts with MS repo) and 5.0 is tracked here: #5596 |
@RheaAyase Subscribed! Thank you! |
This issue is created to track progress for the work to enable Fedora 33 support for .NET Core 3.1 and .NET 5.
Product and Test updates
Release team:
Document updates:
The text was updated successfully, but these errors were encountered: