#496 Improving the "Third-Party Repositories" dialog
Closed: Won't fix by catanzaro. Opened by hasshu.

Currently, the software page of GNOME Initial Setup allows the user to enable the third-party repositories ("TPR" for short), but offers no control over what gets enabled – it's either all or nothing. There's also no way to see what the TPR even comprise without immediate Internet access. As an end user, I believe there's room for improvement.

On top of that, as some of you may know, there's an ongoing issue with Cisco's geo-blocking requests to its OpenH264 repository (a third-party one, properly speaking) from certain locations, which makes Fedora Linux impossible to update or even install for some users.

To solve all of the above – and assuming the following is feasible – I propose moving the TPR page to Anaconda, and replacing the simple toggle it currently has with an interactive table. For example...

┌───┬─────────────────────┬───────┬──────────┐
   Repository ^         Type   Vendor    
├───┼─────────────────────┼───────┼──────────┤
[ ]PyCharm (Copr)       dnf    phracek   
[ ]Flathub              flatpakFlathub   
[ ]Google Chrome        dnf    Google    
[ ]NVIDIA display driverdnf    RPM Fusion
[V]OpenH264             dnf    Cisco     
[ ]Steam                dnf    RPM Fusion
└───┴─────────────────────┴───────┴──────────┘

Note that OpenH264 remains enabled by default, being important for legal reasons.

As far as I can tell, implementing the proposed changes would require:

  1. Adding a way to toggle individual repositories to fedora-third-party (or delegating that to dnf instead).

  2. Moving the OpenH264 repo under the third-party umbrella (where it belongs), while keeping it enabled by default.

  3. Removing the software page of GNOME Initial Setup (and probably the GNOME Software dialog), and adding a TPR page to Anaconda.

When all is said and done, I believe it would result in improved UX, consolidate the TPR dialog for all the editions and spins, and finally solve the Cisco/OpenH264 issue for the affected Fedora users.

Let me know what you think.


We're probably not going to do any of that.

  1. This is something that has been hard to get GNOME upstream to consider
  2. This is technically a first-party repo, delivered by a third party, so we're not going to move it
  3. This is not going to happen because there are no resources for Anaconda to do any development of any kind to extend its capabilities, and our general focus has been moving toward shifting stuff into the first boot rather than into the installer anyway.

I'd say the UI is too complicated. If we put this anywhere other than the Software Sources dialog in GNOME Software, then it has to be dead simple and not expose technical terminology.

Having special RPM repos for PyCharm, Google Chrome, and possibly also Steam is probably no longer useful. I think we only really need Flathub, OpenH264, and NVIDIA.

Metadata Update from @catanzaro:
- Issue tagged with: meeting

@ngompa

  1. Are there any discussions on the matter you could link? What's the rationale?

  2. As far as I know, the packages are built on Fedora's infrastructure, but hosted on that of a third party (i.e., Cisco), and hence are subject to the latter's whims – not something I would call a first-party repo by any stretch of the imagination. But do correct me if I'm missing something.

  3. Understandable.

@catanzaro

I'd say the UI is too complicated. If we put this anywhere other than the Software Sources dialog in GNOME Software, then it has to be dead simple and not expose technical terminology.

Well, that was just an example; it also could be hidden behind a button. Also, the current implementation is arguably worse – for both novice and power users: the former may not even know what a repository is, while the latter are likely to prefer having a more granular degree of control.

Having special RPM repos for PyCharm, Google Chrome, and possibly also Steam is probably no longer useful. I think we only really need Flathub, OpenH264, and NVIDIA.

I can't comment on PyCharm, but if you mean that Chrome and Steam might be replaced by flatpaks, then it's a bad idea: Chromium-based browsers cannot be Flatpak'ed without compromising their security; as for Steam, the Flathub build is (barely) maintained by a bunch of randos, and has numerous issues specific to it, like forcing you to mess with permissions just to add a drive.

Are there any discussions on the matter you could link? What's the rationale?

Unfortunately nothing that was written in text. There is an in-principle agreement from the Workstation WG that such a UI needs to be made, but upstream interest isn't exactly high for it.

As far as I know, the packages are built on Fedora's infrastructure, but hosted on that of a third party (i.e., Cisco), and hence are subject to the latter's whims – not something I would call a first-party repo by any stretch of the imagination. But do correct me if I'm missing something.

We build the packages and repository, and then Cisco hosts it for us to gain the patent license. It's actually subject to both of us. The main problem we have is sometimes latency on shipping updates.

Inosfar about replacing RPMs with Flatpaks in Workstation, the issues with Flathub flatpaks are well-known, we're not going to drop the third party RPM repositories either. I even specifically outlined many of these problems in #269. It's also come up again and again in meetings about Flatpaks all year.

Hi, please don't treat OpenH264 as third-party software. That one needs to be installed even if the user does not otherwise want third-party software, because it's required for H.264 video playback to work. The fact that it's distributed by Cisco is only a legal workaround.

We are presumably going to drop all of the RPM repositories eventually, since that's a requirement for Fedora 2028, and I assume we're not planning for Fedora 2028 to fail, so I'd say it's just a matter of time. If you care about Chrome or Steam, then ignoring problems with Flatpak builds is not a sustainable path forward.

We are presumably going to drop all of the RPM repositories eventually, since that's a requirement for Fedora 2028, and I assume we're not planning for Fedora 2028 to fail, so I'd say it's just a matter of time. If you care about Chrome or Steam, then ignoring problems with Flatpak builds is not a sustainable path forward.

I wouldn't make this presumption. It's more likely another team will take over the third-party repository stewardship if Workstation doesn't want it.

Hi, please don't treat OpenH264 as third-party software. That one needs to be installed even if the user does not otherwise want third-party software, because it's required for H.264 video playback to work. The fact that it's distributed by Cisco is only a legal workaround.

@catanzaro Well, properly speaking, OpenH264 is not required to decode H.264 – FFmpeg is a thing, but the thing is, it's not exactly legal in the States (and a couple other countries). In other words – and to put it bluntly – forcing OpenH264 upon all Fedora users is a case of US defaultism.

If you care about Chrome or Steam, then ignoring problems with Flatpak builds is not a sustainable path forward.

I'm somewhat of a Flatpak advocate myself, and generally prefer it to RPM packages, but it's simply incompatible with some software in its current state (often when the software in question performs some kind of sandboxing itself). Flatpak may be the future, but we're not there yet, and there's still much to do, as it seems.

Hi, the Working Group agreed to reject this request, sorry.

Here is my own explanation as to why (not necessarily the opinion of the Working Group):

  • Anaconda has been simplifying and removing large amounts of functionality. Notably, support for configuring RPM repositories has recently been entirely removed. It's very unlikely that anaconda developers would agree to add the proposed new dialog.
  • The proposed configuration is too complex for either installation or initial setup. Users want to be able to install Fedora quickly and easily, not be bombarded with confusing questions. The burden to adding anything new should be very high. We especially should not assume that users know what software repositories are, or what any of this software does.

My suggestion is configure the third-party repos to your liking after installation. You can use the Software Sources dialog in GNOME Software for this.

Metadata Update from @catanzaro:
- Issue untagged with: meeting
- Issue close_status updated to: Won't fix
- Issue status updated to: Closed (was: Open)

@catanzaro Understandable. Thank you for getting back.

This issue has been migrated to Fedora Forge:
https://forge.fedoraproject.org/workstation/tickets/issues/496

Please continue any further discussion there.

Metadata