The DistroManager.py script tests for the existence of a Fedora subdirectory of the install location to determine whether the location is valid. However, the Fedora rawhide mirrors are using Packages rather than Fedora as the directory containing the RPMS. As a result, virt-install fails to install a virtual machine based on the development version of Fedora. It would be sensible to base the test on some other directory (e.g. images/xen).
I can't test for images/xen because this has to work for older Fedora with only bare metal support too. I don't want to just test for 'images/' because other distros use a similar thing. Finally the URI we test for needs to be small to avoid downloading lots of data. So I think I'll make the test look for 'fedora.css' in the top level dir (works for Fedora 8 -> Fedora 5), and if that's missing try 'Fedora/' (which works for versions back to Fedora 1).
Fix will be in rawhide shortly * Tue Sep 11 2007 Daniel P. Berrange <berrange> - 0.300.0-2.fc8 - Fixed detection of Fedora 8 distro trees (rhbz #273781)
*** Bug 301001 has been marked as a duplicate of this bug. ***
You really should define an explicit holder in the distro for identifying a Redhat distro. Perhaps a file called RedHat, with key / value pairs contained within to uniquely identify the release/version. Depending on artifacts of the distro root for this is fraught with peril, as happened with the /Fedora -> /Packages fiasco. So now we're going to do exactly the same thing, and instead use another artifact - fedora.css for this purpose? Great... This will work until someone else innocently renames or replaces this file, not realizing its dual significance.
The Fedora distribution tree could usefully include a file to identify it that records the current metadata checksum. This would not only enable yum to determine whether it was looking at a Fedora mirror, but it could also determine whether that mirror was up to date. This would avoid downloading 5-10MB of data simply in order to conclude that a mirror is out of date. The checksum could still be checked against the metadata after it has been downloaded to ensure its integrity.