Relocate Rpm Repo Configs To Usr
This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.
Summary
Relocate all packaged RPM repository configuration data from /etc to /usr.
Owner
- Name: [[User:Ngompa| Neal Gompa]]
- Email: ngompa13@gmail.com
Detailed Description
This Change aims relocate all packaged RPM repository configuration data from /etc/yum.repos.d to /usr/share/dnf5/repos.d. All Fedora packaging PGP/GPG keys in fedora-gpg-keys will also be relocated to /usr/share/pki/rpm-gpg.
This is now possible because all major read+write frontends for DNF configuration now go through DNF5. Fedora has now switched to DNF version 5 in the build system ([[Changes/BuildWithDNF5|Fedora Linux 40]]), the user-facing CLI tools ([[Changes/SwitchToDnf5|Fedora Linux 41]]), the installer ([[Changes/Switch_Anaconda_installer_to_DNF5|Fedora Linux 43]]), and PackageKit ([[Changes/PackageKit-DNF5|Fedora Linux 44]]). This means all the major supported entry points implicitly support DNF5’s layered configuration system.
The fedora-third-party tool used by Fedora KDE Plasma variants and Fedora Workstation will also be adjusted for this new world.
Feedback
Benefit to Fedora
The key benefit for Fedora is it establishes a clean separation of packaged repository definitions and allows for users to trivially identify local changes and undo them if desired. This is also necessary to simplify how derivatives handle repository definitions, since moving it to /usr allows the middle layer for packaged repository configuration overrides to function properly.
Scope
- Proposal owners:
** {{package|fedora-repos}}: Relocate yum.repos.d and rpm-gpg data to new locations in/usr
** {{package|fedora-workstation-repositories}}: Relocate yum.repos.d and rpm-gpg data to new locations in/usr
** {{package|fedora-third-party}}: Update configuration editor code to generate drop-in files in/etc/dnf/repos.override.d - Other developers: N/A (not needed for this Change)
- Release engineering: [Making sure you're not a bot! #13321]
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with the Fedora Strategy: N/A (not needed for this Change)
Upgrade/compatibility impact
Distribution provided RPM repository configuration files, if unmodified, will cleanly move from /etc to /usr. If modified, they will stay in place and override the configuration files shipped in /usr entirely.
Going forward, packaged repository configuration will no longer be present in /etc.
Early Testing (Optional)
N/A
How To Test
Once the changes are made in Rawhide, simply upgrade into them and interact with the package manager normally.
User Experience
There should be no substantially visible changes to the user experience.
Dependencies
- {{package|fedora-repos}}
- {{package|fedora-workstation-repositories}}
- {{package|fedora-third-party}}
Contingency Plan
- Contingency mechanism: Rollback and defer to the next release
- Contingency deadline: Final Freeze
- Blocks release? Yes
Documentation
DNF5 documentation on the configuration system: DNF5 Configuration Reference — dnf5 documentation
Release Notes
Fedora Linux 45 now ships all distribution-provided configuration for the DNF package manager in /usr, which makes it easier to identify user-local changes in /etc separately from distribution-provided configuration.
Last edited by @alking 2026-04-23T16:37:15Z
Last edited by @alking 2026-04-23T16:37:15Z