August 9, 2004

Review: Debian-Installer Release Candidate 1

Author: Bruce Byfield

After four years of development, the first release candidate of the new Debian installer is here. If you're familiar with other install programs, this one may surprise you. It introduces Debian's strengths right at the start, and it goes a long way toward burying Debian's reputation for being difficult to install.The Debian-Installer project grew out of the Debian network and boot floppy projects. In fact, it borrows heavily from both these earlier projects. But the Debian-Installer also has the specific goal of making Debian easier to install. "Debian has been burdened with a sub-par installer for a full decade" comments Joey Hess, the initial designer of the Debian-Installer, "and it's time to change all that."

Or, to be more exact, perhaps it's time to change public perception. True, the old installer is unglamorously text-based, and asks questions that require a detailed knowledge of your hardware's stats. Yet even a moderately tech-savvy person could struggle through it and get a working (if not optimized) system. The real problem is not so much the difficulty of the old installer, as the way its reputation scares people from even considering Debian. The reputation is so strong that Debian-based distributions have clustered like pilot fish around a shark, most of whose main claim to attention is that they offer an easier installation that leaves users with a Debian-compatible system. Libranet, Linspire, Knoppix, MEPIS, Progeny, Stormix, Xandros -- these are only the best-known of the distributions that have improved on the old Debian installer.

The Debian-Installer project has a more difficult task than the Debian-based distros. Most of the Debian-based distros design for only the Intel chip, while the Debian-Installer has to code for other architectures as well. That means that taking code from these other distros was not an option for the Debian-Installer. See the ports page for a complete picture.

Similarly, the leading Debian-based distros have been supported only English and one or two other languages, while Debian itself supports nearly three dozen languages. In addition, the project also hopes to support installations from flashdrives and other mediums that none of the major Debian-based distros support. The project's ultimate goal is a modular, flexible program that makes Debian accessible for everyone.

Debian-Installer Release Candidate 1 (RC 1) has some ways to go in accessibility. It is still text-based, a sub-project to provide a GTK GUI having apparently suffered crib-death. In places,too, it requires system knowledge that might make the inexperienced feel a trickle of sweat. Yet compared to the labyrinthine twists and turns of the old installer, the new Debian-Installer is a stroll through a suburb whose streets are laid out on a grid. Unless you choose more control, only a minimal amount of user input is required - language, keyboard, time zone, root and user passwords - and in less than forty minutes the result is a working Debian system.

I could give the play-by-play, but let's face it: if you've done one GNU/Linux install, you've seen them all. However, a few highlights along the way are worth noting:

From the welcome screen, users can open a series of well-written help screens that list system requirements, as well as boot methods and boot parameters. If you are reading the help -- and new users should read at least the system requirements -- you can start the installer from the help screen, a simple feature that shows that the project has been thinking at least intermittently about usability.

The actual installation starts with a choice of languages and keyboards. The default is English and a US keyboard, but the number of choices, as well as their placement near the start of installation shows how diverse Debian's audience is.

After the CD drive, the first hardware detected by the Debian-Installer is the Ethernet card. Although you could install from CDs if you needed to, the assumption is that you will install everything except the base system via the Internet, or at least a network. This is such a convenient way of installing that it makes swapping CDs in and out feel positively crude. It immediately serves notice that Debian is not just another distro.

Aside from the base system, most of the installation involves setting up and using apt-get, the package tool that sets Debian apart from the .rpm distributions. With an ability to resolve dependencies that .rpm tools such as apt4rpm and yum are only starting to provide, apt-get is the single most important program in Debian. Therefore, introducing it to users during installation only seems sensible. During the install, users set up their /etc/sources.list file by choosing the site from which to install. They can also install only the programs they want, using either the text-based dselect, the GUI aptitude, or apt-get itself. Alternatively, they can choose tasksel to automatically set up the machine as one of half a dozen different types of servers, or as a desktop environment. My only complaint is that it is easy to miss the fact that tasksel is where you want to go for a desktop environment. However, once you realize that, your work is virtually over.

If you choose one of the options in tasksel, the result is a system that, while not exactly sparse, is far from the grab-bag offered by most Debian-based distros. For example, if you choose a desktop-environment, the result is a system with KDE, GNOME, OpenOffice.org, and a selection of system utilities. If you want tools for specific purposes, such as k3b, gftp or xchat, you have to fetch them yourself.

