V Fri, Aug 04, 2023 at 12:16:14PM +0200, Miro Hrončok napsal(a):
With the retirement of modularity, the modular dnf repositories for Fedora 39 no longer exist. However, this will introduce a problem during upgrades. When users try to upgrade from previous Fedora releases with fedora-repos-modular installed, they will hit fatal errors that will probably look like this:
Errors during downloading metadata for repository 'fedora-modular':
- Status code: 404 for
https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-39&arch=x... (IP: ...)
- Status code: 404 for
https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-39&arch=x... (IP: ...)
- Status code: 404 for
https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-39&arch=x... (IP: ...) Error: Failed to download metadata for repo 'fedora-modular': Cannot prepare internal mirrorlist: Status code: 404 for https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-39&arch=x... (IP: ...)
Or:
Error: Failed to download metadata for repository 'fedora-modular': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
(The actual error might differ depending on the exact state of the removal of the modular repos and their mirrorlist etc.)
This is caused by the combination of the following facts:
- the modular repo configuration in Fedora 37/38 has skip_if_unavailable=False
- when the releasever is set to 39, the URLs of the repos give error 404
This is a general problem of removing a repository from the distribution. Unrelated to Modularity.
I propose this procedure: Keep Fedora <= 38 as it is. For Fedora 39 and 40 keep an empty repository on mirrors and uninstall the repository configuration by obsoleting fedora-repos-modular. Then in Fedora 41 remove the repository from mirrors.
That way users of currently relased Fedoras <= 38 will have access to their modules, and users upgrading to Fedora 39 or 40 won't get the 404 HTTP error. After this upgrade to 39 or 40 the repository definition became nonexistant thanks to the obsolete. Fedora >= 41 can stop mirroring the repository because upgrade guidelines only support jump to N+1 and N+2 distribution release.
-- Petr