The "Drop Delta RPMs" Change proposal was approved by FESCo: - https://fedoraproject.org/wiki/Changes/Drop_Delta_RPMs - https://pagure.io/fesco/issue/3070 The "server-side" part of the implementation of this proposal has been submitted to fedora-infra: https://pagure.io/fedora-infra/ansible/pull-request/1676 This leaves the "client-side" part of the proposal, i.e. disabling deltarpms in the default dnf configuration. I can submit pull requests to make the required changes, but I'm not sure what the best approach would be. As far as I can tell, the default dnf.conf file for Fedora is maintained here: https://github.com/rpm-software-management/dnf/blob/4.18.1/etc/dnf/dnf.conf What would be the best way to add "deltarpm=False" to this file *on Fedora 40+ only*? I can either submit a PR against the Fedora dnf package with a patch that is only applied "%if %{?fedora} >= 40". That should not increase maintenance burden much, since the histories of the rawhide / f39 branches have already diverged. Alternatively, I can submit a PR against dnf upstream, maybe to provide an alternative config file that can be used on Fedora >= 40. Ideally, these changes would then also happen for the dnf5 package, but I seem to recall that the default configuration will be handle differently with dnf5, so that would need to be done separately, I guess. Reproducible: Always
Hi Fabio and sorry for a late response. I believe the downstream patch, adding 'deltarpm=False' to the configuration file, is the simplest solution. If you can create that pull request, it would be greatly appreciated. Otherwise, I can take care of it. Regarding dnf5, we would probably go with a distribution configuration file with 'deltarpm=False' for the planned switch dnf4 -> dnf5 in Fedora 41. I've already filed an upstream issue: https://github.com/rpm-software-management/dnf5/issues/1185.
Thanks for the advice - I filed a PR that adds a patch to set "deltarpm=False" in the default config file: https://src.fedoraproject.org/rpms/dnf/pull-request/22 dnf currently doesn't build in Rawhide, but that seems to be unrelated to my changes.
PR merged, will be part of the next dnf update.
Sorry, reopening this. After further consideration and team discussion, also in relation to the new filelists metadata not loading by default in Fedora 40+, we believe it's more appropriate to make the change upstream and patch the former downstreams. I've realized that simply patching the configuration is insufficient, as users with modified configurations on their systems won't receive the updated configuration from the package update. I'll need to devise a different approach in the downstream patches. Additionally, in connection with this, we need to drop the 'Recommends: deltarpm' weak dependency for Fedora releases, as these are installed by default due to `install_weak_deps=True`.
I create an upstream change that provide functionality https://github.com/rpm-software-management/dnf/pull/2040 https://github.com/rpm-software-management/libdnf/pull/1641 In contrary to downstream patch, it does not modify dnf.conf, but default in code and a weak dependency. The adwantage of that approach is that it unifies behavior for all users, because changes in dnf.conf are not always applied to old system and some scripts does not load dnf.conf at all.
Thanks, that works for me too. I would have considered the "users who have modified their dnf.conf will not get this change on upgrade" a good trade-off. But if you can switch the default behaviour if the setting is not present, that's even better :)
FEDORA-2024-5338fc94c8 (dnf-4.19.0-1.fc40, dnf-plugins-core-4.5.0-1.fc40, and 1 more) has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2024-5338fc94c8
FEDORA-2024-5338fc94c8 (dnf-4.19.0-1.fc40, dnf-plugins-core-4.5.0-1.fc40, and 1 more) has been pushed to the Fedora 40 stable repository. If problem still persists, please make note of it in this bug report.