2015: The Year of the OpenBSD Desktop
zacbrown.org
zacbrown.org
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).
Desktop Linux has come far from where it used to be just 5 years ago.
When you have simpler needs, like me – you want to run Linux software on a desktop computer that's comprised of well-known, widely used and well-supported hardware, desktop Linux with Fedora Core “just worked” over twelve years ago. (NVIDIA's proprietary drivers never came and never will come by default, but I considered that less a requirement when you had to install them yourself on Windows XP, too. The drivers were already back then top notch.) I wasn't that good with computers back then, and my biggest gripe, by far, were the fonts that didn't look like the pixelated fonts I'd grown used to with Windows'.
I'm trying to work out how to set up cups printing to a Samsung printer (splix drivers) and keep suspend working when the cups daemon and dbus is running. Oh, and hot plugging USB sticks (toad) with XFCE4 and having problems.
So I slink back to Debian Sid which just works...
OpenBSD works fine and suspends on a ThinkPad X61s but trying to keep that going with a variety of services seems to be complex. I'd be delighted to rtfm if anyone has any pointers...
I did spend some time to make toad work with xfce for the 5.6 release (resulting in reports such as https://bugzilla.gnome.org/show_bug.cgi?id=724916). If toad is really broken in 5.6 I'd really like to know how and why.
Yes, I had hotplugd installed and starting up, after which suspend/resume stopped working.
Thanks for reply - I'm motivated to put 5.6 back on the X60s test laptop and have another go at it all and perhaps post bugs.
So I think we need to rethink whether out-of-the-box driver support is sufficient for the Year of Linux on the Desktop. It seems like it's necessary, but not enough to get people to move over en masse.
Luckily, Windows screwed up with Windows 8, and ended supporting XP, which did gave a certain popularity to Linux platform. Most people I know (now to be clear, I'm talking about non-tech related people) learned about Linux in that area of time.
This is coincidentally the same time when I made the switch, not because of those reasons, but it happened around that time.
So, to really have "a year of Linux", Windows will have to make a lot of screw-ups, Linux will have to offer something new to the table, and there are many other prerequisites as well. Moving most of the Windows applications to the cloud does definitely help. I love being able to edit Word documents and to use Evernote without anything installed on my hard drive.
I was surprised that a modern computer like a NUC wouldn't work with Linux out of the box.
I'd like to share that I have the same experience especially with 14.04. I work with huge array of industrial printer from digital to thermal(HP/Epson/Canon/Xerox/Zebra). Vendor only officially support Windows 7 64bit, but it works perfectly on Ubuntu 14.04 that upon our advice, one of our vendor started to recommend 14.04 for their other client.
(Manjaro is an Arch based distro; I can see how Steam being on a default install would upset some people)
IMO, if someone doesn't like the design philosophy because it strays too far from Arch, why do they care? It's not actually Arch Linux. It doesn't affect them. That's the beauty of a fork.
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.
Windows Desktop is thought in a top down approach. There was a lot less design than in the unix world (historically no permissions, no package management etc). You download a .exe, then you get a new icon. Plus its ubiquitous community, making weird things solvable (something Ubuntu leveraged too). It's a more "human" approach, people don't have to really think through, it either work or they find someone to make it work, whether or not it's built on solid principles doesn't matter for the average joe. That's what, to me, people called a Desktop. Also it used to be a centralized, even though now Windows embeds different frameworks (and starts to feel like linux dependency papercuts). In linux you have options, leading to paradox of choice.
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.
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.
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
Note though that in current the login.conf defaults for the default user have been raised on amd64 at least: http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/etc/etc.amd64/l...
If you're talking about changing settings or installing apps after the fact, that can all be slipstreamed.
In Linux-land, you can do all of the above as well with kickstart/derivatives.
When I installed OpenBSD on it, I could get Gnome 3.10 working but I was unable to find a good way to use the wireless working without having to use the console.
I use Ubuntu on my home laptop, and I agree that it doesn't quite work 100% yet compared to OS X (or, uh, Windows), but it does have the most user-friendly installation of the Linux systems out there.
As for burning CDs - CD drives are becoming a legacy technology.
I find Arch Linux to be the opposite. I've spend more time tweaking it than any other distro. However, that may be because it is so tweakable. Also, things like to break in ArchLinux on normal updates more than other distros, so be prepared for some .pacnew tweaks if old config files aren't compatible.
That being said, I run Arch on my secondary machine, and it's the best fit I've found in the *nix world.
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.
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.
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.
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?
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.
Hmm. I was trying to be snarky there, but now that I think about it, it might not be so far off the mark...
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).
Get the vendors to make wifi firmware freely redistributable (or even better, fully open source + build instructions) and it will work out of the box.
hell, vendors can't even be bothered to use consistent chipsets from one shipment of product to the next. The Linux community are left with checking serial numbers or product skus and maintaining wiki sites with cross-referenced tables that tell us if a given product is known to work or not. That's the world of Linux webcams and wifi.
Sadly, if there were more Linux desktops the vendors would take more care. Until the vendors take more care there won't be mainstream Linux desktop adoption.
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).
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
Your ethernet chip is bce(4) which really needs this fix if you have more than 1GB of RAM in the machine: http://marc.info/?l=openbsd-bugs&m=142195923213919&w=2
Alternatively install a -current snapshot. bce(4) should just work there.
OpenBSD is awesome...but anything that uses X windows isn't going to be the majority desktop anytime soon.
I'm also sure he's joking that this is the year of the BSD desktop, and it's a funny joke.
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.
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.
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.
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.
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.
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).
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
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.
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.
Don't forget twm.
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.
"I won't cover how to burn an ISO to a CD."
I remember when people complained about Slackware for the same issue.
http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man1/...
http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin/ksh/history...
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.
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.
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