PC-BSD 1.3.4 Review

May 22, 2007
FreeBSD along with OpenBSD and NetBSD form the triumvirate of BSD operating systems. Traditionally these BSDs are server centric operating systems - ie. those which are tuned to be run on a server rather than to be used by the end user as a desktop. Still, with a bit of tweaking and configuration, all the three of them can be used as viable desktop operating systems.

PC-BSD is a direct descendant of FreeBSD. As the name indicates, PC-BSD is a BSD operating system which lays stress on its use as a Desktop catering to the end users. From the point of its inception, the USP (Unique Selling Point) of PC-BSD has been to make it as easy as possible to install, update and use software, at the same time bringing all the powerful security features and stability of the traditional BSDs. Over one year back, I had reviewed PC-BSD 1.00 and if you have read the review, you would have found that my initial impression of this operating system was very positive. In the succeeding months many changes have taken place for PC-BSD. For one, in October 2006 PC-BSD got acquired by iXsystems which is now in control of the project - though Kris Moore, the founder of PC-BSD is still its project leader and has the final say. Apart from the acquisition, the project has moved quite smoothly.

One of the main changes I can see for PC-BSD 1.3 when compared to ver 1.0 is the drastic enhancement of the graphical installer with a couple of additional options thrown in. For example, at the time of installation, there is an option to encrypt the swap partition, there are options to open or close most popular ports such as the port used by SSH and so on, a choice of enabling or disabling the firewall and with a few clicks you finish installing the OS.

Fig: PC-BSD desktop

The current version of PC-BSD is ver 1.3.4. Some time back, I had downloaded ver 1.3.0 of PC-BSD and had installed it on my machine. The PC-BSD team have made it possible to upgrade the OS to the most recent version - 1.3.4 by downloading and installing a couple of patch files. Thus I had to download and install just over 40 MB of patch files which are made available in PBI format, to upgrade PC-BSD from ver 1.3.0 to 1.3.4. As a matter of fact, you do not even have to download individual files yourself to upgrade the OS. There is a GUI tool called "PC-BSD Online Update" which can be accessed by navigating through KDE Menu -> Settings -> System Administration -> "PC-BSD Online Update", that can be configured to automatically detect if there are updates available and then download and install them for you.

Post Installation scenario

It is really remarkable that the installation of PC-BSD went without any glitch and all the peripherals were detected properly. Sound worked out of the box and in no time, I was face to face with the graphical login screen. PC-BSD is a KDE centric operating system and comes with the latest version of KDE ver 3.5.5 and many useful software installed by default.

Once I logged into PC-BSD, I navigated to the PBI resource web page which contain the latest versions of most popular software such as FireFox 2.0.0.3, OpenOffice.org and so on and started installing those software which I use on a regular basis. As far as PC-BSD is concerned, you do not have to worry about dependencies as each PBI is a stand alone package which contain all the necessary libraries needed to run the program. So FireFox PBI will contain not just the FireFox binary but also dependent libraries as well.

Fig: It is possible to schedule the update of the OS to install security patches.

The PBI (short for PC-BSD Installer) is a GUI installer that is similar to its Windows counterpart, and is coded using Qt. To install a software, just double click on the respective PBI and follow the instructions. You also have the option of cleanly uninstalling the software from within the PC-BSD software manager.


Fig: View and remove the installed PBIs

Essential housekeeping in PC-BSD

One of the first things you should do the first time you boot into PC-BSD is to update the ports and install them. PC-BSD uses the FreeBSD 6.1 ports. And when you install software using the ports, you are essentially installing FreeBSD software. But unlike FreeBSD where you have to dabble with command line to update and install the ports, in PC-BSD, you can do the same using the GUI front-end with the click of a button (See the image below).

Fig: Install ports with the click of a button

Next I had to install the multimedia codecs to enable PC-BSD to play audio and video files in proprietary media formats. As with all Open Source projects, PC-BSD also follows the principle of not shipping the proprietary codecs by default and requires that the end user install them by themselves if they want to. Here is the interesting part. To install the multimedia codecs, all I had to do was to download and install the requisite PBI file from the PBI online repository. And viola!!, I was able to not only play wmv and quick time files but also watch encrypted DVD movies as well.

Fig: Kaffene media player detects all the codecs.

