February 14, 2006

Review: PC-BSD brings BSD to the desktop

Author: Joe 'Zonker' Brockmeier

The PC-BSD team recently released its second release candidate for 1.0. With the final release rapidly approaching, we thought now would be a good time to take a look at what's coming in PC-BSD, a relatively new BSD distribution based on FreeBSD. It's specifically designed for desktop users, and offers a GUI installer that makes it simple for any user to install.

This isn't to say that other BSD flavors are unsuitable for the desktop, or that many users aren't already running BSD on the desktop. However, PC-BSD is one of the first BSD-based projects to explicitly focus on the desktop and to provide a simple graphical installer.

To test PC-BSD, I installed it under VMware Workstation 5.5 on a dual-CPU 1.0GHz Pentium III system with 2GB of RAM, and on an Athlon XP 2000 system with 1GB of RAM. In both cases, the installation went without a hitch and took less than an hour.

PC-BSD installs easily from a single CD-ROM ISO image. The installer requires the user to deal only with disk partitioning, whether or not to install the boot manager to the Master Boot Record, and to create a user and set the root password. At install time you also have the option of disabling automatic login, thus forcing users to type a username and password each time they reboot the system. Automatic login is fine, but I wish that it wasn't the default.

Software selection and management

The PC-BSD install consists of a predefined set of packages that a user can't modify at install time. I found the default set of packages to be lacking a bit.

PC-BSD is KDE-based, so KDE is the default desktop, and KDE applications are provided for normal productivity tasks and desktop usage -- Konqueror for Web browsing, KSirc for IRC, Kopete for instant messaging, KMail for email, and so forth. I like many of the KDE applications, but PC-BSD leaves a few serious gaps. For example, the GIMP is not installed, leaving users without a good image editing program. AbiWord, Gnumeric, and OpenOffice.org are also left out, which isn't surprising since they're GTK apps -- but I was surprised that KOffice isn't included. This leaves users without any Microsoft Office-compatible applications, which is a problem for many users.

The multimedia packages are also a bit skimpy. PC-BSD includes Kaboodle for playing multimedia files, but not amaroK or Kaffeine, which are usually included with KDE-based Linux distros.

PC-BSD does come with a fair number of games -- mostly lightweight amusements like KBattleship, Kolor Lines, KPoker, and other games starting with "K."

If the bundled applications don't suit your needs, the PC-BSD project provides additional applications for download in PC-BSD Installer (PBI) format, and users can take advantage of the traditional FreeBSD Ports system available as well.

The selection of PBI packages is a bit limited at the moment, but many of the packages I looked for -- such as Gaim, Firefox, the GIMP, and OpenOffice.org 2.0 -- were available. Unfortunately, some of the packages lagged a bit behind the current releases. For example, the PC-BSD PBI directory has Firefox 1.0.7 and Thunderbird 1.0.7, but not the current 1.5 versions.

What the PC-BSD project lacks in selection, however, it more than makes up for in ease of use. Installing PBI packages is simplicity itself. Double-click on the package, enter the root password, and click "Next" a couple of times. The package installer always asks whether you'd like Desktop and K Menu items, which is a bit odd when you're installing a package like GNU Bash, but that's the hardest question users will face. The installer doesn't even ask users where they want packages, so the PBI installer should pose no major challenge even for inexperienced users.

PC-BSD also has a convenient GUI for removing PBI packages. Just fire up the PC-BSD Package Manager and it will display a list of installed applications. A single click, and the package is gone. Unfortunately, the Package Manager only handles package removal at this point -- it'd be great if you could also browse the PC-BSD directory of available packages using it as well. A separate application handles updates to PBI packages. I checked a few times, but no updates were available while I was testing PC-BSD.

I also installed a few packages using the pkg_add command, which is also relatively easy to use -- though it would be nice if users had a Synaptic-like interface for pkg_add. Linux users who are familiar with RPM, APT, or Slackware package management will have no problem using pkg_add; users who depend on GUI tools will probably be a bit put off. KPackage is included with PC-BSD, and it will display installed packages, but doesn't seem to want to install additional packages.

Linux KDE users should feel right at home using PC-BSD. The differences between PC-BSD and Linux aren't that great, at least as far as the user is concerned. Device names are a bit different, some things will be in unexpected locations, the default shell isn't GNU Bash, and so forth -- but the divide between BSD and Linux isn't so great that it should cause much difficulty.

System management

By default, PC-BSD installed a uniprocessor kernel for my system, which isn't unusual -- a lot of Linux distros fail to install a symmetric multiprocessing (SMP) kernel for dual-processor systems. I thought it might be a bit of a hassle to install or enable an SMP kernel, but it turned out to be much easier than I expected.

I started to enable the FreeBSD Ports tree using the PC-BSD System Configuration utility, and noticed the Kernel tab, which allows you to change the installed kernel as well as change the boot delay (the default is two seconds), enable ATAPI DMA, and enable or disable the splash screen.

PC-BSD also has wizards to add users and manage network connections, which makes it an easy system to use for anyone who has at least a little bit of computer experience.

PC-BSD's monitor settings applet is nice to have, but for some reason it maxed out at a 1024x768 resolution on all of the systems I tried it on. The monitor and video cards I use with my test systems are capable of 1280x1024, so it was a bit annoying that PC-BSD didn't detect them properly.

I also tried out PC-BSD's device detection capabilities by plugging in a few random USB devices that work with Linux. PC-BSD didn't have any problems with the USB mice or USB media that I tried out with it -- just plug in and go.


The KDE-centricity of PC-BSD is likely to determine, for many users, whether PC-BSD is a good or bad choice. If you like KDE, or don't care, then PC-BSD is probably a good bet. If GNOME, or another desktop, is your desktop of choice, then PC-BSD probably isn't the OS for you. You can install other desktops using pkg_add or ports, but they won't be as well-integrated and won't have the PC-BSD menus.

After using PC-BSD several days, I was impressed with how easy it is to use. It's a good desktop OS, and a great way to introduce BSD to new users.

The 1.0 release has a few rough edges, but nothing that should scare off prospective users. For the future, I'd like to see something like Synaptic to manage PBI packages and allow users to browse for software without having to visit the PC-BSD Web site, and it would be nice if the site had a little more documentation, but I expect such things will come along in due time as the project matures.


  • BSD
Click Here!