From Fedora Project Wiki

Revision as of 17:57, 7 September 2012 by Duffy (talk | contribs) (→‎Implementation: adding yum command to list packages in critical path groups)

The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
For information on the proposal, see Critical Path Packages Proposal.

A critical path package is a specially managed package in Fedora that provides some essential or core functionality. Updates for critical path packages must undergo additional verification before they can be distributed to the community at large.

Background

Previously, documented policy treated every package the same. While good for uniformity, in reality certain packages require extra attention and care when updating and testing. These packages have potential to break the critical path of use of our Fedora distribution. As part of a Fedora Activity Day, several contributors proposed a critical set of actions that must not be broken. The packages required to sustain these actions make up the critical path.

Actions

Packages within the critical path are required to perform the most fundamental actions on a system. Those actions include:

  • graphical network install
  • post-install booting
  • decrypt encrypted filesystems
  • graphics
  • login
  • networking
  • get updates
  • minimal buildroot
  • compose new trees
  • compose live

Implementation

A set of groups are defined in the comps.xml file to include packages required for the critical use cases listed above. Since package dependencies change regularly, the comps.xml groups are then used to dynamically generate the list of packages.

The critical path package groups in comps.xml are listed below:

@core
@critical-path-base
@critical-path-gnome
@critical-path-apps
@critical-path-kde
@critical-path-lxde
@critical-path-xfce

You can list the packages in these groups with the following command, replacing 'critical-path-base' with the name of the group you're interested in:

yum groupinfo critical-path-base

For more information on comps.xml see how to use and edit comps.xml for package groups.

Maintainer Responsibilities

Important.png
FIXME
This section needs to be updated.

If a package is added to the critical path list as a result of normal package dependency the package maintainer will be notified through direct email and the extra processes they have to go through. (IS THIS TRUE)

If they do not wish to maintain the packages with these extra processes then they have to orphan the package. A new maintainer will need to be found.

Tester Responsibilities

The proventesters FAS group is responsible for ensuring minimal disruption to the critical actions listed above. If you would like to join proventesters, check out Proven_tester, where you will also find instructions on the testing process.

Where can I find the critical path?

The critical path package list is generated daily during the mash process for both rawhide and branched.

Note.png
Availability of Fedora Branched (aka Fedora 40)
Depending on the schedule, the critical path links for Fedora Branched (aka Fedora 40) may not be available. Generation of Fedora Branched (aka Fedora 40) content does not occur until the Branch Fedora 40 from Rawhide task noted in the schedule.

The most recent list of critical path packages are available at:

Stop (medium size).png
critpath.txt links return 404
Generation of Fedora Branched (aka Fedora 40), or Fedora Rawhide, may fail due as a result of an unforeseen error during mash, pungi or composition. Links to previous critpath.txt are provided for convenience. Ticket rel-eng ticket#3802 has been filed to provide a stable URL to the latest critpath.txt information for both Rawhide and Branched.