I have an Nvidia graphics card and I wanted PC-BSD to harness the full potential of the graphics card. Usually you can get along very well with the Nvidia open source driver but if you want to use OpenGL programs for instance, you need to install the proprietary driver. In the PBI repository, you will find a number of builds of Nvidia proprietary drivers for PC-BSD and you can choose the best package which works for you.

I found enabling Flash to be a little tricky affair. Mainly because Adobe has not yet released Flash Player ver 9.0 for BSDs. And the native build of Flash player for BSDs is still at ver 7.0. While you can very well install this version of flash player, many flash enabled websites now a days require you to have version 8.0 or above to view them - a big handicap for BSD users. One work around you have for PC-BSD is to install the Linux version of FireFox web browser. You heard me right. It is possible to install most Linux software and run them without any modification in PC-BSD. This is made possible because PC-BSD has a Linux compatible module installed.

I installed the Linux version of the latest build of FireFox from the PBI online repository as well as the Flash player ver 9.0 from here. And I was able to view flash websites without any problem. Of course I encountered a minor glitch in that each time I open two flash based websites simultaneously, Linux version of FireFox crashes. But by and large I was able to manage as long as I had only one flash website open at any given time.

I also downloaded and installed Sun's JDK 1.5 from the PBI online repository.

Is PC-BSD a FreeBSD clone ?

At first glance, one might be tempted to pass off PC-BSD as a clone of FreeBSD with some frills thrown in, as PC-BSD uses the FreeBSD ports. And it is easy to think that if you are installing software using ports, you are essentially getting FreeBSD software. But on close scrutiny, I was able to find notable differences. Some of them are as follows :
  • A GUI installer which eases the installation process.
  • Use of PBIs to install many software.
  • Incorporating OpenBSD's robust and powerful PF firewall instead of the firewall bundled with FreeBSD.
  • Many GUI front-ends which aid package management.
  • Easily start/stop and enable/disable services via its equivalent GUI.
  • Use of blacklist script to automatically ban IP addresses of machines of potential crackers who try to hack into your machine.
Suggestions for further improvement of PC-BSD
  1. The three BSDs namely FreeBSD, OpenBSD and NetBSD have their own independent ports. PC-BSD team could also start maintaining its own independent ports system instead of depending on the FreeBSD ports. One disadvantage of depending on FreeBSD ports is that you have to sometimes wait a long time before the software gets updated in the ports.

    Take for instance GnuCash finance software. It is not easy to create a standalone PBI of GnuCash as it has to satisfy a lot of dependencies. And as of now the FreeBSD ports have the older version (1.8) of GnuCash which is markedly different from the latest version of ver 2.0 especially in the file format which the respective versions use to save the data. And the PC-BSD team has to wait until the GnuCash port has been updated to the latest version by the FreeBSD port maintainers. Truth be told, there is a GnuCash 2.0 place holder in the ports I downloaded in PC-BSD but when I give the command :
    # make install clean

    ===> gnucash-2.0.5_3 depends on package: guile>=1.6.8_2 - not found
    ===> Found guile-1.6.8_1, but you need to upgrade to guile>=1.6.8_2.
    *** Error code 1

    Stop in /usr/ports/finance/gnucash.
    *** Error code 1
    ... it complains that guile package is an older version and GnuCash requires a newer version of the same. These snags could be done away with if PC-BSD maintains its own ports with periodic selective syncing with FreeBSD ports.

  2. When a user enters a root password to do system administration tasks using GUI, PC-BSD should offer to remember the root password so that the user does not have to enter it the next time he want to run a program in super user mode. Many Linux distributions such as Debian and Fedora have this feature. At present, if I want to install say 10 PBI's I have to enter the root password 10 times - ie. each time I execute the PBI, it asks for root password which gets really tedious. KDE dialog has a check box which offers to "keep the password" but it doesn't seem to have any effect.

  3. The PBI should have an option to install software system wide or on a per user basis. This suggestion might seem strange but in a multi-user environment, it is not possible to hand over the root password to every one. And if a user wants to try out a software by downloading the PBI, he should be allowed to install it in his home directory if he cannot enter the root password.

  4. The PBI should also support execution from the command line. This is not a must have feature but it can be convenient to execute and install a PBI package in certain situations where you have booted into console mode.

  5. It would be nice to have a GUI front-end which allows a lay person to write custom firewall rules for PF.
