From Fedora Project Wiki
Line 21: Line 21:


<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name.  This keeps all change proposals in the same namespace -->
<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name.  This keeps all change proposals in the same namespace -->
= Use <tt>/etc/distro.repos.d</tt> as default reposdir <!-- The name of your change proposal --> =
= Use <tt>/etc/repos.d</tt> as default reposdir <!-- The name of your change proposal --> =


== Summary ==
== Summary ==
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. -->
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. -->
Change the default repository configuration directory to use <tt>/etc/distro.repos.d</tt>.  
Change the default repository configuration directory to use <tt>/etc/repos.d</tt>.  


== Owner ==
== Owner ==
Line 64: Line 64:
== Detailed Description ==
== Detailed Description ==


For DNF 2.0 in Fedora 25, the DNF team would like to make the default repository configuration directory <tt>/etc/distro.repos.d</tt>. In contrast to <tt>/etc/yum.repos.d</tt> (current default path), <tt>/etc/distro.repos.d</tt> 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 <tt>/etc/yum.repos.d</tt> will still be supported by package managers but <tt>/etc/distro.repos.d</tt> would be preferred default path.
For DNF 2.0 in Fedora 25, the DNF team would like to make the default repository configuration directory <tt>/etc/repos.d</tt>. In contrast to <tt>/etc/yum.repos.d</tt> (current default path), <tt>/etc/repos.d</tt> 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 <tt>/etc/yum.repos.d</tt> will still be supported by package managers but <tt>/etc/repos.d</tt> 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 <tt>/etc/software.repos.d</tt>, <tt>/etc/vendors.repos.d</tt>, <tt>/etc/rmp.repos.d</tt>, <tt>/etc/rmp-md.repos.d</tt>, <tt>/etc/system.repos.d</tt> and <tt>/etc/distro.repos.d</tt>.


== Benefit to Fedora ==
== Benefit to Fedora ==
Line 72: Line 72:
== Scope ==
== Scope ==
* Proposal owners:
* Proposal owners:
** DNF already supports <tt>/etc/distro.repos.d</tt>, but it should be set as default.
** DNF already supports <tt>/etc/repos.d</tt>, but it should be set as default.
** Yum will need to use the new path by default while supporting the current one.
** Yum will need to use the new path by default while supporting the current one.


Line 84: Line 84:


* Policies and guidelines:  
* Policies and guidelines:  
** Packages containing repository configuration will need to change to store repo files in <tt>/etc/distro.repos.d</tt>.
** Packages containing repository configuration will need to change to store repo files in <tt>/etc/repos.d</tt>.


* Trademark approval: N/A (not needed for this Change)
* Trademark approval: N/A (not needed for this Change)
Line 111: Line 111:
1. Install or upgrade to Fedora 25
1. Install or upgrade to Fedora 25


2. Ensure repo configs are in <tt>/etc/distro.repos.d</tt>
2. Ensure repo configs are in <tt>/etc/repos.d</tt>


3. Add a repo in that directory and see if it is recognized and used.
3. Add a repo in that directory and see if it is recognized and used.
Line 120: Line 120:
<!-- If this change proposal is noticeable by its target audience, how will their experiences change as a result?  Describe what they will see or notice. -->
<!-- If this change proposal is noticeable by its target audience, how will their experiences change as a result?  Describe what they will see or notice. -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
Users may notice that system and COPR repository configuration have moved to <tt>/etc/distro.repos.d</tt>.
Users may notice that system and COPR repository configuration have moved to <tt>/etc/repos.d</tt>.


== Dependencies ==
== Dependencies ==
Line 143: Line 143:
<!-- Is there upstream documentation on this change, or notes you have written yourself?  Link to that material here so other interested developers can get involved. -->
<!-- Is there upstream documentation on this change, or notes you have written yourself?  Link to that material here so other interested developers can get involved. -->


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


== Release Notes ==
== Release Notes ==

Revision as of 10:59, 17 May 2016


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-17
  • 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/rmp.repos.d, /etc/rmp-md.repos.d, /etc/system.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