From Fedora Project Wiki
(Cleanups and refinements)
Line 68: Line 68:
== Benefit to Fedora ==
== 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.
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 ==
== 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/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
** Yum will need to use the new path by default while supporting the current one.


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




Line 91: Line 91:
<!-- 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? -->


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.
The current default repository configuration directory (<tt>/etc/yum.repos.d</tt>) will still be supported by DNF, PackageKit, and Yum, so the configuration files should be always seen by them even after Fedora distribution upgrade. The package 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 ==
== How To Test ==
Line 114: Line 114:


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.
4. Add a repo to <tt>/etc/yum.repos.d</tt> and see if it is recognized and used.


== User Experience ==
== User Experience ==
Line 123: Line 125:
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this change depends?  In other words, completion of another change owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel change)? -->
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this change depends?  In other words, completion of another change owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel change)? -->
* fedora-repos
* fedora-repos
* fedora-workstation-repositories
* PackageKit
* PackageKit
* dnf
* dnf

Revision as of 13:16, 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 bound to a specific package manager name and so be more portable among 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 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/distro.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 Fedora distribution upgrade. The package 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/distro.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/distro.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/distro.repos.d instead of the older /etc/yum.repos.d.

Release Notes