Epilogue

PC-BSD is turning out to be an excellent alternative to other popular Desktop OSes. After testing and using PC-BSD for some time now, I can't but admire the sheer amount of work that is put into creating, developing and molding an OS for the lay person albeit with a strong slant towards FreeBSD. The fact that PC-BSD is able to accomplish all the tasks expected by an end user - be it using the Internet for communication, listening to music, watching movies or using it for recreation purposes holds it in good stead as a viable Desktop OS.

20 comments:

  • Thanks you for this good review.
    About flash, why can we in one screenshot FlashPlugin 9 ? Do you have version 7 or 9 installed ?
    You have given me the will to try PC BSD.
    Thank you :)

  • Nice review. Good to see you also review the PC-BSD OS though your site is called "allaboutlinux" ;-)I'll add a link to my blog.

  • PBI stands now for Push Button Installer. PBIs can be downloaded from www.pbidir.com or www.pbis.in

  • I think I like PCBSD too, with right approach, make it easy for dual booting and partition area to make windows user not afraid of loosing data .Mostly I think xandros and ubuntu power feature united in PCBSD.

    easy to install
    easy partition
    easy dualbooting

    done :-)

  • Nice review. I've been using PC-BSD since the RC days on various hardware.

    Some comments:

    PC-BSD is not really a direct descendant of FreeBSD. Its not a fork, its a custom installation of it. No code is changed and you can set up a FreeBSD box the same way. Although to get the PC-BSD programs/PBI you'd need to raid their SVN and install it yourself.

    If PC-BSD maintained its own ports collection it would be a waste -- its the same system as FreeBSD. And the non PC-BSD developed softwares on PC-BSD are installed used FreeBSD ports and configured for the default installation.

    kdesu is used to prompt the user for roots password. It should probably have the same functionality as any Linux/GNU Distro.

    The option of installing a PBI into ones home directory would be nice imho if it was installed in a Jail for security reasons. But it is a valid point. Although personally I wouldn't want users to be able to install their own software on a workstation without the system administrators OK.

    PBI's can be installed from the command line. Although some dev disabled it for one of the PBC3 releases (PBi Creator 3.x). PBI's made after that or before that should have it. Except some very old ones that pre-date that feature. Most of which should be removed from pbidir.

    And the networking/firewall GUI is in development from what I've heard ;-)

    --
    Vi on one side, C on the other and Unix in the middle.

  • Having always been a Windows user, when I just recently built a new computer, I really didn't feel like spending the $150+ for Vista after blowing $1K on the comp itself. A friend of mine told me to try PCBSD. I figured that I'd have a nightmare of a time trying to figure out a new OS, especially seeing as how I had no OpenSource experience whatsoever. Quite the contrary: I installed it myself, configured it myself, and installed my own PBIs, with only a minor amount of Googling and referencing the PCBSD website. After about a week of learning the KDE way of doing things (which was the hardest part for me), I'm sold on PCBSD, and I'm recommending it to anyone who will listen. I've already switched my mother's computer over to it and now she's even using it! My only complaint/issue is with not having Flash 9 :( I read that the version 1.4 will have it pre-packaged (I think). Can't wait! ...now if I could only get WOW to work on it ;-)

  • Nathan

    Great review! I've been using PC-BSD for some time now, and also appreciate it's ease of use. Thanks for the review.

  • Michael

    As far as I know there has never been a native FreeBSD flash player. Even version 7 runs under Linux emulation.
    Correct me if I am wrong.

  • PC-BSd doesn't support SATA disk . I am furious !!

  • I don't see how there could ever have been a native FreeBSD version. You might find some (_old_) native version for OS/2 or Tru64 UNIX. But to the best of my knowledge Flashplayer has never been built for any of the BSDs.

  • Thank you for this nice review. It is great. I also put a link on my webpage.

  • PBI still falls behind the FreeBSD ports, always FreeBSD ports are newer than PBI, and there are more devs working in ports comparing to PBI.

    So I love PCBSD and I'm using kports gui to install FreeBSD ports and the konsole as well.

  • C. Frank Bernard

    I believe FreeBSD ported PF from OpenBSD before PC-BSD (and DesktopBSD) existed, and it also offers IPFILTER and IPFW.

  • It's true that version 7 flash player is the linux version and (afaik) there's never been a native FreeBSD flash player. And, version 9 (also linux) still has some issues on Free/PC-BSD.

    Also, TerryP makes very good points that PC-BSD isn't just like FreeBSD, under the hood it really is FreeBSD. Making their own port system would not be practical.

    I'm a FreeBSD user myself, but it's great to see how PC-BSD is taking off!

  • PC-BSD, DesktopBSD, and FreeSBIE are the only free systems based on BSD (all FreeBSD) that are oriented to the desktop rather than the server. FreeBSD contains excellent software, but it definitely caters to server use. It can be used on the desktop, but has little in the way of mechanisms to make it easy to install and set up to run typical desktop applications, though the base installation is not terribly unreasonable.

    FreeSBIE is very easy to use and it runs as a Live CD. The most recent version I know of, however, does not have a hard disk installer. DesktopBSD, from what I understand, is based on FreeSBIE (which in turn comes from FreeBSD). It adds a hard disk installer and is about as easy as PC-BSD to install.

    Where PC-BSD really stands out are a couple of things that I believe the article described well: updates are absolutely trivial with PC-BSD. Routine stuff is set up automatically, almost in the spirit of Linux distros like SimplyMEPIS, Freespire, and Xandros. Last time I checked on PC-BSD, it wasn't quite as current or clean as SimplyMEPIS. It had just a few wrinkles, as described in the article. But for basic, every day stuff, it makes the grade now, and has great promise.

    Having also reviewed snapshots at various stages of its development, I affirm what the writer of the article claims - that this is a nice desktop system, usable even now, easy to modify, and even some of the limitations described, I believe that PC-BSD has made tremendous progress. It is already a fine platform for handling Email, browsing the Web, and accessing some multimedia. It is multimedia where the limitations seem to be concentrated, but there also seem to be regularly improving mechanisms for adding to what is lacking in the default installation.

    For someone wanting a BSD desktop, I recommend this - assuming you don't want to shell out big bucks for an iMac that runs Mac OS X, also BSD based. Macs are hard to beat for multimedia, but in some ways, PC-BSD is more flexible, and certainly a great deal cheaper. For me, I use PC-BSD, I don't own a current Mac. That ought to say something about my preferences.

    I do still find SimplyMEPIS a bit more automatic about getting what I want just right - with VERY little twiddling. PC-BSD is rapidly closing that gap though. I like PC-BSD enough to use it for a couple days at a time without feeling any pain when using it.

  • I've been using PC-BSD since late last year and honestly in retrospect I find it easier than Linux all around. Wish I'd found it first, but I guess it makes me appreciate PC-BSD more now, lol.

    PC-BSD still has some work to do, but it's still early in the game, and the team are relentless in working to improve it. I'm really looking forward to the next release.
    My only complaint isn't even their fault, it's Adobe's, they really ought to make Flash 9 for BSD too.

    I cannot recommend PC-BSD enough though, it truly is something incredible.

  • PC-BSD is a very positive development for the BSD community. Despite what all us nerds think *BSD's are not easy to use for the regular user. Honestly, can you hand your friend who is confused with Windows a FreeBSD/OpenBSD/NetBSD cd and say install this? NO!

    Enter PC-BSD which now allows anyone to utilize the benefits of this amazing FOSS operating system. Some within the community don't understand the need for the BSD desktop because all they work on is server/internetworking/storage/etc.. The greater BSD community should warm to the idea of more BSD WHEREVER it is ESPECIALLY on the desktop.

    Having spent some time with PC-BSD I am very confident it is on the right track to bringing BSD to the masses which I think we would all consider a win-win. Long live FOSS!!!

  • As for the firewall configuration. FW builder does a splendid job, if you don't like to edit rules in the text editor. FWbuilder is a free tool that strives to be as good as CheckPoint Smartcenter. It definely has the price advantage as it only costs you money on Windows and OSX

  • I tried pcbsd but I didn't care for it. PBI and the ports doesn't seem to mix well. I prefer desktopbsd which is purely freebsd with an easy soft manager to install from the freebsd ports.

  • manmath sahu

    Can it diagnose and install devices drivers for my VIA Motherboard (VIA S3G Pro IGP display card and AC'97 Sound Card)?