Wednesday, December 3, 2008

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.

Internals

Compared with other distributions, Cambridge uses a rather sparingly extended Linux version 2.6.27.5 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 2.6.27.5 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.

Up-to-date

As is customary with Fedora, the distribution's software range is largely up-to-date – while Ubuntu 8.10 (Intrepid Ibex), which was released a few weeks ago, still relies on OpenOffice 2.4.1, Cambridge already includes version 3.0. Eclipse 3.4, Gimp 2.6.2 and Firefox 3.0.4 are also current versions, but Thunderbird isn't. However, version 2.0.0.18 of the mail client which was released simultaneously with Cambridge at the end of last week has been available as an update since the release of Fedora 10.

GNOME 2.24.1 is included in the standard installation, offering various improvements introduced with version 2.24 – for example tabs in the Nautilus file manager. The Fedora project originally intended to use Empathy, which comes with GNOME 2.24, instead of Pidgin as the standard IM client for Cambridge – however, this plan was abandoned after developers experienced problems during testing. KDE 4.1.2 can be selected with a few mouse clicks during installation – its version 4.1.3 is already part of the updates-testing package repository and should, therefore, soon arrive as a regular update on the virtual doorsteps of Fedora 10 users. XFCE is not included on the standard installation media and can only be selected during installation once the online repositories have been activated as an additional installation source.

Apart from the usual installation media (one DVD, six CDs), the Fedora project also provides numerous "spins" – ISO images of live media which can not only be transferred to CDs but also to USB sticks. Each of the spins offers a range of software selected for a specific purpose – next to the desktop spin with GNOME and a spin with KDE, there is also one that includes XFCE. As the spins can be used for installation, the XFCE spin may be the preferred Fedora installation medium for many XFCE users.

In addition to the three spins mentioned there are several others, for example Fedora Education Math and Fedora Electronic Labs (FEL). The tools included in Fedora have also for quite some time allowed custom spins to be created with relatively little effort. As long as users observe the recently introduced guidelines, they can now share these custom spins as "Fedora remixes" without violating the project's trademarks.
More optimisations

Apart from the new features we have already mentioned, the developers also included numerous other improvements in Fedora 10. The printer configuration program – which is maintained by a Red Hat developer, was originally developed for Fedora and is now also used by Ubuntu – received a new user interface and returns better status information about current processes, amongst other things. While the software components of Fedora are usually quite current, this doesn't apply to its printer drivers: The HPLIP drivers for HP printers and multifunction devices are provided in their version 2.8.7 – meanwhile, the HPLIP project has introduced three new versions to support a large number of recent HP devices. The Gutenprint driver collection is also included in a rather dusty version 5.0.2 while Gutenprint 5.2.1, which was introduced a month ago, would offer numerous advantages – for example, it supports 655 printers that the collection's series 5.0 drivers don't know anything about.

New in Cambridge is also the "glitch free" version of the PulseAudio audio server. This server has received major work by its author, who is a Red Hat employee. Like in MacOS X or Vista, the audio output is now time-based rather than driven by interrupts – this approach is not only designed to help avoid interruptions, but also to unburden the CPU during audio playback, which reduces power consumption and prolongs the battery life of notebooks. Further improvements were included for netbooks and notebooks – however, the project does not offer a dedicated netbook spin.

The NetworkManager for establishing LAN, WLAN, VPN, GPRS or UMTS connections now also supports the connection sharing feature, which makes it suitable for setting up ad-hoc networks. For webcams, Fedora 10 includes drivers like uvcvideo and the gspca driver collection, suitable for a large number of webcams by various manufacturers. In addition to several other improvements for webcams, the Fedora community have also developed the libv4l software library. Instead of handling everything themselves, applications can now access this library for webcam control. The Fedora developers also claim to have optimised the use and configuration of infrared remote controls.

A likely virtualisation contender in Fedora 10 is KVM, which relies on the CPU's virtualisation technology. The support for Xen host operation (Host/Xen Dom0) was already ditched in Fedora 9. In Fedora 10, this functionality remains unsupported because the official Xen Dom0 patches are still only available for obsolete kernel versions that don't offer much support for new hardware. The Fedora developers are, however, considering providing users with the option of running privileged Xen domains as soon as the kernel hackers have incorporated the necessary code into the main development branch of Linux – this could already be the case in Linux 2.6.29. Cambridge is still capable of operating as a Xen guest and accesses the Xen support integrated into the kernel since 2.6.23 to do so. Several changes to libvirt and the virt-manager (1, 2) tool based on this library improve network installation and the management of (virtual) volumes for virtual machines.

The RPM package system now included is version 4.6, which was recently released by rpm.org. The Yum package management tool, known for its sluggish operation, is noticeably faster in Cambridge. However, users don't necessarily need the command line program for installing and updating applications, as Fedora offers PackageKit frontends for GNOME and KDE and is installed by default.

