From Fedora Project Wiki


Use /etc/repos.d as default reposdir

Summary

Change the default repository configuration directory to use /etc/repos.d.

Owner

  • Email: jsilhan at fedoraproject dot org
  • Release notes owner:

Current status

  • Last updated: 2016-05-30
  • Targeted release: Fedora 25
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

For DNF 2.0 in Fedora 25, the DNF team would like to make the default repository configuration directory /etc/repos.d. In contrast to /etc/yum.repos.d (current default path), /etc/repos.d path is a package manager agnostic name and less misleading. The configuration files are currently used by DNF, PackageKit, and Yum. The proposed location more accurately reflects the nature of the repositories, and also implies that other tools can look there for repository information. Note: current default repository configuration directory /etc/yum.repos.d will still be supported by package managers but /etc/repos.d would be preferred default path. The repo config options are compatible between yum, DNF-2.0 and PackageKit, just some options are not interpreted by DNF and PackageKit so far. The goal is to make repo configuration path names general. We don't insist on concrete default path name that could be misleading. The other name alternatives are /etc/software.repos.d, /etc/vendors.repos.d, /etc/rpm.repos.d, /etc/rpm-md.repos.d, /etc/system.repos.d, /etc/sys.repos.d, and /etc/distro.repos.d.

Benefit to Fedora

The former default directory path implies that the repositories are consumable by Yum only, which is not true. This general path name would help us define repository configuration path that would not be bound to a specific package manager name and so be more portable among package managers.

Scope

  • Proposal owners:
    • DNF already supports /etc/repos.d, but it should be set as default.
    • Yum will need to use the new path by default while supporting the current one.
  • Other developers:
    • PackageKit's Hif backend will need to use the new path by default while supporting the current one.
    • fedora-repos and fedora-workstation-repositories will need to change to the new path.


  • Policies and guidelines:
    • Packages containing repository configuration will need to change to store repo files in /etc/repos.d.
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

The current default repository configuration directory (/etc/yum.repos.d) will still be supported by DNF, PackageKit, and Yum, so the configuration files should be always seen by them even after upgrading to Fedora 25. For example, the packages containing the configuration files to the third party repositories like RPM Fusion will still work as expected even though they install configuration to the original path.

How To Test

1. Install or upgrade to Fedora 25

2. Ensure repo configs are in /etc/repos.d

3. Add a repo in that directory and see if it is recognized and used.

4. Add a repo to /etc/yum.repos.d and see if it is recognized and used.

User Experience

Users may notice that system and COPR repository configuration have moved to /etc/repos.d.

Dependencies

  • fedora-repos
  • fedora-workstation-repositories
  • PackageKit
  • dnf
  • yum

Contingency Plan

  • Contingency mechanism: Revert to using /etc/yum.repos.d
  • Contingency deadline: Beta freeze
  • Blocks release? No
  • Blocks product? N/A

Documentation

With Fedora 25, repositories are now written to /etc/repos.d instead of the older /etc/yum.repos.d.

Release Notes