Nice!
> Disable some optimizations in clang(1) due to incompatibility with security.
Released October 15, 2017
Broken links apparent in the doc as well.
I have almost always used it as a firewall or networking appliance, and only rarely used it as a desktop OS, and never on my main machine.
It has evolved over the decades to be a swiss army knife of network functionality that rivals expensive appliances like the F5 in certain areas. Things like PF, CARP, rdomains, relayd, ifstated, openbgpd, ospfd, opensmtp, unbound, nsd and sane ipsec tools among others in the base system allow for some amazing possibilities. Config file syntax of the various tools has been converging on a nice, consistent, mostly self-documenting "standard" as well.
Constant auditing and refactoring has proactively fixed many holes before that were used in exploits on other platforms, and has brought a steady improvement in performance over the years.
As others have pointed out the entire system has a very consistent and well integrated feel. The documentation is very well maintained.
Support of devices with poor documentation or binary blobs has been slow to come, but does eventually tend to make it into the system. 802.11n on atheros is the example of something I personally had to wait a long time for.
Experienced systems administrators may have other reasons for preferring OpenBSD - I really wouldn't know. To me, OpenBSD certainly fills a niche for someone who is fundamentally knowledgeable about computers (and willing to read documentation and write configuration files), yet is not a full-time sysadmin.
Don't get me wrong - my lab desktop at work is Fedora 26, my little lab boxes are mostly running Debian Stretch and I'm an RCHE current on things like SystemD who has a ton of RH boxes I support day in and day out. But OpenBSD is very old school UNIX in its simplicity; there is no cruft in the base OS because it's really built for a few specific purposes.
There are downsides to running OpenBSD; it didn't win any packet shifting races versus other BSDs last I looked, but it is (arguably) the most secure of the BSDs and for a firewall it is undeniably otherwise fit for purpose. Any old $100 refurbished PC from Microcenter and a couple of Intel NICs are all you need to build a whitebox firewall with lots of interesting knobs.
Every time I upgrade I literally throw all my configs to a USB stick, put in a new hard drive and do an install from scratch. Copying configs back and looking for changes between the distributions is the relatively painless work of a couple of hours and forces me to make sure nothing major has changed either in behavior of or the software packages themselves.
If there's any downside to OpenBSD it is that it isn't newbie friendly... I call it a full contact operating system because some of the list members can be abrupt to folks asking questions found in the FAQ.
The problem I had with BSDs was that they were slower than Linux. Especially when it came to boot times, Linux booted up in seconds due to parallel starting of system services. On FreeBSD the same machine with an SSD took nearly half a minute to boot. Some people here on HN had advised me to use a parallel system initializer, or never completely shutdown my laptop. Always keeping the laptop at sleep did not work for me, because I was (and am) very paranoid when it comes to computers, I can't sleep if my computer is not shutdown and has an ethernet cable plugged into it. Using a parallel system initializer did not work, because I was too lazy to set one up.
Battery consumption was another issue. Although FreeBSD provided decent battery life, utilities like powertop did not exist for BSD platforms.
What I liked about FreeBSD was that it was a pure OS. When I opened htop, I could see only a handful of processes running, and I knew what each process did.
On the other hand, everything required manual configuration. I basically lived in the terminal to operate my laptop. But that is probably due to my lazyness to automate and write scripts.
I'd also be interested in the differences in day-to-day life between FreeBSD and OpenBSD.
Even if you power cycle every day. If you ACPI sleep (and it works great), you I'll have to boot your machine once every 6 months, when there is a new OpenBSD release.
I would much rather "spend 30 seconds" every 6 months to boot the OS I want to run for 12 hours/day than to "save some seconds" in months to run an OS that I don't for the same amount of time.
I'm not sure people realize how much complexity you have to add to make a system boot even a couple of seconds faster. If you somehow have to diagnose a problem in a system like this, all the seconds you saved in a lifetime will be spent on a single debugging session.
Downsides are that much of the system feels stuck in ancient times (there seems to be more support and documentation for tape drives than SSDs), the ongoing removal of sometimes useful software like sqlite from base, and anemic or absent support for secondary hardware platforms and features like Bluetooth.
This really can't be emphasized enough.
It's very simple to see what's running. Right now on my OpenBSD system, when I do
ps ax |wc -l
the answer is 51. But that's misleading. Because: nsd 5 processes
ntpd 3 processes
nfsd 5 processes
Etc. So there are really very few processes, and they're all easily understood.In contrast, I just tried the same ps on my macOS Sierra laptop that I'm typing this on, and the count was 510. Ten times as many!!!
Mere mortals can't easily understand all of that.
The new syspatch has saved some time and other than getting a hang of disk partitions, the install is super easy.
My experience is that it's simple to use and well documented.
http://sohcahtoa.org.uk/openbsd.html
...for details. And I'll be updating the page for 6.2 in a bit.
Also, I was using an ancient CardBus ethernet adapter and it kept freezing up. Works fine on Linux. It's just unfortunate that all the things I tried had problems.
Linux just worked on the system I was using.
My first job in IT was such a prolific openbsd advocate that we were listed on their homepage as one of the companies that use openbsd.
My current opinion is that I would never put myself or anyone else through using OpenBSD. Linux can do anything it can and I've actually become an SElinux advocate in the last 2-3 years.
I do however trust it completely on my home firewall and it gives me some practice with BSD.
The OpenBSD propaganda works I see...
Do you really think the tools you use like your web browser, mail client etc, have less vulnerabilities on OpenBSD than on any other BSD or linux distribution, please...
No big deal, but https://www.openbsd.org/images/MoBSD.gif is not found. Broken images sucks, but, again, no big deal.
I'm interested to resurrect this laptop since Apple no longer support (newer OSX can't be installed) the hardware.
I would love to see OpenBSD + Openbox + Crunchbang theme/window-decorator.