Further additions to Fedora included with Cambridge are the Sectool security audit and intrusion detection system and the Netbeans development environment. While Fedora didn't used to include the /sbin and /usr/sbin directories that hold system administration programs in the path of normal users, this strategy has now been abandoned. The Sugar desktop familiar from OLPC laptops is now also available in Fedora, as is the not quite as hardware-hungry LXDE desktop environment. FirstAidKit now helps with the troubleshooting if there are any problems. Fedora now also offers tools for implementing appliances and comes with the AMQP (Advanced Message Queuing Protocol) infrastructure (AMQPI) – the latter is essentially the messaging component of Red Hat Enterprise MRG.

Self-imposed limitations and how to bypass them

With the exception of a few firmware files, Fedora 10, like its predecessors, consists exclusively of open source software released under a licence approved by the Fedora project; Licences that, for example, prohibit the software's use in a commercial environment or its sharing with third parties don't make it onto the list. The Fedora project also excludes software that is known to use patented technologies, as well as proprietary software and drivers. These measures are designed to protect commercial Fedora users and third party vendors who distribute Fedora separately, or together with hardware, from potential claims by copyright or patent holders.

As a result, Fedora's package repositories, which contain about 11,400 packages for the i386 architecture, don't include any of the popular commercial applications, the proprietary drivers by AMD or NVidia, or the software for playing back many popular audio and video formats. This even includes the support for MP3 playback, as the patent holders Sisvel are known to enforce MP3 copyright claims.

A Fedora 10 installation is, therefore, only truly operational once the package repositories that provide the software excluded by the Fedora project, as well as the necessary unsupported audio and video codecs have been activated. To avoid the problems that occasionally occur when mixing and matching different repositories, three of the most popular Fedora repositories – Dribble, Freshrpms and Livna – have recently merged to form the RPM Fusion project. After a prolonged development and test phase, this project officially announced the availability of its repositories last month and now also offers packages for Cambridge.

In Fedora 10, users don't even need to know which RPM package they have to retrieve from add-on repositories like RPM Fusion or alternative repositories like ATrpms for playing the popular audio and video formats. A suitable dialogue of a PackageKit plug-in appears automatically as soon as multimedia applications like Totem that are based on the Gstreamer framework encounter a file which requires an unsupported audio or video codec. The plug-in then searches the activated package repositories for RPM packages that contain the necessary Gstreamer plug-in, and the user can install them with only a few mouse clicks. Fedora 10 no longer installs the Codeina program (sometimes also called a codec buddy) for installing the proprietary Gstreamer plug-ins offered by Fluendo free of charge, or on a commercial basis. Introduced with Fedora 8, the program caused controversy from the start due to the Fedora project's focus on open source solutions.

In Fedora 10, the RPM Fusion package repositories can not only be activated after installing Fedora, but also already during installation; unlike previous versions of Fedora, Cambridge automatically includes some of the packages required for components like GNOME or KDE depending on which of the two desktops has been chosen. Because the RPM Fusion repositories are divided into a free and a nonfree section, open source-aware users can easily exclude software not released under a Fedora approved licence. In Fedora 10, open source purists can also simply uninstall the majority of the firmware supplied with the Linux kernel, which is now provided in a separate RPM package, to create a very lean and mean version 2.6.27 of the Linux kernel.

RPM Fusion contains many, but by no means all, of the popular applications and drivers excluded by Fedora. Adobe Reader and the Adobe Flash plug-in, for example, are best obtained from the repository maintained by Adobe; Google also maintains its own repository, which contains components like Picasa and Google Earth. Other software components not included in Fedora and RPM Fusion can be found in third party repositories for Fedora, although mixing and matching these repositories frequently causes problems.

Like other Linux distributions with a six monthly development cycle, the new version of Fedora offers noticeably more current software and a large number of evolutionary improvements. With due consideration, however, upgrading from Fedora 9 to 10 is only worthwhile if there is an intention to actually use one of the new features. Users who wish to install Fedora from scratch, on the other hand, should definitely choose version ten, as it saves them the hassle of downloading the numerous updates for Fedora 9. A broadband internet connection is nevertheless advisable because the Fedora project is bound to release another host of updates for Cambridge; hundreds of new and updated packages were already available in the update repositories when the distribution was released.

Conclusion

Although Fedora 10 once again offers some improvements to make life easier for users and developers, Cambridge – like its predecessors – is not as suitable for first-time Linux users as, for example, the current versions of OpenSUSE or Ubuntu. This is mainly due to the self-imposed open source software limitations and a very cautious approach to software that may use patented or licensed technologies. On the other hand, the consistent stream of Fedora updates offers current programs and also considerably improves the distribution's hardware support – with other large distributions, new software and drivers are usually only included in new versions of the distribution. In addition, Fedora already offers a taste of new features like kernel-based mode-setting, glitch free audio with PulseAudio or connection sharing in the NetworkManager, which are also very likely to become part of other distributions in the near future.

No comments:

Post a Comment

Error (MMC has detected an error in a snap-in and will unload it) when you try to launch Windows Firewall with Advanced Security on Local Computer / Server.

Error (MMC has detected an error in a snap-in and will unload it) when you try to launch Windows Firewall with Advanced Security on Local Co...