From Fedora Project Wiki
(Corrected doc link ... ugh, this section is horrible)
m (How can I know what is changing in Rawhide?: rm hg.fp.o link)
Line 159: Line 159:
Good resources for the state of many Fedora projects:
Good resources for the state of many Fedora projects:

Revision as of 02:08, 3 August 2011

Rawhide is the name given to the current development head of Fedora. It consists of a package repository called "rawhide" and contains the latest build of all Fedora packages updated on a daily basis. Nightly builds are also available during the early portion of the Fedora Release Life Cycle.

Who should use Rawhide?

End users should not use Rawhide as their main day-to-day workstation. Because Rawhide is a development branch, many changes are not heavily tested (or tested at all) before being released to Rawhide, and packages in Rawhide can and do break without warning. It is even possible that bugs in Rawhide could cause data loss. However, testing Rawhide is a very valuable activity which helps direct Fedora development and ensure that the quality of the stable releases is high. It's also a fun way to try out the latest software almost as soon as it's released. Testing Rawhide is a great way to contribute to Fedora development. You can try Rawhide or Branched (depending on the point in the release cycle) from the nightly live builds without needing to install it at all. Otherwise, you can install it if you have a spare system, or are willing to install Rawhide on an existing system and dual boot, or use a virtual machine.

Nightly live builds

After the release of the previous final release, but before the Branch event, nightly builds will be composed of Rawhide packages. These are built automatically without manual tweaking or testing, so they will sometimes be beyond the size of a single CD, and sometimes may not work at all. If there is a bug in the generation toolchain, the images may not be built on a given night; in this case, the most recent image will remain available. Using these nightly builds is an ideal way to test Rawhide if you have no spare machine or partition available, or simply do not have the time to maintain a Rawhide installation. It's a very safe way to test, since it will make no changes to your installed system. You can also install Rawhide to your hard drive from the Live desktop if the Live image is working well for you. During the rest of the release cycle, daily builds will contain Branched content, and you must use a repository to install Rawhide - though you can build a custom spin using Revisor if you need to test a Live distribution.

See FedoraLiveCD for more information.

Installing Rawhide

Rawhide is meant to be installable, however, a particular Rawhide tree may not be installable due to bugs in the installer or other packages. There are many ways to install Rawhide.

Rawhide mirrors

Rawhide is under "development/rawhide" on the mirrors. You can find a local "development" mirror here. Continue reading for specific instructions on how to install mirrored content.

How to avoid disturbing an existing system

There are a few methods to test Rawhide on a machine without disturbing an existing installation:

  1. Test a Live version from CD, DVD, or USB drive.
    • To burn to CD or DVD, see burning ISOs.
    • To write to USB, see How to create and use Live USB.
    • If you use a LiveUSB with data persistence, you can use the "yum update" method described below to get the latest daily Rawhide RPMs (except for the kernel). Note that you may also need to install the 'fedora-release-rawhide' package and enable the rawhide repository. However, downloading daily ISOs is recommended instead of this method.
  2. Use a virtual machine. See Testing/qemu.
  3. Install to a separate partition.

Direct Rawhide install via standalone Anaconda

Anaconda is the Fedora installer. It can be booted directly, rather than run from a Live desktop.

Using a general release Fedora ISO

You can use the version of Anaconda distributed with a final public release (the latest being Fedora 31). Using this method, you will be using an older but known-to-be-working installer to install the latest content in the Rawhide repository.

Option 1 - Use a copy you've already downloaded
If you already have a bootable CD, DVD, USB stick, or hard drive partition containing the *-DVD.iso or *-disc1.iso, you can use that to install Rawhide. However, if you need to download new boot media, these files are not recommended because they contain general release versions of Fedora RPMs, and you wish to install Rawhide RPMs. See installation guide download page for instructions if you want to download these files anyway. A general release Live image cannot be used to install Rawhide, only the general release version of Fedora which it contains can be used.
Option 2 - Download the minimal installer
If you need to make a bootable CD, DVD, USB stick, or hard drive partition, the best way to do this is to download the minimal boot.iso installer and load RPMs over the network. This is the same as the *-netinst.iso (e.g. Fedora-12-i386-netinst.iso) which you may find elsewhere. These files are not available by BitTorrent.
To obtain and use a boot.iso file:
* Go to - you will be redirected to a nearby mirror.
* Go to releases/31/Fedora.
* Choose the directory for your architecture (i386, x86_64, or ppc - help available), then find os/images/boot.iso and download it.
* Create a bootable CD, DVD, USB media, or hard drive partition following the instructions here using your newly downloaded boot.iso file. You can use the livecd-iso-to-disk method described there even though boot.iso is not a Live image, and it should also work on hard drive partitions, not just USB media.
Option 3 - Pure network install with no boot media
The Installation Guide documents how to boot the installer directly from the network, in case you cannot or choose not to create local boot media.
What to do after booting Option 1, 2 or 3
Start the installer and follow the on-screen instructions. Proceed to Package Group Selection. To install rawhide, deselect all Fedora 31 package repositories, and manually add rawhide using the instructions provided at Installing from Additional Repositories. Obtain a valid Rawhide mirror from the mirror list.
Option 4 - Without network access at install time
If you have no network access during the install process, you will need to download the Rawhide (development) repository from a Rawhide mirror and use the hard drive installation method described in the Installation Guide, or it might be easier to choose a different method to install Rawhide from another section of this page.
Nightly images no longer available
Daily Rawhide installation images are no longer provided. However, daily install images are available for the in-development Fedora 32 (aka Branched). Pre-Alpha Anaconda code is generally not testable, and it is important to test the installer that will appear in the next release (since it cannot easily be fixed after distribution media has been created) rather than the release after the next release. If needed and not available, installation images may be provided on demand for community test events, such as Test Days. To request images for a community test event, file a ticket with Fedora Release Engineering.

