Fedora 12 (Beta available now), is self-hosting.
What does this mean? Simply put, it means that you can use a copy of Fedora 12 to rebuild, from source, all* of Fedora 12 again.
Why is this important? One of the key tenets of Free and Open Source software is that anyone can get a copy of the source code, make modifications to it, built it, an use the modified version. Simply publishing the source code, without also allowing people a way to rebuild and use that code, doesn’t accomplish this goal.
Source code tends to bitrot over time. Libraries that your code uses will change, get updated, add features and bugfixes. Compilers improve and update to later standards. Your code needs to keep up. So, for each Fedora release, we run an “Fails To Build From Source” pass, which rebuilds every package in the distribution, using the packages in the distribution. We started the Fedora 12 development cycle with about 400 packages which couldn’t build (still, less than 5% of the total packages) for various reasons. Over the last few months, members of the Fedora Packager community have been whittling away at these, fixing their packages, sending patches to their respective upstream projects, and therefore improving the quality of the open source ecosystem as a whole.
The result? You see immediate improvements (smaller package sizes due to new compression methods being used, future-proof security through the use of stronger hashes to guarantee package integrity), and increased flexibility should you wish to remix Fedora for your own purposes.
Thank you packagers!
* Truth in advertising: All in this case means 8448 of the 8485 packages in the Fedora 12 tree. There are 37 problematic packages (0.4%), none critical to a vast majority of users, which still need some love.