From Fedora Project Wiki
Line 35: Line 35:
<!-- Include you email address that you can be reached should people want to contact you about helping with your change, status is requested, or technical issues need to be resolved. If the change proposal is owned by a SIG, please also add a primary contact person. -->
<!-- Include you email address that you can be reached should people want to contact you about helping with your change, status is requested, or technical issues need to be resolved. If the change proposal is owned by a SIG, please also add a primary contact person. -->
* Email: ngompa13@gmail.com
* Email: ngompa13@gmail.com
* Name: [[User:jsilhan| Jan Silhan]]
* Email: jsilhan at fedoraproject dot org
* Release notes owner: <!--- To be assigned by docs team [[User:FASAccountName| Release notes owner name]] <email address> -->
* Release notes owner: <!--- To be assigned by docs team [[User:FASAccountName| Release notes owner name]] <email address> -->
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
Line 59: Line 64:
== Detailed Description ==
== Detailed Description ==


For DNF 2.0 in Fedora 25, the DNF team would like to move the default repository configuration directory from <tt>/etc/yum.repos.d</tt> to <tt>/etc/distro.repos.d</tt>.
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 more package manager agnostic name and so less misleading. The configuration files are currently used by yum, DNF and PackageKit. 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.
 
The location more accurately reflects the nature of the repositories, and also implies that other tools can look here for repository information.


== Benefit to Fedora ==
== Benefit to Fedora ==
    
    
This directory path implies that the repositories are consumable by more than Yum, and other tools that can consume repo files can use it.
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 binded to specific package manager name and so be more portable between package managers.
Other package managers that can read this data (such as PackageKit) would also obviously use this location.


== Scope ==
== Scope ==
* Proposal owners:
* Proposal owners:
** DNF already supports <tt>/etc/distro.repos.d</tt>, so nothing needs to be done here.
** DNF already supports <tt>/etc/distro.repos.d</tt>, but it should be set as default.
** yum will need to use the new path by default while supporting all the current ones


* Other developers:  
* Other developers:  
** PackageKit's Hif backend will need to change to use the new path.
** PackageKit's Hif backend will need to use the new path by default while supporting all the current ones
** fedora-repos needs to change to the new path.
** fedora-repos will need to change to the new path.




Line 87: Line 90:
== Upgrade/compatibility impact ==
== Upgrade/compatibility impact ==
<!-- What happens to systems that have had a previous versions of Fedora installed and are updated to the version containing this change? Will anything require manual configuration or data migration? Will any existing functionality be no longer supported? -->
<!-- What happens to systems that have had a previous versions of Fedora installed and are updated to the version containing this change? Will anything require manual configuration or data migration? Will any existing functionality be no longer supported? -->
* While DNF will still read <tt>/etc/yum.repos.d</tt>, PackageKit will not, so repository packages that install to <tt>/etc/yum.repos.d</tt> need to move to the new path for F25 updates.
 
Current default repository configuration directory <tt>/etc/yum.repos.d</tt> will still be supported by package managers so the configuration files should be always seen by package managers even after Fedora distro upgrade. The package containing the configuration files to the third party repositories like <tt>rpmfusion</tt> will still work as expected even though it will be set to the original path.


== How To Test ==
== How To Test ==
Line 121: Line 125:
* PackageKit
* PackageKit
* dnf
* dnf
* yum


== Contingency Plan ==
== Contingency Plan ==

Revision as of 12:10, 11 May 2016


Use /etc/distro.repos.d as default reposdir

Summary

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

Owner

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

Current status

  • Last updated: 2016-05-11
  • 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/distro.repos.d. In contrast to /etc/yum.repos.d (current default path), /etc/distro.repos.d path is more package manager agnostic name and so less misleading. The configuration files are currently used by yum, DNF and PackageKit. 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/distro.repos.d would be preferred default path.

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 binded to specific package manager name and so be more portable between package managers.

Scope

  • Proposal owners:
    • DNF already supports /etc/distro.repos.d, but it should be set as default.
    • yum will need to use the new path by default while supporting all the current ones
  • Other developers:
    • PackageKit's Hif backend will need to use the new path by default while supporting all the current ones
    • fedora-repos 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/distro.repos.d.
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

Current default repository configuration directory /etc/yum.repos.d will still be supported by package managers so the configuration files should be always seen by package managers even after Fedora distro upgrade. The package containing the configuration files to the third party repositories like rpmfusion will still work as expected even though it will be set to the original path.

How To Test

1. Install or upgrade to Fedora 25

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

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

User Experience

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

Dependencies

  • fedora-repos
  • 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/distro.repos.d instead of the older /etc/yum.repos.d.

Release Notes