Story 2014-08-29 2RPD Friday Distro: PC-BSD

Friday Distro: PC-BSD

in bsd on (#2RPD)
story imageThese two XKCD comics about installing FreeBSD are increasingly out of date (but just as funny). But getting FreeBSD on your system has gotten easier than ever, and PC-BSD is a big part of that. Started as a hobby by FreeBSD enthusiast Kris Moore1 in 2005, PC-BSD's goal was just to make a pleasant, well-constructed desktop with a good installer on top of a FreeBSD system. They succeeded so wildly that not only did FreeBSD system provider iXsystems decide to buy them, but rival project Desktop-BSD essentially gave up the ghost (they're back now, and thinking about striking off in a new direction.

What's PC-BSD? It's not a "distro" in the Linux sense. It's FreeBSD with a better installer, configured to build you a desktop, not a server (although you can do that too). It's a project that makes it easier to use FreeBSD's systems and architecture to create a great desktop experience. Put in the installer disk, pour yourself a coffee, and twenty minutes later you are at a KDE4 desktop and online. But PC-BSD pioneered another technology that makes it easy to use: the PBI installer packages. PBIs ("push button installer") are essentially the equivalent of Mac OSX Applications, which install into a top-level "Applications" directory and include within all the relevant libraries. That makes them bigger than your typical Unix package installs, but you can also delete, upgrade, or install them without touching any other part of your system, which is useful. Because iXsystems also bought the FreeNAS project, FreeNAS installs now benefit from the technology too: with a single click, FreeNAS will create a FreeBSD jail and install a PBI into it, giving you compartmentalised functionality on your NAS (the Plex media server is one of them, for example).

Why would a Linux user bother with something like PC-BSD? The old adage, "Linux is for those who hate Microsoft; BSD is for those who love Unix" is probably appropriate. But because PC-BSD is FreeBSD, you get all of the benefits of FreeBSD too: fantastic documentation, and system components that were all designed, managed, packaged, and tested together. You also get FreeBSD's quirks and hardware compatibility challenges too (the installer never noticed my USB wifi, for example) but if you can get past the hardware issues, you are sitting at a tight, well-designed system that is pretty easy to tinker with and pretty hard to mess up. obviously, if you manage a FreeBSD server, this makes it easy to test things off your production system, too.

More about PC-BSD at their webpage, and at I also wrote about my first impressions with PC-BSD in 2006 here.

1Kris Moore is the guy behind the BSDNow podcast, too.
Reply 8 comments

The system I now call home (Score: 5, Informative)

by on 2014-08-29 15:26 (#2RQW)

I've been running PC-BSD as my main OS since October 2013 starting with the PC-BSD 10.0 preview. Before I installed PC-BSD I was distro-hopping around the Linux universe never quite finding something that felt comfortable (Arch was close, still have an Arch install that is not used much).

Basically I came to PC-BSD (and by extention FreeBSD) mainly for zfs and stayed due to the cohesiveness of the whole system and the great community. BSD Now episode #49 gives a quick tour of the PC-BSD GUI tools, a good place to see PC-BSD in action. After watching the podcast I would suggest checking out the PC-BSD Handbook

Re: The system I now call home (Score: 2, Interesting)

by on 2014-08-29 22:54 (#2RWG)

I run Arch Linux (with ZFS on my home directory), but I am actually thinking of trying out BSD because I really like FreeBSD. Perhaps PC-BSD is what I should be using on my desktop.

Why choose this over arch? (Score: 3, Interesting)

by on 2014-08-29 15:36 (#2RR4)

There are plenty of inux distributions out there. If I'm already running a more "advanced" distribution like archlinux, which gives me complete freedom over my computer, should I really look into FreeBSD?

But... but... (Score: 4, Funny)

by on 2014-08-29 16:36 (#2RS6)

Netcraft confirmed it! This can only mean one thing! BSD is a zombie OS! Run for your lives!

if you love UNIX, you'll hate BSD (Score: -1, Flamebait)

by Anonymous Coward on 2014-08-29 22:37 (#2RWF)

ps -e

Ouch. BSD fails because BSD is not UNIX. Solaris and HP-UX are the real thing. Linux is a fine clone, at least better than any BSD ever hopes to be.

old adage... (Score: 1)

by on 2014-08-30 06:54 (#2RWH)

The old adage, "Linux is for those who hate Microsoft; BSD is for those who love Unix" is probably appropriate.
could someone elaborate a bit about this one?
I'm an old linuxer for the last 15 years (and sysadmin by trade) but I never gave a try to any *BSD flavor nor to any other *nix one... so my question is not a troll but a real question!

Re: old adage... (Score: 1)

by on 2014-08-30 09:36 (#2RWJ)

I know at least the historical reasons that could justify that quote: BSDs are direct descendants of Unix (version 5 & 6 according to this graph), whereas Linux is a Unix-clone started from scratch.

Besides, I remember reading something along the lines about Linus Torvalds writing Linux as a Unix-replacement instead of using the *BSD of the time because there was ongoing lawsuits about *BSD licensing vs. Unix (now settled). Without these, maybe he would never have started Linux in the first place.

Anyway, I believe the quote mostly points to philosophical differences between the mindset of *BSD communities and developers vs. that of the Linux ones, but I don't know much about it.

Re: old adage... (Score: 4, Informative)

by on 2014-08-30 11:28 (#2RWN)

Here are a couple of starting points. I'm not a zealot: I use both Linux and FreeBSD and like them for different reasons. The BSDs tend to be more conservative, so instead of systemd you've still got init scripts; it boots more slowly, has less hardware support, so on. The Linux distros evolve more rapidly, but they also sometimes stray into territory (HAL, Udev) that turn out to be a mistake.The absolute classic resource on the question is here, though it's a couple years out of date now.:
BSD projects maintain the entire “Operating System”, not only the kernel. This distinction is only marginally useful: neither BSD nor Linux is useful without applications. The applications used under BSD are frequently the same as the applications used under Linux.As a result of the formalized maintenance of a single CVS source tree, BSD development is clear, and it is possible to access any version of the system by release number or by date. CVS also allows incremental updates to the system: for example, the FreeBSD repository is updated about 100 times a day. Most of these changes are small.
This one seems pretty good:
There is an old saying about BSD vs. Linux: "BSD is what you get when a bunch of Unix hackers sit down to try to port a Unix system to the PC. Linux is what you get when a bunch of PC hackers sit down and try to write a Unix system for the PC.
Finally, this quote from Nesbitt agrees with me:
The FreeBSD documentation is available as a constantly updated, well written web handbook (and on paper as well). The handbook covers each and every aspect of the FreeBSD system in a concise, yet thorough, style. The documentation manages the delicate balance of being both a definitive resource for an experienced administrator, and a valuable learning guide for a Unix neophyte. It is written in a style that does not presuppose much familiarity with Unix systems, and covers such basic Unix topics as permissions, but also covers advanced topics such as kernel configuration and tuning, security and encrypted disk partitions.
I find Linux distros have wildly varying approaches to documentation, and I frequently turn first to Google searches. The FreeBSD is far more authoritative, and because the ports packages and kernel/base system are all maintained together as one integral source tree, everything fits together and seems to me to be more professionally managed. Somehow, and it's hard to describe exactly, everything seems more cohesive. But the documentation is a big deal. It's very easy to get instructions from the source on how to do exotic things like set up a PPP server or a SLIP connection, and beyond. That's useful on some systems, but on others you want Linux for hardware compatibility and faster boot times.