FreeBSD and MacPorts
GeneralProject HomeConsulting Services C/Unix Programmer's Guide FreeBSD and MacPorts Which FreeBSD? Creating Port-friendly Projects Port DescriptionsAPERoboctl NBC/NXC LinksFreeBSD Ports ProjectMacPorts Project Ports Source Code |
Which FreeBSD?There are actually several FreeBSD distributions to choose from, each with it's own advantages. I will attempt to highlight the major features of the most popular distributions here.Before we begin, a little explanation about BSD operating systems in general. "FreeBSD" is often compared to "Linux", but this comparison is only partially valid. "Linux" refers only to a kernel, while "FreeBSD" is an entire operating system, such as "Debian" or "Gentoo". There are several derivatives of FreeBSD, such as PC-BSD and DesktopBSD, which are built on top of the basic FreeBSD distribution. For those familiar with Linux, these derivatives are to FreeBSD what Ubuntu, Kubuntu, Xubuntu, etc. are to Debian. There are also several separate BSD operating systems, such as NetBSD, OpenBSD, and Dragonfly BSD, which share ancestry with FreeBSD, but have taken different directions in their development and are no longer binary compatible. We will focus on the FreeBSD derivatives here, since these are the systems capable of using the ports on this WEB site. PC-BSDIf you're not a hacker, and just want a system that's easy to install and maintain, this is probably your best choice. It's quick and easy to install and maintain, and the default settings work well for most average uses.PC-BSD will install on a reasonably modern PC in literally 10 or 15 minutes. I timed an installation on a "Frankenputer" made entirely from discarded parts, and went from inserting the install CD to browsing the WEB in 23 minutes. PC-BSD has a simple, attractive graphical installer, automatic updates, and the PBI system for easily installing popular software packages like OpenOffice, Firefox, etc. A PBI is much like a Mac OS X .pkg file. You simply click on it, and it installs everything required to run the program in its own folder. Unlike ports, PBIs don't share dependencies with each other, so you can install, uninstall and upgrade them without worrying about affecting other programs. PBIs make software management as easy as it can possibly be. If you are a hacker, PC-BSD does have some limitations. The basic PC-BSD system contains modifications to the FreeBSD kernel and some of the ports software (such as KDE). These modifications can get in the way if you want to update your kernel, or update/install software from the FreeBSD ports system instead of PBIs. Programs installed from PBIs may also be difficult to run from the command line, which can be a problem when logged into a shell over a network connection. DesktopBSDIf you're just a little more computer savvy, but would still like a system with some graphical installation and maintenance tools, DesktopBSD is probably your OS. The initial setup uses a graphical installer, comparable to that of PC-BSD. DesktopBSD also has graphical management tools for configuring the system, installing and uninstalling software, etc.The main difference from PC-BSD is that DesktopBSD doesn't use PBIs, but instead provides a graphical interface to the FreeBSD ports system. This results in a cleaner, simpler setup than PC-BSD, which you can feel free to use and modify using all the same tools you would use on a stock FreeBSD system. Installing software from ports rather than PBIs makes for a more efficient system, since the ports save memory by sharing common libraries. The down side of this is that it creates interdependencies which have to be dealt with when upgrading software. DesktopBSD is a great choice for anyone wanting to work with the FreeBSD ports system, but not inclined to muck around with the command line. FreeBSDThe stock FreeBSD system has been around since the early 1990s. It has a non-graphical, but very friendly installer called "sysinstall". Setting up the graphical environment will require some manual labor following the base installation. This process is made much easier by the ports system, which can be set up automatically during the initial install. If you're interested in learning how a Unix system is put together, setting up a stock FreeBSD system is a great place to start.Using a stock FreeBSD system also provides far more flexibility than PC-BSD or DesktopBSD, both of which are based on KDE. With FreeBSD, you can choose any window manager or Desktop system you like, such as XFCE, Gnome, etc, instead of KDE. FreeBSD also runs on a wide variety of hardware, whereas PC-BSD and DesktopBSD run only on IBM compatible PCs. |