This sparseness may be intentional. Compared to most commercial distributions, the Debian-Installer results in a noticeably more secure system. "I think we've gotten more security conscious," Joey Hess comments. By default, for example, the root user cannot log in locally using the X Window System, and the root password is needed for a single-user log on, or for rebooting or shutting down. Nor are floppies or CDs auto-mounted. Similarly, the regular user created during the install is added to a minimum of groups. Although the number of programs run SUID looks about the same as in other distributions, the general tendency seems to be to start with most parts of the system locked down. This approach, of course, is sound security. But a logical extension of it is -- except where necessary for basic functioning -- not to make any changes programs that the root user doesn't know about.

In much the same way, opening the /etc/sources.list file reveals that the contrib and non-free repositories are not added by default. That means that, when installation is complete, you truly have a free software system. If you want Acrobat Reader, flash, java, or any other extras that most commercial distributions include, you will have to edit or find the sources yourself. As with the security features, you may or may not want to change the initial setup, but at least you know your starting point.

Another noticeable feature is that discover -- which detects new hardware -- is added to the boot script. This feature, which might be loosely be described as another layer of plug and play, is especially useful on the new AMD64 machines, whose on-board Ethernet cards sometimes have to be found again after each reboot.

The only problems I encountered with the Debian-Installer were minor. First, RC1 uses the testing version of Debian (although an unstable version is also available). The latest versions of Mozilla and the GIMP are not in testing yet, and I had to install them myself from unstable. Second, and more seriously, the hardware detection does not extend to the video card. Nor is there any way of testing the X Window System configuration during the install. If you do not know what type of video card you have, or if your card requires third-party drivers, your best choice is to select a VESA driver, then edit XF86Config-4 after installation. More than anything else, this problem is what prevents the Debian-Installer from completely fulfilling its goals. While even a moderately experienced GNU/Linux user can quickly work around this problem, a new user is likely to be lost, unimpressed, or both.

An issue that didn't affect me, but that others should know about is that RC 1 does not set up any versions of Windows on NTFS partitions in the GRUB boot manager. If that matters to you, later releases are said to correct the problem.

These shortcomings aside, the Debian-Installer comes very close to meeting its goals. When it shortly becomes the default installer for Debian, Debian will move from one of the most complicated installs to one of the simplest installs of any GNU/Linux distribution.

This new status is sure to shake up the established order. For one thing, the new installer positions Debian to attract a large group of new users that a few Debian veterans may not be ready to accommodate. Undoubtedly, part of the appeal of Debian for some is its exclusiveness. Yet, with the Debian-Installer, that exclusiveness is likely to disappear. The technical merits of Debian have never been in doubt, and now a major barrier to enjoying them is gone.

For another, what is going to happen to all the Debian-based distribution?
I turned to the Debian-Installer after increasingly frantic efforts to get a new system up and running with Debian-based alternatives. Being lazy, I thought I'd save time by avoiding the difficulties of a Debian installation. Yet every Debian-based distro I downloaded in the interests of saving time soon had me tangled in issues all its own. The Progeny alpha release stubbornly refused to install a boot manager or find the Ethernet card. Libranet had broken dependencies when I installed GNOME - even when using its own sources. Knoppix insisted on displaying kdm in Greek characters whenever I edited my screen resolution. In each case, I could have used the old Debian installer several times over for all the hours of useless tinkering that I did.

In the end, I grabbed the CD image for the new Debian installer, and had a painless install. Most of which time, I spent reading a book and occasionally glancing at the screen to see if I had to configure any of the packages that were being set up.

Traditionally, the main appeal of Debian-based distributions has been the promise of a Debian compatible system with an easy install. Of course, some Debian-based distributions have other purposes. Progeny Debian is part of the company's platform services (whatever that is), and Knoppix remains a first-rate demo and recovery tool. All the same, the new Debian installer knocks out the main reason for using most of them.

A few rough edges aside, the Debian-Installer produces quick and easy results, and offers a system that is less cluttered and more secure than most. Just as importantly, in delivering these results, it introduces users to the Debian way of doing things, basic GNU/Linux security, and the free software philosophy in general.

What more can I say? The Debian-Installer shows the future of Debian. Aside from a few sunspots, it looks brighter than it has in years.

You can see the future of Debian at: http://www.debian.org/devel/debian-installer.


Bruce Byfield was a manager at Stormix and Progeny, and a Contributing Editor at Maximum Linux. Away from the computer, he listens to punk-folk music, raises parrots, and runs long, painful distances every day of his own free will. He can be reached at bbyfield@axionet.com.

Click Here!