Direct Rawhide install via Live installer

Timing is everything
This method only works after Fedora 31 is released, and before Fedora 32 has branched. See the release schedule for appropriate timing. Once branched, follow the instructions at Branched.
  1. Download a daily Live image (.iso) from
  2. Follow the steps at How to create and use Live USB or How to create and use a Live CD to prepare and boot from the image you select.
  3. Log in and double click the Install to Hard Drive icon on the desktop.
  4. Follow the on-screen instructions to complete the installation.

Yum update from a test release

If a test release or "pre-release" (Alpha or Beta) is currently available, you can download it here.

Test releases are not configured to update via Rawhide by default (they follow the Branched version for their release), so you need to first install the "fedora-release-rawhide" package and enable the rawhide repo. You can then run "yum update" or wait for desktop notification of updates.

If you later want to switch from Rawhide to the final general release, see: Upgrading from pre-release to final.

Yum update from previous release

This method is available but not recommended for anyone except the bravest testers. Anaconda can make changes that are outside of the ability for the packaging system to handle. You may also run into dependency problems which could take time to resolve. You may also need to upgrade from the immediately previous release (e.g. install Fedora 10, 11, then Fedora 12 Rawhide and not jump directly from Fedora 10 to Fedora 12 Rawhide). Remember that Rawhide installations in general may need to be wiped and re-installed from scratch at any time.

You can upgrade to the rawhide repository one of two ways. Using graphical applications:

  1. First, install the fedora-release-rawhide package:
    • Click on the build status link
    • Check the latest build on Koji (for instance, fedora-release-14-0.6).
    • Download the corresponding RPM files (e.g. with wget).
    • Install the RPM release files: rpm -Uvh fedora-release-*.noarch.rpm.
  2. Next, modify your software sources using: gpk-repo
    • Leave only the Fedora - Rawhide software source enabled
  3. Next, update your system using: gpk-update-viewer

Alternatively, you may upgrade using the command-line:

  1. Type: yum install fedora-release-rawhide
  2. Then type: yum --disablerepo=* --enablerepo=rawhide update

You may want to enable/disable repositories in /etc/yum.repos.d/ so that only the "Fedora Development" repository is enabled. This will allow daily Rawhide updates to appear by default in desktop notifications and "yum update".

If you cannot install fedora-release-rawhide from within the package system, you can download the RPM directly from a Rawhide mirror, under: development/rawhide/<arch>/os/Packages/ (for instance: wget*.noarch.rpm)

Testing Rawhide

There are two important things all Rawhide testers should do. First, read the test mailing list, where Rawhide users discuss the latest changes. You'll find discussion of significant changes and warnings of severe breakage here. Reading test-list daily is key to staying on top of Rawhide. Secondly, report all the bugs you find in Rawhide to Bugzilla. Remember to file bugs according to these best practices. Please remember that bugs should always be filed in Bugzilla. Reporting bugs on the mailing list or IRC is not sufficient, as these reports rapidly become lost in history. Only on Bugzilla will they always be accessible to other testers and to the developers.

