
2015: The Year of the OpenBSD Desktop - zdw
http://zacbrown.org/2015/01/18/openbsd-as-a-desktop.html
======
mclemme
"Now don't get me wrong, Linux does great things but it's never worked out of
the box well enough as a desktop. There's always something to tinker with,
some driver to compile, some knob to fiddle with."

Been using Linux (Ubuntu LTS releases) as my everyday desktop and laptop OS
since around 2007/8\. I had issues at first with drivers, especially with wifi
and graphics cards.

But lately (approx since Ubuntu 12.04 LTS), stuff just works, no need to
manually install or compile anything, no need to tweak anything unless I want
to. Of course you can find hardware that doesn't work on Linux, but that's
just a matter of a bit of googling before buying a laptop/desktop.

I've found that lately, it seems like Ubuntu requires less fiddling than osx
or windows, especially with printers & scanners, where I just plug it in and
it works (or it auto detects if it's on a network). But colleagues on windows
or osx have to download drivers, usually filled with crapware (i.e. "YOU ARE
OUT IF INK, BUY IT HERE" messages, unless they're careful to download the
barebone drivers instead of the full driver pack).

~~~
cbd1984
It seems "ready for the desktop" when applied to Linux means something
different from "ready for the desktop" when applied to, say, Windows.

Windows: It can come with crapware pre-installed, such as "personal firewalls"
and "antivirus" software which are mainly ad delivery platforms for the
partners of whoever sold you the hardware. It can require you to go to
malware-ridden sites with deliberately deceptive webpage designs in order to
download some kinds of software. It occasionally requires maintenance in the
form of digging through sometimes deliberately obfuscatory registry settings.
It only runs Windows software; if you try to run Mac or Linux software on it,
people laugh at you like you're insane. That's ready.

Linux: It must have no deficiencies. It has a package manager which performs
dependency tracking (something alien to Windows, as far as I know) and
contains no malware. It can never requires maintenance of any kind. It must
run Windows software flawlessly. Only then will it be ready.

MacOS X: It has settings you can't change. It does things its way. If you
disagree, you're wrong. It runs nobody else's software. That's ready.

~~~
akira2501
> if you try to run Mac or Linux software on it, people laugh at you like
> you're insane.

We make good use of cygwin at our workplace. While it's not a perfect
solution, it's very easy to install and use. It's incredibly useful to run
linux/unix applications "inside" a windows environment.

~~~
aceperry
I haven't tried cygwin in quite a few years, but I hear that it's improved a
lot. Still a large installation though, but very useful if you must use
windows.

------
thomashabets2
"I installed OpenBSD 5.6 on my old Thinkpad x201 and much to my surprise, it
just worked. [...] WiFi required a firmware update [...] I won't cover how to
burn an ISO to a CD. [...] the various tweaks to config files in OpenBSD in my
'configs' github repo [... etc...]"

Is this a joke?

"Just worked". I don't think those words mean what you think they mean, even
with the backtracking at the end of the post.

Marcellus Wallace would have something to say about how near "just worked"
that is.

~~~
rufius
So I'm the author of the linked post. I hadn't ever used OpenBSD seriously in
a desktop setting. I've installed it for servers to play around with.

And to answer your question "Is this a joke?", my writing is partly in jest
and partly in seriousness. The fact that I had the laptop configured in about
45 mins (still faster than setting up Windows) was a surprise to me. It's
faster than attempts at setting up Linux on it. Exception might be Debian but
I've slept since then.

Regarding configs, those are just preferences. With the exception of the
trackpoint middle click button, I don't actually need any of the other things
as some nice OpenBSD devs have informed me. For example, the PF settings I
included aren't necessary.

edit: expound on configs

~~~
ams6110
I would say that to really use OpenBSD as a desktop OS, the login.conf tweaks
are non-optional. Otherwise you will find "big" software like browsers with
more than a few tabs open, Office suites, etc. being killed due to the default
memory limits.

~~~
tedunangst
Minor correction: firefox (at least) isn't "killed" due to memory limits.
firefox segfaults because it tries to allocate memory and doesn't check for
null. chrome in effect works around the memory limit by using one process per
tab.

------
xyproto
I recognize the problem of distro hopping for years and the comforts of
proprietary operating systems. Then I found Arch Linux. Once installed, there
is less fiddeling than for any other system I have tried, for my usecase. I
tried installing OpenBSD on my laptop about a month ago, and it failed
miserably, as it could not recognize the wireless network driver. There was
also talk about this ancient technology called CD-ROM, which was disturbing.
Within less than an hour, Arch Linux was up and running with all my favorite
applications installed and a fully working desktop / window manager.

~~~
stsp
If the internal wifi doesn't work you could try a supported USB-based wifi
adapter. Your internal card might eventually be supported. If having internal
wifi is very important then try before you buy.

Do you remember what Linux wifi support was like between 2000 and 2010? Wifi
drivers are pretty hard to write and there are virtually no docs for any of
the available hardware. Linux (and FreeBSD, too) have better wifi support
nowadays because vendors have finally started writing drivers for those
systems. Look at the email addresses of authors in copyright statements of
Linux drivers for Atheros, Broadcom, and Intel cards, for example, and you'll
see that this driver code was written in-house by vendors. OpenBSD doesn't get
that level of support from vendors.

~~~
stsp
By the way, add Realtek and Ralink (now Mediatek) to the above list of
companies writing drivers for Linux.

And now name a wifi chipset that isn't made by one of these companies. :-)

It's awesome that Linux has achieved this kind of support. But this is a
luxury. Don't take it for granted. It took a long time and a lot of energy to
get there. These companies are still keeping hardware docs under NDAs so it is
very hard for other open source systems to compete fairly.

------
gonewest
When the article says "wifi required a firmware update" the premise that
openbsd "just worked" is false. This sort of tweaking and configuring is
exactly the same as for any Linux distro. We've been doing this sort of Linux
tweaking in my employer's systems group for 15 years, and no end in sight. For
that matter, the same as downloading a new device driver for wifi on Windows,
and of course we all have shared that experience too.

It seems to me that the only way you get a seamless experience with an OS
install is if the hardware vendor has carefully tested and tuned the OS
configuration for that specific piece of hardware. Apple does this, and even
they aren't flawless.

~~~
brynet
OpenBSD packages firmware and handles it automatically on first boot with
fw_update(1). There is no "manual tweaking", it just means that some wireless
adapters won't function using the ramdisk kernel for installation.

~~~
vacri
If it was automatically handled, why would the author mention it specifically?

And if you have to go to the "very thorough OpenBSD documentation" just to
configure basic desktop setup, then no, it doesn't "just work". You shouldn't
need to go to documentation to set things like timezone or user/pass, so why
is documentation mentioned for a "just works" install?

~~~
brynet
If you don't have wired networking configured, fw_update(1) won't be able to
fetch firmware on first boot, in that case it needs to be run manually.

The timezone and a default user can be created during installation, however
yes, it is perfectly acceptable to expect that a user is capable of reading
documentation.

~~~
vacri
It is not perfectly acceptable to claim "just works" if the user has to read
documentation. It violates the definition of "just works" if you have to crack
open the docs.

~~~
girvo
Okay then, with that definition no operating system I've ever used has "just
worked".

Hmm. I was trying to be snarky there, but now that I think about it, it might
not be so far off the mark...

~~~
vacri
Yes, any task you have to read documenation for is, pretty much by definition,
not a "just works" task. Of course, 'using' an operating system has so many
aspects to it that your point is pretty nonsensical. In any case, we were
talking about _installing_ the OS, not _using_ it.

That said, there are several OSes out there that have plenty of users who
never read the docs for _using_ it. Android, iOS, OSX, and Windows all have
teeming masses of people who are able to use them adequately without reading
documentation (just ask someone who's worked a support desk).

------
wampus
I installed OpenBSD on an old Dell B130 last week, but it choked on the
Broadcom BCM4318 wireless controller. I got it to connect with little
difficulty after installing the driver, but speeds were slower than molasses
(it took minutes to establish SSH connections between machines on the same
LAN). Attempts to use the wired Broadcom BCM4401-B0 ethernet controller
prevented it from booting. I finally gave up and installed Slackware Linux on
it again, which also requires extra work for the wireless controller but
yields great performance.

I don't blame OpenBSD and am still looking for an appropriate machine to
install it on. I'm no stranger to the OS, having used it to build transparent
bridging firewalls in the 3.x days. The installer has really improved a lot
since then.

But I am concerned with the state of networking hardware, now that more and
more machines are produced with WiFi only. The number of points for failure
seem to be multiplying and the dependence on an Internet connection is a given
these days (sometimes even during OS installation). I look forward to the day
when all OS installations handle network connections as simply as OS X does
(which I realize is by virtue of its control over hardware & software
integration).

~~~
sdkmvx
> it took minutes to establish SSH connections between machines on the same
> LAN

Most likely you were using a stupid DNS server that did not respond to reverse
queries. See
[http://www.openbsd.org/faq/faq8.html#RevDNS](http://www.openbsd.org/faq/faq8.html#RevDNS)

~~~
wampus
Thanks for the tip. I have three resolvers on my LAN, but two of them require
the FQDN for reverse lookups. I'll make sure to add "search localdomain" to
/etc/resolv.conf next time.

------
cmurf
I like the sentiment, but reading
[http://www.openbsd.org/ftp.html](http://www.openbsd.org/ftp.html) about
buying optical media as the best way to get openbsd, and how to boot a floppy,
I immediately became skeptical. So I did a quick search for UEFI and Secure
Boot and nothing comes up. I see a reference to GRUB (which can be compiled to
boot UEFI computers) and rEFIt which is abandoned in favor of rEFInd. rEFInd
can support both UEFI and Secure Boot. Any Mac or PC with Windows 8+ is (U)EFI
based, and additionally Secure Boot enabled with Windows 8. Yes that can be
disabled and then re-enabled to go back and forth between Windows and openBSD,
but this is pretty well solved on Fedora, Ubuntu, and openSUSE out of the box.
Maybe the best is openSUSE which has the proper chainloader patch to boot
Windows from GRUB in Secure Boot mode, obviating the need to go through the
firmware's boot manager to switch between OS's. If openBSD install media lacks
UEFI support, it isn't a deal killer, however it makes it rather substantially
less "out of the box" if this isn't just dealt with at install time like it is
on at least those three linux distributions.

------
sudioStudio64
Perhaps the fact that simply installing an operating system and being shocked
that it worked isn't really enough to start a mass migration.

OpenBSD is awesome...but anything that uses X windows isn't going to be the
majority desktop anytime soon.

------
TodPunk
I'm pretty sure his surprise is that it mostly works out of the gate, not that
it is a completely tailored experience to his desires. Having it boot to a
desktop and have network access is a pretty big deal, especially with the
expectations for a BSD that would have been set more along the lines of
"server" for me and not "desktop experience."

I'm also sure he's joking that this is the year of the BSD desktop, and it's a
funny joke.

~~~
rufius
You are correct. I use a literary device known as humor.

------
ams6110
The thing to remember in these "ready for the desktop" debates is that for 95%
of Windows or Mac OS users, they never experience the initial installation and
configuration of the OS. The manufacturer of the computer does that, and it
(hopeully) "just works" out of the box. All the necessary drivers are
preinstalled and the OS is configured for that specific combination of
hardware.

With Linux or BSD on the other hand, you're almost certainly installing it
yourself. The basic install for most distros and even OpenBSD is just about as
painless as it could be, but even "simple" questions such as using existing
partitions or creating new are going to lose a lot of folks, to say nothing of
tweaking config files, choosing and configuring a window manager, etc.

Hand a user a computer with a properly installed modern Linux or BSD desktop,
and most would be just fine. So "ready for the desktop" is not really anything
to do with the state of the OS, it's all to do with someone actually selling a
PC with that OS properly installed and configured.

------
edwintorok
I tried installing OpenBSD 5.6 with XFCE on a Thinkpad X300, and I didn't have
any trouble with the hardware I use, or the base system, in fact everything
looks well though out and documented in the manpages. (Gnome works too but it
feels quite slow even on Linux)

In the end I switched back to Linux when I encountered trouble with
applications from the ports, for example libreoffice dumping core everytime
you click somewhere in a spreadsheet. I did write down all the
tweaks/configuration that I've done on the system in an ansible script, and my
plan is to try again with the next release, and report some bugs if it still
fails.

~~~
stsp
Bumping datasize-cur in /etc/login.conf up to at least 1024M should prevent
the libreoffice crashes. It's quite possible that this limit will be bumped up
by default soon as the low default limits keep causing issues with
applications like libreoffice and firefox (though for some setups low limits
make sense).

------
tbrock
No.

I think what the BSDs do is great and they are fantastic for servers of varied
types and sizes however running it on a laptop is backwards. The power
management and hardware support just aren't there, even in Linux, to rival the
kind of integration Apple has with it's hardware and OSX. You can get close
with Linux or windows on a thinkpad, sure, but running BSD on X where X isn't
a server is not the way forward for a non commercial desktop.

Yes Linux and OSX have their own problems today but they aren't the the ones
discussed in this article. Sometimes you have to suffer through changes and
progress for the end result.

~~~
asveikau
So tired of people mocking the OS choices of others. If someone is happy with
Linux or BSD in their own use, how does that equate to a claim that this same
choice is acceptable for everyone and that it is the "year of the _____
desktop"? In the desktop there are many niche choices that some of us make,
they work well for us and I don't think we ought to be mocked for it or told
we can't do it.

~~~
rufius
As the author of the post, I'm not mocking others' OS choice. I made that
title mostly as a joke. I also was just cataloging my thoughts on setting up
OpenBSD 5.6 on a ThinkPad x201. I actually didn't intend for that many people
to read it.

I submitted it to lobste.rs as a resource for people who might be thinking
about doing it, nothing more.

I agree with you that people just choose what works for them. I was just
surprised OpenBSD worked for me on that laptop.

~~~
asveikau
Yeah the comment was not targeted at you. I ran OpenBSD on a laptop for years
until the hardware died and I used Debian on the next one. Recently bought new
hardware and put FreeBSD on it.

These are exactly what I am happy with. Lightweight unix with a lightweight X
setup. Does exactly what I ask and nothing more. I recognize it's not for,
say, my parents. I am not doing it with hopes that it will conquer the world.
But somehow some segment of the OS X crowd is disappointed with this and feels
like they have to mock it.

------
jeffreyrogers
I'm not an OpenBSD user (I was briefly, but now use Linux or OS X because of
software availability, though I may go back at some point), however, one thing
I really like about OpenBSD is the philosophy of doing it their own way. It's
very opinionated and I find that to be a good thing. One of the things I find
frustrating with Linux is that it tries to be everything, which is good for
flexibility, but bad in some other respects. OS X on the other hand has a lot
of opacity to me, and I'm not particularly fond of Xcode or objective-C.

------
linuxlizard
The year of the mixed desktop is upon us. Who can afford to use just one OS
these days?

I use OSX because it's a Unix that runs Photoshop and Python. I use Linux
because the hardware is readily available through /dev and its USB stack is
sturdy enough to put up with my crappy firmware. I use Windows because that's
the only place a lot of tools (e.g., embedded debuggers) and games are
available.

The web browser has really made it possible for me to be mostly OS agnostic
for most "normal" users' desktop needs (email, documents, video, music, &etc).

------
brynet
A lot of people get a bad first impression by trying OpenBSD in
virtualization, if you want to see how it really performs then try it out on
your laptop.

OpenBSD has kernel modesetting (KMS) for Intel and AMD graphics. Here's a
video from OpenBSD's GNOME 3 port maintainer, Antoine Jacoutot:

[https://www.bsdfrog.org/tmp/undeadly-
gnome.webm](https://www.bsdfrog.org/tmp/undeadly-gnome.webm)

He's running 5.5 release in this video, and it looks much better in person. Of
course, things have improved in 5.6 and the upcoming 5.7.

------
Animats
2000 should have been the year of the UNIX/Linux desktop. Windows XP was late,
users were fed up with Windows 95 crashing, the Internet bolt-ons for Windows
95 were not very good, and Windows 2000 wasn't compatible with many old 16-bit
applications. There was a big window of opportunity there. It was missed.

~~~
mkr-hn
Do you mean Windows 98? And I don't think Windows 2000 was meant as a consumer
OS.

~~~
Animats
Windows 98 was a rehash of Windows 95, as was Windows ME. Windows 2000 was a
good desktop OS, based on Windows NT, but many of the crappier 16-bit apps
wouldn't run, so it wasn't much used by home users. Windows XP was Windows
2000 with a lot of Windows 95 kludged back in so that old 16-bit apps would
run and the user experience looked more like Windows 95.

------
owly
When XP was EOL'd, I started wiping old systems (most in rough shape or
running some kind of malware) and installing Lubuntu. Everything has worked
with little or no adjustments, most importantly printers. We use Terminal
services for the few Windows apps that people need, but otherwise they rarely
use it.

------
nailer
Does Is there a desktop Carlisle of being secure enough for OpenBSD? Last time
I installed it X and window managers were in ports and therefore didn't get
the same kind of scrutiny as the rest of the OS. If you're wrecking security
by installing an insecure GUI you may as well run Linux.

~~~
JoachimSchipper
X gets some scrutiny - it now runs with no user-to-hardware access on lots of
hardware, and with restricted user-to-hardware access on most everything (for
more information, look at machdep.allowaperture.)

Window managers aren't common sources of vulnerabilities, but there are two in
base (an older fvwm, and cwm [EDIT: and twm]).

The real problem, of course, is that you probably want a _browser_. Even with
OpenBSD's hardening and secure defaults (-current takes some steps towards not
hooking up gstreamer-plugins[-good] to the internet), browsers are plenty
scary.

~~~
clarry
> Window managers aren't common sources of vulnerabilities, but there are two
> in base (an older fvwm, and cwm).

Don't forget twm.

~~~
rikkus
Indeed, don't. I used twm for years and found it perfect for a simple 'some
xterms' desktop.

------
AustinHook
".profile - This file is loaded for each new logon session. In order to get it
to reload fully, you need to logout and back in."

Just use the dot command in the shell, like if still in your home directory ".
.profile" Or if in root, ". ./.profile"

There is no need to log out and in again.

------
feld
Rufius do you have any clarification on what trouble you ran into with FreeBSD
9.x?

------
zak_mc_kracken
Funny to read an article that says that "X" is going to become main stream and
who opens the argument with

"I won't cover how to burn an ISO to a CD."

------
tux
Highly recommend you try Arch Linux. But if you don't like to configure
anything then Ubuntu may be a better choice for you.

------
crazychrome
2015 the year of elementary os on mid 2007 iMac! everything works out of box,
except have to do source compile for emacs 24.4.

------
seqizz
The most important part of the post was: "YMMV." Believe me, it will.

------
Klasiaster
ridiculous, they missed almost every techinical progress of the last decade.
Also this "year of the desktop" stuff is linked to usability. Debian or Fedroa
do a nice job there nowadays.

------
ExpiredLink
Of course no screenshot. What did I expect ...

~~~
rufius
I could provide one if you like but it looks like any other *nix system
running X11...

------
jkot
Did they finally implemented command history in shell? Last time I used
OpenBSD it was considered as possible attack vector.

~~~
masklinn
?

Command history is a property of the shell and pdksh supports it, it just
isn't enabled if HISTFILE is unset (other shells use a default HISTFILE if
it's unset).

Just `export HISTFILE=~/.sh_history` from your `.profile` and you're done.

~~~
tedunangst
Probably worth clarifying that even without histfile, each shell will keep its
own history in memory. You can still run commands again by pressing the up
arrow. Seems obvious, but people seem to have some funny notions about
OpenBSD.

------
ekr
I don't understand programmers who say that Linux has so and so unsolvable
problem.

A certain program running on Linux has a problem on your particular hardware?
You wanted a Unix environment, so surely you've investigated the market for
compatibility with Linux, when you purchased your hardware.

Second, I've been running arch linux with standard packages on several random
laptops and desktops and never had any problem whatsover. It's been my main OS
for years. Actually my only OS.

Third, a certain program crashes/ has a bug on your hardware? Then switch that
program with something else. If what you care about is a Unix environment for
programming, and Gnome is having some problem with your hardware, than switch
to Xfce, or Xmonad, or i3 ... That the rational thing to do.

If you still want that particular program that's having problems with your
hardware, because, maybe you really like the UI, then by all means fix that
bug. It shouldn't take you more than a few minutes, at most a couple of hours
in 90% of the times. This assuming you're a C programmer, of course, and maybe
some experience with device drivers.

If you're not a hacker, don't like playing with the internals of various
userland programs or OS components, then don't compare Linux with Mac or other
commercial crap. Set up a bounty for fixing your problem, or donate to the
Linux foundation, or the software you would want improved.

\----------------

This being said, I'm currently in the process of switching to FreeBSD (later
maybe some other BSDs), because of the cleaner, lighter code-base.

\----------------

LE: apparently, as seen by recent down-voting patterns on some of my latest
comments, there aren't a lot of hackers on this site. I don't see why a reply
that expresses an opinion that is not hurtful to anyone would warrant
downvotes, but who cares.

~~~
geofft
It's puzzling to me how you could say that fixing driver issues "shouldn't
take you more than a few minutes... assuming you're a C programmer, of
course", and then bemoan the lack of "hackers" on this site, and then believe
that your opinion isn't hurtful. Objectively, if it only takes minutes to
hours to fix driver issues, for anyone who knows C, why are they even showing
up in the drivers I get when I install a distro? Subjectively, do you believe
that passive-aggressively belittling someone's competence (even if you are
correct) is not hurtful?

Besides all that, HN is not a community for expressing correct opinions. HN is
a community for expressing opinions (hopefully, but not necessarily, correct)
in a constructive, respectful manner. Downvotes are not disagreement; they are
an indication that your manner of expression does not build the community that
people want.

You might enjoy (re)reading
[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

