I installed OpenBSD on a refurbished Dell Optiflex 3020 a couple of days ago, replacing the Windows 7 it arrived with. From something I'd read on the web I thought there would be some configuring needed to get the installation to work with EFI, but in fact it went smoothly out of the box.
A couple of minor things to say about the console.
1. I wanted Caps Lock to give me Escape in the console. The OpenBSD FAQ tells you how to do this with wsconsctl but I got a message saying that Caps_Lock was not a keysym. I found a fix for this at reddit
2. Still on the console, I get messages about the mouse, saying _"wsmouse0 detached" . This seems to be a known bug but I don't have a satisfactory fix. I can stop the messages appearing by installing the mouse on the console but then it doesn't work in X. It's annoying but not serious since I normally start X immediatejy after logging in.
Probably the easiest solution is simply to unplug the mouse when you're in the console.
Revised 29 November 2018. (so now it's 4 years' use*)
Why I'm posting this
I switched to OpenBSD from Linux (Arch and Debian) for my desktop a little over four* years ago and I thought it might be useful to summarise my experience over that time and the main differences from Linux that I've found. I've blogged a lot about this previously (see the bsd tag) so this is really just an update.
In brief, I still like OpenBSD and have no thought of going elsewhere. I use the -current flavour and update the system about once a week. OpenBSD -current is roughly the equivalent of Debian Sid or Arch; in other words, it's a moving target. This may suggest that you need a lot of experience to use it and that doing so is rather risky, but I've found it to be more stable than either of the linux distributions.
There have been occasional hiccups, mainly with packages rather than the base system (these are separate in the BSDs), but there have been no show-stoppers and I've been able to solve problems with help from various kind people on the internet. But OpenBSD differs from Linux when it comes to finding help.
OpenBSD users are always advised to read the (excellent) man pages, which often provide the answer, so that's usually the place to start. The online FAQ is also essential reading.
All the Linux distributions I've used have mail lists and these are probably the most widely accessed resources for help with the different distributions. OpenBSD has a general mail list (email@example.com) but this is not the place to ask newbie questions. Most of the discussion is more technical than what you will find on a typical LInux list and many of the topics are not relevant to desktop users. I read it daily and learn from it, but even after 4 years much of it still goes over my head.
A very good place to go when starting out with OpenBSD is daemonforums.org. There are some very knowledgeable people there who kindly and patiently answer beginners' questions. Remember to search the site before you ask your question; you'll often find that it's already been answered.
If you think you've found a bug either in the base system or a package you can submit a bug report. Even if you don't do this it can be useful to keep an eye on the bug reports at https://marc.info/?l=openbsd-bugs. If the problem is with a package you can email the package maintener whose address is given in the man page; I've had very helpful responses in this way.
If you are following -current you should certainly keep an eye on https://www.openbsd.org/faq/current.html.
Finally, anyone who has decided they want to use OpenBSD regularly should get a copy of Absolute OpenBSD by Michael W. Lucas.
I kept getting this error code when trying to connect to various sites such as YouTube and Wikipedia. The solution required a good deal of digging on line. In brief I did this:
(1) In a new tab, type or paste about:config in the address bar and press Enter/Return.
(2) In the search box above the list, type or paste http2 and pause while the list is filtered
(3) Double-click the network.http.spdy.enabled.http2 preference to switch it from true to false
Note added March 24 2017
Since updating Firefox to 52.0 the problem is fixed and I have restored the above entry to True.
BBC iPlayer is now moving away from Flash towards HTML5, which is excellent news. But in recent versions of Firefox (e.g. 49.0) I found nothing was happening when I tried to play programmes. The solution is quite simple.
Select New Tab and enter about:config (the warnings about this being dangerous no longer seem to appear; ignore them if they do).
In the search box, insert "media" (without the quotes). Look through the list that this produces and find:
Toggle this to "true" by clicking on it. Now you can exit about:config and BBC programmes on iPlayer will work correctly.
I gave a recommendation here in May 2016 based on my experience of buying a refurbished desktop from them. That computer is still working well, and encouraged by this I place another order with them recently for a refurbished monitor. Unfortunately my experience this time has been very different. The order is still marked as Unfulfilled and I cannot get any response from them either by email or phone. So I'm now £79.99 out of pocket. I can only advise anyone who reads this NOT to have any dealings with Novo. (Eventually I did get a refund just before they closed -- see below.)
Note added 30/4/2017: They've now ceased trading, although I I think Zack, who owned the firm, is starting up a business under another name. Definitely to be avoided.
BBC IPlayer now offers HTML5 as an alternative to Flash. This really good news; it means that I can access the programmes directly on OpenBSD with Firefox or Chromium. If you don't have Flash on your machine the BBC will detect this and provide HTML5 instead. (I think that if you do have Flash you have to opt for HTML5.)
This is still in beta but it works well for me. Some things aren't yet available but most are.
If there are problems, see Firefox: enabling HTML5 for BBC iPlayer
A couple of weeks ago I bought a memory upgrade for my Thinkpad Z61m from Crucial UK. It arrived the day after I ordered it and installed and worked perfectly so thank you Crucial. Today they sent me an email asking me to review the product: "it's easy - just click on the link." Oh yes? I couldn't see the link either in my standard email program (mutt) or in Firefox. I also tried viewing it as text with an editor but it was so incredibly complex that I could make nothing of it.
I really would have liked to give them a good review but I can't. So Crucial get full marks for me for their product and service but zero for their post-sales communication skills. Talk about shooting yourself in the foot.
I used various flavours of Linux for many years, but since 2014 I've changed to OpenBSD. This happened more or less by accident. I first installed OpenBSD largely from curiosity, not dissatisfaction with Linux. But the more I used it the better I liked it. until I finally installed it on all my computers.
At first I kept one laptop running Linux so that I could use Adobe Flash and Skype, neither of which runs on OpenBSD. But Flash is no longer maintained for Linux and the sites that demand it (fortunately a decreasing number) complain that the version on Linux is too old. Skype is no longer available for 32-bit machines (like mine) so that is no longer a reason for me to keep Linux.
OpenBSD is often praised for its security but that wasn't what attracted me initially. I didn't think myself to be particularly vulnerable, but I've changed my mind somewhat now in view of the increasing quantity of internet fraud and the number of ISPs and other holders of data whose security has been breached (TalkTalk is the latest example as I write). OpenBSD gives me a degree of confidence, though I hope not complacency.
There is a different kind of security that I also care about: what to do if everything goes wrong. Recently I stupidly managed to delete my /etc directory, thus rendering my system unbootable. I regularly backup /home via tarsnap, but of course I needed to reinstall the system. OpenBSD is the easiest OS to install that I've ever used, so reinstalling took only about half an hour. I still had to fetch the third-party packages that I use, but I keep a list of those so I knew what I needed to get. Best of all, I didn't even need my backup of /home; OpenBSD helpfully sets up a separate /home partition by default and I could avoid overwriting this during the reinstall. Recovery from my mistake was therefore relatively painless.
I could have done all this on Arch or Debian too, but installing those takes a lot longer.
Using OpenBSD as a desktop
I find that OpenBSD works well as a desktop OS. Any disadvantages? I've already mentioned Flash and Skype, both of which have security risks so you are better off without them if they are not essential. Arch and Debian have more packages than OpenBSD but in practice this hasn't made much difference to me. Arch is more bleeding-edge than OpenBSD but again that hasn't been a problem. And I like the *BSD concept of having a unified base system, which even includes X in the case of OpenBSD.
The stability of OpenBSD is excellent. I use the -current flavour, which is roughly comparable with Debian Sid or Arch. This does occasionally spring the odd surprise on you, but in almost 3 years I've never had any major problems.
There's a lot more to say about OpenBSD as a desktop OS, including why I find it works better for me than does FreeBSD, but I have other posts about that and I won't repeat myself here. Please use the tags to read more.
Revised 5 January 2018
I have a variety of computers, ranging from a desktop (Dell 3020 i3-4150) through pretty antique Thinkpads (32-bit). All run OpenBSD.
OpenBSD was probably the easiest OS to install that I've ever tried. By simply following the defaults (except for choosing 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.
But of course nothing is ever as simple as it seems at first. Coming from a Linux background I had to adapt to new ways of thinking. This particularly applies to updating/upgrading the system.
There are three "flavours" of OpenBSD which are upgraded or updated differently.
1. There is an official "-release" every 6 months, in May and November, from which you can upgrade your system.
2. There is a "-stable" branch which only gets serious errata and security fixes; you have to compile this yourself from source and it doesn't get you anything new (so you can't install new versions of third-party packages, since they won't work). This could be compared to Debian Stable.
3. There is also a "-current" branch, in which the developers post their new code. It is updated frequently both as code and as "snapshots". There are differing opinions about the desirability of using this but plenty of people do it on production machines. I've now done numerous snaphot upgrades and there have been no serious problems in 3 years. Snapshots are roughly comparable to Arch or the 'Sid' branch of Debian, but in my experience OpenBSD -current is more stable than either of these. (Incidentally, the "-release" referred to above is simply a snapshot at a particular moment, so if you're following -current you don't need -release and shouldn't use it.)
Packages are maintained separately from the core system and have to be upgraded separately.
Keeping OpenBSD up to date with snapshots and packages isn't difficult although it does take a little time to do (mostly downloading the files). But you don't have to do it too frequently—just when you think it is necessary, perhaps because a new or updated package that you need has become available or to maintain security.
POSSIBLE DISADVANTAGES IN USING OPENBSD
1. The number of packages available for OpenBSD is smaller than in most Linux distributions. I found most of what I needed but in a few cases (qsf, sitecopy) I had to compile my own from source. This happened smoothly.
2. Some packages are rather old. Mostly it doesn't matter too much, but it can be a problem. For example, I transferred a lot of slides made with LyX and Beamer on another machine, and when I wanted to edit them I couldn't because the OpenBSD version of LyX was not compatible with the one I'd used previously. (LyX was updated a month or two later for OpenBSD, after which the problem disappeared.)
3. Some things I looked for simply don't work on OpenBSD. One of these is Flash, which is still needed on a few sites although the number is fortunately decreasing. There is no Flash for OpenBSD and most people who use the system don't want it anyway because of its poor safety record.
Skype is also not available for OpenBSD. If you need this you will have to use 64-bit Linux.
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 might seem logical to install OpenBSD and Linux on the same machine and dual boot, but although this is technically possible it's harder to do than you might expect. You are probably better off using at least two machines rather than attempting to dual boot. Virtualisation is another possibility but I haven't tried that.
If you want to use OpenBSD you have to be willing to learn 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. One of the most important is knowing where to look for help.
OpenBSD users are always advised to read the (excellent) man pages, which often provide the answer, so that's usually the place to start. The online FAQ is also essential reading.
All the Linux distributions I've used have mail lists and these are probably the most widely accessed resources for help with the different distributions. OpenBSD has a general mail list (firstname.lastname@example.org) but this is not the place to ask newbie questions. Most of the discussion is more technical than what you will find on a typical LInux list and many of the topics are not relevant to desktop users. I read it daily and learn from it, but even after 3 years much of it still goes over my head.
A better place to go when starting out with OpenBSD is www.daemonforums.org. There are some very knowledgeable people there who kindly and patiently answer beginners' questions. I'm extremely gratdful to the people who post on this site, who helped me a lot in my early months with the OS. Remember to search the site before you ask your question; you'll often find that it's already been answered.
Google (or in my case duckduckgo) might seem like an obvious place to go for help but be careful. A lot of what you find there is out of date or misleading so it's seldom a useful resource.
For help with a particular ported package you can email the developer who packaged it. I've had helpful replies in this way.
Finally, anyone who has decided they want to use OpenBSD regularly should get a copy of Absolute OpenBSD (2nd edition) by Michael Lucas (ISBN-13 978-1-59327-476-4).
I have a variety of computers, ranging from a desktop (Acer Veriton M460) through Thinkpads of several kinds, both 64-bit and 32-bit. All run OpenBSD but I have tried FreeBSD in the past and here I offer some comments on my experience.
Installation of the base system (no X) is easy enough although not quite as straightforward as for OpenBSD.
Now you can install X and anything else you want, using the new and improved packaging system (pkg). This is much easier than installing everything via ports, which is what I had to do previously, although ports are, of course, available if you want them. Sound worked out of the box for me.
So far, so good, but I encountered a few difficulties setting things up as I wanted them. You will note that some of them concern third-party applications and not FreeBSD itself.
1. Blank black screen on exiting X
At first when this happened I thought I needed to do a hard reset using the power button to get out. Then I found I could reboot by typing the command in the (invisible) terminal, although I couldn't see anything on screen. The real solution to this problem is to put this line in /boot/loader.conf:
2. Entering "Sleep" when lid is closed
This worked out of the box for me wth OpenBSD but it seems to be a problem in FreeBSD, to judge by the discussion on the Net. I found that it was enabled for me with this command:
To make it happen on boot I inserted the line in /etc/rc.conf.local. I think some machines may need something other than S3, and the command may not work for all machines.
Note added after upgrading to 10.2: lid switch and suspend to ram no longer work; in fact, they lock the computer up and I have to do a hard reset.
I use fetchmail to collect mail from my ISP. In FreeBSD I got error warnings about certificates being incorrect, although the mail still arrived. The solution is given in the fetchmail man page: use these switches to eliminate the error messages:
fetchmail --sslproto 'SSL3' --sslcertck
My printer is a networked Brother HL5250DN. In OpenBSD printing worked fine with CUPS. In FreeBSD I set up CUPS without problems and a test page was printed, but I couldn't get lpr, lp, or lpq to work. This seemed to be because of a conflict with the native BSD printing commands, but stopping the BSD daemon didn't help. After a day's fruitless experimenting I followed the example of another FreeBSD user I found on the Net: I gave up on CUPS, used the BSD daemon following the setup instructions in the FreeBSD manual, and installed apsfilter. I then got good printing, using the generic Postscript driver.
Here is my /etc/printcap.
# - don't delete start label for apsfilter printer1
# - no other printer defines between BEGIN and END LABEL
# APS1_END - don't delete this
5. LyX on FreeBSD
I use LyX a lot, for writing books and papers and for making slides with Beamer. When I loaded a Beamer file to edit it, LyX complained that beamer.cls and a number of other files weren't on the system. I therefore installed the texlive-texmf package which is supposed to provide the necessary files. But even after reconfiguring LyX it still complained that the files were not there. After more on-line research I found I needed the tex-formats package as well. (It provides pdflatex.) FreeBSD has been criticised on DistroWatch for failing to install all needed dependencies for third-party packages.
6. Using a scanner with xsane
I have an Epson Perfection 1650 which works well with xsane on Linux and OpenBSD. There is a packaged version of xsane for FreeBSD so I installed it, but the scanner would only work as root. This is a permissions problem. There are two methods of solving it.
Method 1: modify the permissions
1. make a usb group and add yourself to it:
pw groupadd usb
pw groupmod usb -m
2. Add yourself to the operator group:
pw groupmod operator -m
3. in /etc/devfs.conf insert this line:
perm xpt0 0660
4. in /etc/devfs.rules insert these lines:
add path 'ugen*' mode 0660 group operator
add path 'usb/*' mode 0660 group operator
add path 'xpt*' mode 0660 group operator
5. Very important: activate the entry in /etc/devfs/rules by adding this to /etc/rc.conf:
6. Reboot. You should now be able to run scanimage -L and xsane as user and have them find your scanner (assuming that it is supported by sane, of course). Note that sane-find-scanner probably still won't find it as user. (It does work as root but for some reason in my case it finds both my Epson scanner and another scanner that I don't have!)
Method 2: use the saned daemon
To do this, add these two lines to /etc/rc.conf:
Then restart the machine either by rebooting or running (as root):
service saned start
Next, add this line to /usr/local/etc/sane.d/net.conf (you may just need to uncomment it):
I'm grateful to several correspondents on the freebsd-questions mailing list, especially Warren Block and Patrick Hess, for help with this problem.
FreeBSD works well as a desktop once you get it set up as you want. But this can take quite a bit of time because in some cases finding a solution to difficulties isn't easy and can need a good deal of research on line. Some of what I needed to know wasn't documented and I depended on the kindness of people answering in freebsd-questions@. For a comparison with OpenBSD, see see the taglist below.
Most people who think of trying a BSD would probably go for FreeBSD, but OpenBSD is also a possibility. and is what I prefer. Here I offer my assessment of the differences.
Both are easy to install, OpenBSD slightly more so. But the difference isn't important.
On OpenBSD very little needs to be done. In particular, X works out of the box. Both systems have very good packaging systems, but FreeBSD doesn't always install all the dependencies you might need. For example, I had a lot of difficulty getting LyX Beamer to work on FreeBSD because of unsatisfied dependencies that took quite a time to figure out. FreeBSD has more packages than does OpenBSD but so far I've missed only two that I needed on OpenBSD: qsf and sitecopy, both of which I compiled myself without difficulty
Sometimes things that you would think would be easy need a lot of work in FreeBSD. For example, getting xsane to work as user took me hours in FreeBSD whereas it worked out of the box with OpenBSD. The same applied to printing with CUPS. And FreeBSD gave me a blank black screen when I closed X; there is a solution to this but why did I have to spend time finding it? Suspend to ram worked automatically in OpenBSD but needed research in FreeBSD, and after a minor upgrade from 10.1 to 10.2 it stopped working again (and locked up the computer when I tried to do it).
Both OSs can work well as desktops but FreeBSD needs a lot more work to achieve this than does OpenBSD. For that reason I'd say that OpenBSD is the better choice. I have a lot more information about both OSs; please use the BSD tag below or on the right.
I was a Linux user for many years but I was drawn to the BSD philosophy of having a core system to which third-party packages can be added. I know that quite a number ot Linux users feel the same attraction, and some try out a BSD system, although I suspect that most go back to Linux fairly quickly. The BSD system most often chosen for such experiments is FreeBSD, and here I offer my experience of using this as an alternative to Linux. As I explain in other posts here, I found that OpenBSD better for the desktop than FreeBSD, but FreeBSD is certainly a possibility and here I offer my experience of using it.
What I want in a desktop
Perhaps I should have said "What I don't
want in a desktop". I don't want Gnome, KDE. or any other desktop environment. I don't want complicated window managers either, with lots of widgets or decorations. My window manager is spectrwm; if I wasn't using that it would probably be dwm or ratpoison. If you are looking for more fancy stuff you probably won't use any BSD, although I'm sure that both FreeBSD and OpenBSD can provide it on request. My computing philosophy is KISS (Keep It Simple, Stupid)
I find that FreeBSD gives me a lot of what I want but it does have some fairly important problems for the desktop user. For details of these and how I (mostly) solved them, please see FreeBSD: Full details
More links to my other posts on BSD below.
Writing Greek text is quite difficult in Linux and BSD, especially if you want all the accents, breathings etc. used in Classical Greek. But I've found an easy way to do thjs via your browser (Firefox in my case). Simply point the browser at Type Greek
. You can type your Greek text here and then cut-and-paste into LyX or Libreoffice.
For writing Greek using vim, please see Writing Polutoniko Greek With Vim and Latex
Many Linux users, I think, harbour a curiosity about the BSD family and quite a few try out one of its members, though I suspect most of them return to Linux fairly quickly. I did so myself in the past but I now use OpenBSD on all my computers. I used to think it was only of interest to people running servers, but 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). (DistroWatch now has a more recent review of OpenBSD
.) But why did I make the change?
What I want in a desktop
Perhaps I should have said "What I don't
want in a desktop". I don't want Gnome, KDE. or any other desktop environment. I don't want complicated window managers either, with lots of widgets or decorations. My window manager is spectrwm; if I wasn't using that it would probably be dwm or ratpoison. If you are looking for more fancy stuff you probably won't think of using any BSD, although I'm sure that both FreeBSD and OpenBSD can provide it on request. In computing my motto is KISS (Keep It Simple, Stupid).
For further details of my experience of using OpenBSD as a deskto please see OpenBSD: Full details
Spectrwm seems to be the best-kept secret on the net, or at least among tiling window managers for linux. It gets less attention than others although, for me, it's the best.
In fact, it's elusive to the point that googling didn't tell me where to find the source code for the latest version. One link gave me a quite out-of-date file. For the most recent available version see here
. (Of course, your distribution may provide a precompiled package too.)