Beyond that, here is some general advice which may be of use in using Rawhide:

  • Approach the test release as a valuable chance to learn more about your system. There is a good chance you will run into some bugs in subsystems or components that you are unfamiliar with as part of the testing process. Use this an opportunity to learn more about that particular subsystem and become familiar with its documentation. Even documentation has bugs, by following up and trying to learn from the documentation you might be able to help clean up badly worded or out of date documentation as well. The more you learn, the more effective you will be in the future if you participate in the development process again. Be as proactive as you can about reading about how things work and you will have a much more valuable experience overall.
  • When using yum, take the time to review the list of package actions before you proceed. Don't disable the review step.
  • Become familiar with the /var/log/rpmpkgs and /var/log/yum.log log files.
  • Get a notebook and make notes about system configuration changes you make. Many problems can be traced to simple configuration errors, but can appear as package update bugs. When working with other testers to confirm the problem, make notes as to the other changes you have made since the last update/reboot can be invaluable in tracing the problem down accurately.
  • Keep at least one older kernel that you are confident works as expected.
  • Reboot daily, to test to see if any of your updates have affected startup. Its much more difficult to track down a boot up problem that was caused by an old update if you are updating daily but have not rebooted.
  • Become familiar with useful grub features for troubleshooting boot up failures.
  • Don't force or nodeps any package to work around dependency problems. Instead, report them as bugs or to test-list. If no-one reports these problems, they will never get fixed, and will persist into stable releases.
  • Because the development tree is not guaranteed to be internally consistent every day, you will frequently see yum update fail with errors. Don't Panic, most dependency problems will be fixed by the developers in one or two days - sometimes simply by requesting more package rebuilds. If you see a dependency problem with yum update on your system for several days in a row, and see no discussion of it on test-list, see below to decide how you should report it or if a report is necessary.
  • If there is one error (such as a package depending on an old library) holding you back from a full Rawhide update, you can use yum update --skip-broken to update all other packages. However, make sure the error has been reported to the maintainer of the offending package.
  • You might need to disable GPG checking in /etc/yum.conf or the fedora-devel repository in /etc/yum.repos.d if packages are incorrectly signed.

When to Report Update Problems

A daily build report of the development tree sent to the fedora-test-list every morning as part of the automated push of packages out to the publicly accessible trees. The daily report contains information about new, removed and updated packages. It also contains a summary of known dependency problems for each arch for which the development tree is built. If you experience any problems updating against the development tree the first thing you should review is the last two or three build reports. If you are seeing a dependency problem summarized in the latest build report, you can be sure the developers are aware of the problem. Package maintainers receive daily emails when their packages are on this list.

Note that the broken dependency list, which is part of the daily rawhide reports, only provides the first layer of dependencies and not the entire list, this saves build time. Unlisted packages might also be affected, but fixed when one or more of the listed packages are rebuilt.

If, however, the problem lingers longer than a few days on your system, and the problem package is not listed in the daily report, that could be an indication that you have run into a situational bug that not everyone is seeing. This is when you can spring into action as a tester and make a difference. But, before you file a new bug report there is a short recipe you can follow to avoid filing unnecessarily. Please remember that test releases exist primarily to help the developers identify problems so they can be fixed in time for release. Unfortunately, reactionary bug filing of duplicate or well known issues can take developer time away from actually fixing issues.

  1. Read fedora-test-list: Go back into your archives or the web archives for fedora-test-list and read over the threads for the last 48 hours and see if there has been any discussion about the specific update errors you have been seeing. Generally, these sorts of errors are seen by most everyone with similar hardware, so there's a very good chance that other testers are already discussing it. Please don't post a new post to fedora-test-list until after you have reviewed the last 48 hours worth of posts. Having multiple discussions about the same issue is a drain on other testers and developers.
  2. Search Bugzilla: Search to see if there are any reports about the update issue you have seen.
  3. Drop a note into fedora-test-list: Please start a new thread only after you have attempted to find a previous discussion of this problem in the test-list or in bugzilla. Other testers can help you confirm the problem. If they can't confirm it they can help you determine if its a configuration problem or user error on your part. The test-list is a great way to obtain assistance from other more experienced testers, but please do what you can to use the archives responsibly to avoid duplication of information and discussion.
  4. File a new bug report: If the exact nature of the dependency problem during updating is lingering for several days, or if the problem seems specialized to your situation and it doesn't appear that the developer is aware of this problem, file a new bug. If you are unsure how to file, experienced testers in fedora-test-list can make suggestions. Please don't assume its a yum bug. Most dependency issues are packaging bugs in one of the packages detailed in the error messages.

What does it mean when something "hits Rawhide"?

Rawhide is automatically generated once daily from the latest packages that are built. Packages that are built one day are generally in rawhide the next day. For the curious, the build is done at Midnight US Eastern, 0400/0500 UTC.

What is a rawhide "push"?

A rawhide push is simply the rawhide spin for that day. Occasionally, if the push is extremely broken, it may be regenerated more than once.

Where do I communicate issues in Rawhide ?

Use the fedora-test list or #fedora-qa IRC channel in Freenode. For bugs, report them to Bugzilla

How can I know what is changing in Rawhide?

Nightly reports are sent to fedora-test-list and fedora-devel-list, with the subject 'rawhide report: <date> changes'. Included in these reports are lists of packages that have been added, removed, or updated (with short changelog snippets), along with a list of any broken dependencies.

Good resources for the state of many Fedora projects:


Original press release at