What's new in Fedora 10
The tenth version of the Fedora project's Linux distribution promises both a faster and more visually pleasing start-up procedure, thanks to kernel-based mode-setting and the Plymouth program. With GNOME 2.24.1, KDE 4.1.2, OpenOffice 3.0, Firefox 3.0.4, RPM 4.6, the "glitch free" version of PulseAudio and numerous other improvements, Fedora 10 – version name "Cambridge" – includes state-of-the-art components and offers many new features that are likely to be incorporated into other distributions in the near future.
Just over six months after the completion of Fedora 9 (Sulphur), the Fedora project has now released the distribution's successor – Fedora 10 (Cambridge). Although there has been four weeks' delay due to the server infrastructure break-in, unlike many of the previous versions of Fedora, there have been no further last minute delays in the release.
As is customary for Fedora, Cambridge contains a comprehensive and very state-of-the-art software range – even the recently introduced OpenOffice 3.0 and Firefox 3.0.4 have made it into the new version of the Linux distribution. Apart from the improvements to the new version of the kernel and GNOME & co. often developed in co-operation with Fedora and Red Hat programmers, the Fedora developers have also incorporated numerous new features specific to Fedora 10. In the following article, we will take a look especially at these new features and at some of the other events in the Fedora environment that are relevant to Fedora users.
Faster and smoother startup
Although Fedora's main sponsor, Red Hat, generates a large part of its revenue with corporate server software, some of the Red Hat developers were entrusted with working on technologies that primarily benefit end users and desktop systems in Fedora 10. These include various improvements which make booting smoother and faster.
Fedora 10 supports kernel-based mode-setting (KMS) for the majority of Radeon graphics hardware from the Radeon 9500 model. This technology allows the kernel to set the suitable graphics mode for the respective screen immediately after initialising the most important hardware components. The kernel now also handles the screen resolution during operation, relieving the X Server of a large part of this task. As a result, the switching between the X Server and a VGA text or framebuffer console becomes much faster and smoother, as the switch-over no longer requires any resetting of the screen resolution.
KMS also gives the kernel more control over the graphics hardware – until now, framebuffer and VGA drivers, the kernel's Direct Rendering Infrastructure (DRI) and the X Server have frequently stepped on each other's toes. The kernel developers plan to incorporate the KMS code with Linux 2.6.29, which makes KMS a likely component for other distributions in the near future. Fedora 9 already supported KMS on an experimental basis with Intel graphics hardware. However, the developers of the Intel graphics drivers have thoroughly restructured the Intel KMS code several times in the past six months. The Fedora developers found this coming and going that was partially caused by GEM too precarious, so they disabled the KMS support for Intel hardware in Cambridge; an update may activate KMS in systems with Intel-based graphics chipsets at a later stage. Radeon's support for KMS also, still has its glitches and had already appeared on the distribution's wiki page of known problems when Fedora 10 was released.
To further spice up the boot process, the Red Hat/Fedora developers created the Plymouth program (see also: Interview with the developers of Plymouth). In systems with VGA text consoles, the program displays a simple ASCII progress bar at the bottom while the kernel and services initialise the hardware and start their jobs in the background – the whole procedure is slightly reminiscent of the white progress bar presented to users at the beginning of the start-up of Windows 2000.
To those who activate a framebuffer console or have Radeon hardware with KMS support, Plymouth displays a pretty animated image to match Fedora 10's solar design instead of ASCII art during start-up. This makes Fedora's start-up entirely graphical with graphics hardware that supports KMS; there is no screen flickering even when the X Server starts up. This event is now only marked by the appearance of a mouse pointer immediately followed by the GDM's log-in screen – a video preview of this process has been provided by the Fedora project.
The Fedora developers claim to have made the start-up not only prettier but also faster. On an "ideal PC", however, Cambridge took 28 seconds to start and was only one second faster than a Fedora 9 installation. On a test system with an Asus P5N7A-VM (GeForce 9300 chipset/mGPU), Fedora 10 took even longer: The code in the initrd idled for a full ten seconds waiting for all volumes to be detected before it slotted in the root partition and continued the boot process.
Compared with other distributions, Cambridge uses a rather sparingly extended Linux version 220.127.116.11 kernel. The largest of the patches used in the Fedora kernel's source RPM provide support for KMS, squashfs and utrace as well as the Atl2, At76, Lirc and Nouveau drivers. In addition, the Fedora developers have updated the Ext4 support to largely match that of the main development branch of Linux which is currently due to produce the 2.6.28 kernel; with this kernel version, the kernel hackers will complete the file system's main development phase. Ext4 file systems created in Fedora 10 are, therefore, also expected to co-operate with future kernels and distributions. However, Fedora's installation program only allows storage media to be formatted in Ext4 if the "ext4" option is submitted in the boot loader when starting the installation procedure.
Some of the drivers not included in the main development branch of Linux, but often supplied with other distributions like em8300, kqemu, madwifi, ndiswrapper, rt2860, rt2870 or zaptel are not provided by the Fedora project. The distribution's hardware support is, therefore, not quite as comprehensive as that of Ubuntu 8.10, which is also based on Linux 2.6.27, unless the missing drivers are added via one of the external package repositories that contain RPM packages for Fedora.
The relatively small number of patches in the kernel's source RPM will make it easy for the maintainers of the Fedora kernel to provide new kernel versions as regular updates at a later stage. This is likely to happen frequently with Fedora 10, as it is almost general practice in Fedora. Fedora 9, for example, was released with the then current Linux kernel 2.6.25 in May, but received some of the versions 2.6.25, 2.6.26 and 2.6.27 released in the past six months as regular updates. This is why the updated Fedora 9 kernel that was current when Fedora 10 was released is also a version 18.104.22.168 kernel and only differs slightly from the Fedora 10 kernel.
Therefore, Fedora's range of features and hardware support improve with the vast number of changes incorporated into the Linux kernels of the main development line. Most of the other distributors are not as courageous and only supply kernel updates to plug security holes without switching to new versions – therefore, it frequently takes several months before new drivers and other improvements incorporated into the main development branch of Linux actually reach their users.
Cambridge uses the X Server 1.5.3 for controlling the graphics hardware. As a series 1.5 X Server was already included in Fedora 9, features like the convenient configuration of monitors via RandR 1.2-based programs aren't really new for Fedora users. However, users are quite likely to be confused because the X Server now runs on the first console accessible via CTRL + ALT + F1 instead of the seventh. In the X Server of Fedora 10, the evdev driver now handles the events from input devices like mice and keyboards.