Hacker News new | ask | show | jobs
by pimeys 4617 days ago
I'm a big OS geek, I love to install and test all new operating systems. Does anybody use OpenBSD as their main development OS? At least there's ports, and looks like you can compile all the necessary tools (xmonad, vim, firefox, zsh) from the ports system. But is this the ideal use of OpenBSD? Do I gain something if changing from Gentoo?
7 comments

I use OpenBSD in a development environment. The environment happens to be offline, so the win for OpenBSD here is that it is very easy to work with in places where you don't have internet access. The entire system comes on CDs that you can carry around, and you can easily work offline with a local copy of the package repository when you need to install something. The included man pages are excellent, and are all you really need to consult when configuring the system. I find it is generally more productive to consult the man pages than search the internet when trying to do something.

Aside from being easy to work with when you don't have internet, the other upsides are the small footprint and light resource requirements, built in VMWare support, transparent and simple configuration and system initialization, and overall Just Works factor. The package repository has the things I generally want, and it's easy for me to set up my preferred development environment (xmonad, vim, firefox). As far as actually doing development, it's much like on any other *nix (xterm, vim, ruby, python, etc.).

If you're an OS geek, I don't see why you wouldn't want to have a look. I don't know if you'll prefer it over Gentoo, but you may be pleasantly surprised by the functionality and simplicity of the system. I find it a bit of a breath of fresh air when I get to it after time spent on Linux or OS X.

"A breath of fresh air" is exactly the expression I've used to describe my experience with OpenBSD. It feels so simple, clean, consistent, and well documented. After using it for a while everything else starts to look like a clusterfk.
OpenBSD is made for developers by developers. Everything from configuration files in /etc to any system API calls are well documented in the man pages. They treat the man pages just as any other piece of the operating system. I.e. incorrect information in a man page is treated as a bug and dealt with just as diligently.

http://www.openbsd.org/cgi-bin/man.cgi

I moved from using Gentoo for 10 years to OpenBSD and have not looked back.

Edit; You gain quite a bit of time moving from Gentoo to OpenBSD because there is no requirement to compile or fix your operating system.

I use OpenBSD as my main desktop and dev machine, with Awesome as the window manager (it's a tiling window manager).

http://awesome.naquadah.org/

I use Xombrero (formerly called xxxterm) for browsing, or Chromium from packages if I'm working with anything on Google.

https://opensource.conformal.com/wiki/xombrero

I use Emacs as my editor and email client, and do pretty much everything else in a terminal.

Are you using any specific font setup? Infinality patches etc? At least default install leaves the fonts in a pretty bad state.
The fonts are looking nice and sharp for me:

http://s24.postimg.org/n94n4dred/fonts.png

I fetch freetype via CVS from xenocara tree:

    cvs co xenocara/lib/freetype
Apply the subpixel patch (the Adobe CFF stuff is already default in -current):

http://dpaste.com/hold/1438578/

And use the following `~/.config/fontconfig/fonts.conf`:

http://dpaste.com/hold/1438579/

You might also want to delete `/etc/fonts/conf.d/30-lucida-aliases.conf`.

Forgot to add, after you uncomment the subpixel stuff, just do a `make && sudo make install && make clean` from the `xenocara/lib/freetype` directory.

Also, repeat the same after each snapshot upgrade, as the X sets will overwrite it every time, naturally. Don't forget to keep it updated as well, with `cvs up`.

Hm no.. have never heard of Infinality and didn't see anything OpenBSD-specific.

I'd say if you're needing extensive font support, or do any really heavy graphics work, OpenBSD may not work well for you as a desktop. For me, the stock fonts on OpenBSD meet my needs.

What do you code?

That awesome looks um.. awesome. Never come across it before. I have an old netbook here that has a broken trackpad. I might be tempted to give it a go with that.

Please try out the tiling window managers. Awesome, i3 or Xmonad are all great work environments. The learning curve is maybe a bit tough, but when you get over it, you just can't go back.
Right now I'm working mostly in python and javascript, with some database development (mysql and postgres) and general sysadmin (can't ever seem to get away from that). I've had success using the FreeTDS and sqsh packages to do SQL Server work (with a remote server, obviously. In theory you can run VMs on OpenBSD using qemu but the one time I tried it was so painfully slow it wasn't worth it).
I used it for a while as a desktop. Maybe it's because I have an old Thinkpad, and I know OpenBSD is being developed mainly in old Thinkpads, but everything works just a little better in OpenBSD. The video, sleep/resume, power, wifi, etc. Everything just works a bit faster, a bit cleaner. It's like FreeBSD but without feeling that a script kiddie will remotely crash or pwn your box.

If you limit yourself to the package repository (about 10K packages) everything just works. Compiling things from source often doesn't, (not different than many linux distros). Tip: use the binary packages.

Also it can't run virtualbox or any other virtualization software, so sadly had to switch to Linux again. Soon...

It can run qemu.
I tried luck with FreeBSD and OpenBSD, but just couldn't.

Yes, I love both Operating Systems, I love that they are integrated and somewhat less retarded than Linux, I also like their community and development team and OpenBSD's focus on security and code-correctness.

But they are not yet "there" for Desktop use, many applications won't work or will be difficult to set up, and driver compatibility is way worse.

So maybe in a couple of years I'll switch to FreeBSD as a desktop, but for now Funtoo is still fun and somewhat usable.

Or you could switch to Mavericks which is based on Darwin that was forked from FreeBSD, and desktop ready. ;)
You probably know this, but the Darwin/FreeBSD relationship is much, much more complicated than a fork.

Darwin's the successor to NeXTSTEP, which included a Mach microkernel and some BSD APIs and userland. When they developed OS X, Apple updated much of the userland using more recent FreeBSD versions as a base.

Even more confusingly, Apple has contributed some subsystems to open source that have made their way into FreeBSD (notably the compiler and libc++).

So Darwin's not a fork in the same way that OpenBSD is a fork of NetBSD.

I will if you pay me a Mac :P
But is too complicated system underneath for me to use. I love Funtoo/Gentoo for it's simplicity. I know exactly what's installed to my system and how I should configure it. With OS X, Ubuntu or Windows, I don't have that feeling anymore.
Before I switched to Mac, I ran OpenBSD for about a year on my primary laptop. It was a pretty good experience but my laptop stays plugged in 90% of the time. I took a pretty good hit on battery life and that would have been a pain if I traveled more. OpenBSD really felt more at home on my server but it still makes an OK desktop. Last I checked GNOME3 wasn't fully operational, but I think it was coming along.

You are really encouraged by the communtiy to use packages over the ports system, but you'll find everything you listed in both.

i'd use it for firewall.

I hear pf firewall is awesome.