Thursday, February 11, 2016

One Week with NetBSD 7.0: Back to Unix basics

It would appear that my One Week with Solaris 10 series was a rousing success - not on account of my research and writing abilities, but probably out of a lingering fondness for that OS among the aging system administrators of the world. Since it wrapped up in December, I've still had SunOS-worshippers visiting those posts and lighting candles in front of them. I myself still daydream of Solaris 10 on a frequent basis, and would happily run it as my production system if I could at least get OpenOffice, Gimp and Scribus installed. For everything else, there's a Linux Mint live cd always within reach.

(I'm actually starting to get past the 'no wireless' pouting from that series, as I'm coming around to the notion that for security purposes, any wireless connection, particularly in a public 'free wifi' zone, should be done while running off a live cd such as the one referenced above. The best way to secure the data on your hard drive and shield it from viruses is to bypass that device altogether, or so I assume.)

In any case, after a world speaking tour punctuated by endless accolades, hours-long autograph sessions, and heretofore-unknown love children gestating inside the wombs of women who can only be driven to paroxysms of ecstasy by detailed descriptions of the Common Desktop Environment (CDE), it would seem the zeitgeist of my Solaris 10 series is finally starting to level out. (In the more exotic locales, I had to go through a translator, which tended to compromise the moment.)

And so with the itch to use and explore one (seemingly) antiquated system relieved (however temporarily), I now move to the next one on the list: NetBSD.

This is actually familiar territory, as I've been using BSD variants almost exclusively since 2006. My recent SunOS explorations were triggered last summer by OpenBSD having choked on my current laptop's NVIDIA card, and from what I could see at the time, FreeBSD had the same problem, although I now know NVIDIA drivers exist for that system. The thing that keeps me from going all-in with FreeBSD 10.x, however, is the fact that Firefox crashes and leaves "core dump" messages in its wake, and I'm just not a Chrome kinda guy.

(For those who insist on such details, the laptop in question is a refurbished Lenovo ThinkPad T61p, though  the stainless steel screen hinges lead me to think it dates back to this model's IBM-branded-as-Lenovo transitional period. I could be wrong.)

That leaves NetBSD, the only one of the BSD pack that handles my NVIDIA card just fine, right out of the gate. It is also the first BSD I ever installed. (It was 4.0 RC1 or RC2, if amnesia serves me correct. I look back on that experience with fondness, even though I had no idea what the hell I was doing at the time.)


Old-school: NetBSD 7.0 running its default window manager, the venerable twm

For those with a catholic taste in Unix, NetBSD is a keg party at the Vatican. If you're an absolute Unix beginner, or have been living on Ubuntu-based Linux distros for too long, then you may feel stranded at first by NetBSD's sparseness. You'll find yourself staring into the abyss and seeing only a blinking cursor staring back. If you have the presence of mind to type startx, you'll be greeted by twm, a window manger offering little more than an xterm window with the same blinking cursor until you learn how to configure the .twmrc file to include whatever applications you want or need in the right-click menu. I'm one of those sickos who like twm in all its out-of-the-box glory, though my one deviation from the norm is that I always start my .xinitrc file with xsetroot -solid grey &, as I find that more aesthetically-pleasing than the default black background.

(Sometimes I opt for xearth in the root window, but with twm's window border lines being pencil thin, I don't like my background to be too busy. More on xearth a little further down.)

That's not to say I don't enjoy hacking the .twmrc file to see what weird and wonderful things are possible (which may also be the primal urge behind using Unix in the first place), but a return to twm in its default state is comforting in the same way as a worn-out pair of sneakers that have become completely form-fitting, or that ratty old sweater that should be thrown out but has too many memories woven into it. Or something.

If twm feels like too much of a nod to contemporary slickness for your liking, NetBSD also offers uwm via pkgin or pkgsrc, and is the only current Unix or Unix-like system offering that little piece of 1985. (Yes, pkgsrc is available for Solaris, illumos, Linux and/or whatever platform it can be made to work on, but my point here is that NetBSD is the only project I know of that is still keeping uwm alive.)

On the other hand, if you're feeling basic, but not that basic, there is also mwm, the Motif Window Manager, which is also the wm used by CDE. (Settle down, ladies.) While its default menu is a little more sparse than twm's, it offers thicker border lines that can be grabbed and pulled from anywhere for window-reshaping purposes. (For the unitiated, in twm you reshape a window by first clicking on the graphical thingmabob in the top right corner, and then moving the mouse pointer to carry out the reshaping. Having said that, you can configure the .twmrc file to allow for reshaping by pressing Ctrl or Alt and then clicking anywhere in or on the window and then dragging. More on that some other time.)

All this provides a more pleasing context for xearth, at least for these eyes.

Another advantage of mwm over twm is that you can cycle through windows with the Alt-Tab manoeuvre familiar to the world outside the Unix sanitarium. (I hear life is simpler and happier out there.)


Almost as old-school:The Motif Window Manager (mwm), with xearth running in 
the root window. Motif is also the window manager used in CDE.

The one and only 'pain point' with mwm that I can think of is in how it renders the icons for Firefox and Thunderbird, in that the respective logos for each of those applications are shrunken almost to the point of being unrecognizable, thus diminishing their functionality as icons. But that's just a very minor aesthetic issue, and is no way a rock in my shoe.

Enough about window managers. 

As for NetBSD itself, I can't think of any major productivity applications that can't be installed, and most multimedia stuff works fine. (Caveat: I can't get any sound on Firefox when I try to play YouTube videos. Once I resolve that issue, I'll share the solution in the subsequent post. At the same time, the system is picking up the sound of my fingertips brushing and hitting the keys as I type from the built-in microphone, which is odd and creepy for those of us who enjoy wearing headphones while not being able to hear YouTube videos.)

While NetBSD will perform admirably for my productivity needs over the coming week, the issues I'll be working to resolve are:

  • audio (as described above),
  • wireless connectivity (as described way above),
  • Flash,
  • digital camera SD card readability,
  • digital camera video playability,
  • getting Audacity up and running, and
  • getting a fancy desktop environment (such as Gnome 2/MATE, KDE or Xfce) installed and configured to my liking. (This item is at the bottom of the list for good reason.)

Stay tuned as I continue traveling back to the future, or forward into the past, or wherever the heck this journey takes me.