The Debian users' list currently has reams and reams of posts, mostly furious, about the change to systemd. A switch to BSD is quite often suggested as an escape route but that wasn't my reason for thinking about it. I've got used to systemd on Arch, and although I don't find it better than sysvinit I can live with it. But I like the BSD philosophy. The notion of having the system as an integrated whole rather than a lot of bolted-together packages as in Linux is attractive.
That's why a year ago I installed FreeBSD
, with mixed results. The ports system didn't work too well and for this and other reasons I decided to stick with Linux. Recently I had another go with the new version of FreeBSD (10.0), hoping it would be better, but it was if anything worse. Getting X to work was particularly annoying; I did get it running more or less as I wanted it but each time I tried to close it or change to a text terminal it locked up the computer and I needed to do a hard reset. The reviewer on Distrowatch
reported problems with X too.
(Why not try PC-BSD, you ask, since that is FreeBSD for the desktop? Because this would install a desktop environment (Gnome, KDE etc.) by default, which I don't want. I'd need to mess around a lot to get things as I want them, so why not start with native FreeBSD?)
I hadn't thought too much about OpenBSD because I supposed it was only of interest to people running servers. Then I chanced to read this article in Distrowatch
. It suggested that OpenBSD can, in fact, be useful as a desktop, at least if you don't want anything too fancy (that's me). So I decided to try it out.
OpenBSD was probably the easiest OS to install that I've ever tried. By simply following the defaults (except to install the uk keyboard) I found myself, after about 15 minutes, with a working system including X
. Everything else worked as expected too, including sound, which is often something you have to struggle with in Linux.
Installing third-party applications such as Firefox was equally easy. OpenBSD does have ports via a scheme borrowed from FreeBSD, but you don't need to use them since all the ported stuff also exists on OpenBSD as packages, and you are encouraged to use those instead of ports. (You only need ports when you want to modify a supplied program.) I found that nearly everything I wanted existed as a package so getting my system into order was pretty easy.
At this point I was even contemplating installing it on all my machines. But of course nothing is ever as simple as it seems at first.
Possible drawbacks with OpenBSD
1. Some of the packages are somewhat out of date. In this respect OpenBSD is different from my preferred Linux distribution (Arch), which is a rolling release giving you rapid updates of all the packages you have installed. Having slightly older versions of things doesn't usually matter, but sometimes it does: e.g. I needed to modify some files made with a later version of Lyx under Linux and these were incompatible with the older version in OpenBSD.
2. Updating OpenBSD itself is different from what you might expect. There is an offcial "-release" every 6 months, in May and November, from which you can upgrade your system. There is a "-stable" branch which only gets serious errata and security fixes; you have to compile this yourself from source and there's nothing new. There is also a "-current" branch, in which the developers post their new code. This is updated frequently both as code and as "snapshots". There are differing opinions about the desirability of using this. You can read dire warnings about the possibility of finding yourself with an unusable or even unbootable system, but plenty of people do use -current on production machines. A recent poster on the OpenBSD misc list wrote:
It may sound bad coming from Linux world, but the fact is that a lot of the people using -current in production just fine, because -current in OpenBSD means something like LTS (from point of view of stability) elsewhere.
For companies -release/-stable is something what they are looking for mostly to show management that they are using "stable" OS. Here updates once a 6 months or once a year are fine for them (or after every security fix in base OS, if you have proper infrastructure you can make it easily without downtime.
I've now done several upgrades on two machines (using snapshots, not compiling from source) and there have been no problems. I'll post details of how I did this shortly though it may have to wait until my wrist heals.
3. Some things I want simply don't work on OpenBSD. One of these is the BBC iPlayer, which requires Flash. There is no Flash for OpenBSD and most people who use the system don't want it anyway because of safety considerations. A possible way round this is to use get_iplayer, although unfortunately the BBC seem to be trying to sabotage this valuable program and there is no guarantee that it will go on working indefinitely. Skype is also not available for OpenBSD. It might be possible to get it to work via Linux emulation but I think it would be difficult. I've compiled a few things myself (qsf, sitecopy).
4. My flatbed scanner (Epson Perfection v330) needs proprietary software that isn't available for OpenBSD. So I brought back my Epson Perfection 1650 from abroad and this works out of the box with the sane backend. Incidentally, I think this now-superseded model is a better scanner than the v330.
5. To get round these and similar difficulties it would seem logical to install OpenBSD and Linux on the same machine and dual boot, but although this is technically possible it's a lot harder to do than you might expect. You are probably better off using at least two machines rather than attempting to dual boot.
6.. Finally, if you want to use OpenBSD you have to be willing to learn a lot of new things. (You might say that's a feature not a drawback since it helps to keep your brain alive!) At first glance OpenBSD is quite similar to Linux but on closer acquaintance numerous differences appear. The OpenBSD folk pride themselves on their documentation and are right to do so, but you need to read it carefully and do a lot of googling rather than ask newbie questions on the mailing lists, which are a lot more technical in tone than those of most Linux flavours. (DaemonForums may be a better place to ask beginners' questions.) Absolute OpenBSD
(2nd edition) by Michael Lucas (ISBN-13 978-1-59327-476-4) is certainly worth getting if you decide you want to run OpenBSD regularly on one or more machines.
I like OpenBSD a lot and want to use it as much as possible, but I need to have Linux as well, for the reasons I've described. I have 4 laptops (all Thinkpads of various kinds, mostly bought from Ebay). My desktop has just broken so I'm using the laptops exclusively. At present these are running the following systems and they are kept in sync with unison.
: Debian Wheezy (for my wife to use when she goes abroad).