Wednesday, March 10, 2010

Linux Music Production Sidebar: PC-BSD

With some encouragement from a nerdy friend or two I have expanded my non-Windows, non-Mac music production tests to include a few non-Linux systems. First up in this alternative-to-the-alternative category, PC-BSD. Because BSD is not familiar to most musicians I'm going to provide some background and context. If you are only interested in my experiences with the music software I tested on this system just skip ahead to Music Apps.

Know Your *NIXes

BSD is short for Berkeley Software Distribution. It refers to a family of free[1][2][3] UNIX-like operating systems derived from a BSD 1.0 which was developed at UC Berkeley in the late 1970's. While it may appear to be a less popular, yet close, relative of Linux it's pedigree is quite different. Also, I'm not talking about 30+ year old technology. Modern BSDs are derived from BSD 1.0 the way Windows 7 is derived from the DOS 1.x that shipped with your (or, more likely, your parents') IBM PCjr.

Currently the two most popular BSD's are FreeBSD and OpenBSD*. OpenBSD is a no-compromise, high security distribution that lends itself to servers and networking, although it can be configured as a graphical workstation. FreeBSD is somewhat more general purpose with a focus on good performance standard PCs.

PC-BSD is a FreeBSD derivative aimed at end users. It emphasizes ease of installation and use. My copy is version 7.2, which is slightly old. 8.0 is current for both the FreeBSD and PC-BSD, but this 7.2 install was a breeze to setup and quite stable so I decided not to rock the boat.

PC-BSD really is easy to setup, like a well packaged Linux distribution or better. Where it begins to beat even the friendliest Linux distros is in ease of installing and updating software, ie. package management. If you are familiar with Linux you probably know that the two big Linux families are divided by software package format, RPM (RHEL, SuSE[1][2], CentOS, Fedora, Mandriva, Yellow Dog, OEL, etc.) and Debian's dpkg/APT/.deb system (Debian, Ubuntu, Knoppix, Mint, Xandros, etc.). PC-BSD has its own package system, PBI.

PBI files are single-file self-installing programs for PC-BSD. You download the PBI for the program you want from a website (www.pbidir.com, for example), double click it, click "OK" a couple of times and start using your new software. Provided you got the right version of the PBI there are no trips to the command line, package management app or even an archive/unzip tool. It just works.
Music Apps

My initial install of PC-BSD didn't have much for audio or music bundled in, just a couple of media players. I paid a quick visit to pbidir.com, downloaded the PC-BSD 7.x PBIs for Audacity, Ardour and Hydrogen and I was on my way. Seriously, the big Linux distros need to look at the PBI system. This was easier than falling off a bike...and I know a little bit about falling off bikes.
Audacity, Ardour and Hydrogen all work great. They launch correctly, are responsive, stable, and sound good. I didn't have to mess with any system-level audio settings or drivers to get audio out or explicitly tell them what audio system to use (JACK vs. OSS, for example).
And now for the bad news.

No plugins. No effects. Anywhere.


So I thought, OK, I'll process stuff elsewhere then work with it here in PC-BSD. Nope. VMWare shared folders are not fully supported on BSD and did not work at all for me in this VM. This is monumentally frustrating. Everything I had worked but I didn't have what I needed.

This is where PC-BSD turned back into an ordinary BSD. The PBI system is great, as far as it goes. Now I had to run Ports from the command line and try to get some effects that way.

And back to the good news. The Ports system contains a lot of audio software, including effects. Since there isn't any money do be made re-packaging free software from a semi-obscure open format to a truly obscure (but more convenient) one none of us should be surprised that the list of multimedia and audio PBIs is a lot shorter than the list of such apps in the ports tree. This is the way it goes with free software managed by volunteers. I have one more thing to add to my list of hobbies; "learn to package PBIs."

Ports works. The apps work. PC-BSD and the PBI system make the initial steps very easy. I look forward to doing more work on BSD in the future.

I would also like to put out a call to computer musicians who are interested in free software to make time to contribute to free software projects. You don't need to be a programmer/hacker to build packages. You mostly need some time and the ability to read and follow documentation. That time is what frees us, little by little, from Apple, Microsoft, Sony and Digidesign.

* These are both dwarfed in popularity by Mac OS X, the guts of which is a BSD descendant, Darwin[1][2]. Since nobody (and I do mean, nobody) uses OS X because it is a BSD, I'm not counting it and most free software aficionados don't either. Whether building OS X on free software makes Apple more or less evil is a topic of some debate. Some, not a lot. You'll probably find most people who care about such things leaning to the "more evil" side.

No comments: