Monday, February 29, 2016

The Republican Party has been smacked across the back of the head with a shovel

Perhaps you've had that experience where you're in public and you hear a couple or a group of people having a heated argument, and as you listen you realize that each person is being willfully ignorant of the other(s) or worse, and that the episode will end either with a physical altercation or, at best, with the participants all storming off if separate directions. Maybe on some level you feel pity for them for being trapped at the level of unthinking emotionalism.

In these situations you feel like you shouldn't eavesdrop on people who are making a spectacle of themselves due to things that aren't their fault, such as a medical condition or a lack of education, but nevertheless you can't help yourself.

That is sort of how I feel as I follow the race for the Republican Party's nomination for the upcoming U.S. Presidential election, which has now devolved into a juvenile insult contest. Rather than debate potential solutions to the problems facing their country, Donald Trump and Marco Rubio in particular are now locked in a war of words that has often focused, strangely enough, on which of the two show more evidence of perspiration backstage during televised appearances.

Really?

It seems that with Republicans, collectively, we are witnessing a party that has been smacked across the back of the head with a shovel, having gotten caught and ground into hamburger meat in the gears of Trump's mean-spirited sensationalism. And now on the eve of Super Tuesday, with Trump solidly ahead in the polls, the party's mainstream is realizing too late that they should have upped their game months before now.

Compare that to the Democratic race.

Sure, Hillary Clinton and Bernie Sanders have criticized each other and even traded barbs on occasion, but on the whole their race has been one about issues being discussed with maturity and decorum. In other words, they have respected the intelligence of their supporters and each other, and therefore have brought honor to their party. At no point, from what I have seen, have the Democratic contenders gotten down in the muck and manure like the Republicans. (Up until the last few days it was mainly Trump doing that, but now Rubio has joined in. As I saw a commentator on CNN say earlier, when you sink to Trump's level, "the pig enjoys it and you just get dirty".)

And so following the Republican race is an intensely-fascinating form of people-watching, in terms of the shamelessness of the main participants, as well as the intellectual acrobatics and obfuscation of the pundits who rally by their side. It's like the conservative movement, as a whole, is too factionalized to properly digest someone as deliberately polarizing as Trump.

(As an aside, conservatism tends to become a religion to its adherents, and like any religion it tends to break apart into competing factions. While the Democrats are indeed more "liberal" - at least for the purposes of election campaigns - they seem to be more rooted in a sense of pragmatism. That is why you never hear Democrats questioning each other's ideological purity, unlike the GOP.)

Getting back to the scenario described at the outset, eventually you realize you've had enough. Sooner or later, any guilty pleasure loses its novelty, and you just wish the people you're listening to would either clam up or at least talk about something of substance.

And so it is with the 2016 Republican contest.

Saturday, February 27, 2016

One Week with NetBSD 7.0: A belated post-mortem

Excuses, excuses...

I know my week-long adventure with NetBSD 7.0 ended more than a week ago, and I certainly intended some sort of wrap-up well before now. However, life got in the way and threw my plans off-kilter. For the first two or three days after said week ended, it was a case of my responsibilities as a father of two young boys conspiring with the resulting end-of-day brain melt that goes with such a role to trigger a monumental case of procrastination as far as blog-related matters go.

After those two or three days, however, my good intentions to nail the lid on this NetBSD experiment was again derailed, this time by an illness, which going by previous experience I believe was a nasty bout of food poisoning. The first day felt like death without dying. (I won't go into any detail here, except to say that I couldn't even keep Gravol down.)

As the days wore on, and as I gradually came back to life, I had a SunOS relapse, this time in the form of OpenIndiana Hipster (the October 2015 iso patched up to that day's build), which this time around seemed a heckuva lot more unstable than my previous fling. Don't think for a moment I'm intending this as a negative - Hipster is OI's fast-moving 'test' branch, and so I went into it expecting some breakage, and even ended up submitting two bug reports, which in itself was part of the itch I was scratching.

Craving a bit more stability, I then reinstalled Oracle Solaris 11.3 and was able to get in a few days of using my laptop for actual productivity purposes. However, it didn't take long before I was missing the stripped-down sensibility that is NetBSD, and so earlier this evening I decided to take another plunge back into the pool, and followed the directions I had noted in earlier posts to get myself back to where I was before. (I'm too frugal to spend money on sticky notes, so instead I leave notes to myself on my blog. So if you see a post resembling a shopping list or a reminder to return a library book, you'll know I'm just being practical.)

And so now I'll be working to cross the remaining goals off my original list, which consists of conquering wireless connectivity as well as getting Audacity up and running. (I did pkgin install audacity, but when I go to start it I get a message saying Shared object "libportaudio.so.2" not found. I'm hoping a quick Google search or two will lead me to the promised land.)

As for  SD card readability and digital video playability, that can wait because I need to buy a new SD card USB adapter. (The little card slots on the adapter got caked with chocolate. Don't ask.)

And so the curtain falls

That's the road ahead for now, and so although my One Week with NetBSD 7.0 blog series is now concluded, I am not done with NetBSD 7.0 itself, and plan to write more about it whenever I have anything worthwhile to share or simply feel like gushing about this worthwhile system.

As for closing thoughts, I think much of the attraction (for me) to a system like NetBSD (or its siblings, OpenBSD and FreeBSD), aside from coming with console Tetris out-of-the-box, is that it makes no assumptions about what you're going to do with it, which would explain why a fresh install consists simply of the base system, Xorg and a Reagan-era window manager (twm). Where you go with it from there is completely up to you.

That's the lure of the big three BSD-based operating systems for a fella like me, as they embody what I consider the ultimate computing experience, in that the user is trusted and respected enough by the system's developers that they are free to explore, study and modify the system in any way they see fit. Compare that to Windows or Mac OSX, where the user is confined to a walled garden controlled by the vendor. (Yes, OSX is BSD-derived, but it is not the freeform experience of any traditional BSD or UNIX system. While Apple has a healthy respect for great design principles, its products lead the proverbial horse to water and then force it to drink.)

In short, systems like Windows, OSX and Ubuntu, not to mention Android and other tablet/smartphone operating systems, are built to serve corporate vanity and profits, full stop, and thus do not trust the user to modify as they see fit. (Oracle Solaris is somewhere in the middle of this spectrum, as it allows for much customizing for those who know what they're doing, but is nevertheless a closed-source system with certain limitations on use, particularly for those using it at home for free.)

With the traditional BSD systems, you are limited only by your own skills, knowledge and sensibilities. NetBSD is as good a standard-bearer as any for this level of versatility. After all, it can run a toaster or provide TCP support for satellite networks.

Also, if you have a sincere love for Unix and/or want to learn it from the ground up, then I don't think you could possibly go wrong with NetBSD. And while I don't think any "Unix" operating system (even ones that are legally-entitled to market themselves as "UNIX(TM)") can claim to have enough code purity to be the one true descendant of AT&T Unix, the BSD's can all trace their lineage directly to the original system, and all three provide as traditional a Unix experience as possible (second only to booting Version 7 Unix in simh), while also providing access to most of the graphical applications one would need or want in this Windows-based world.

So while NetBSD may not be able to call itself UNIX(TM), it is certainly Unix to the nth degree in more ways than one, and possibly to a greater extent than some of the systems that are officially certified by The Open Group, the organization that owns and polices the UNIX trademark.

And finally, NetBSD will not hold your hand but it will give you an opportunity to learn that's simply not provided by more GUI-based systems. If you keep at it and give yourself permission to make mistakes, figure out solutions, and simply forge onward, you may find yourself able to do more with your hands than you previously thought possible.

As for myself, I still have some learning to do, so I'll be keeping NetBSD around for awhile.

Wednesday, February 17, 2016

One Week with NetBSD 7.0: A mixed review of Xfce 4.12

The universe is governed by the forces of irony.

At least that's the notion I publicly subscribe to, as it allows me sufficient cover to rail against full-bodied desktop environments (and champion primitive window managers) in one post, and then in the next one do something really cute, like report on the installation and use of a full-bodied desktop environment, in this case Xfce 4.12. And then if anyone calls me out on my BS, I can simply point to this self-created God of Irony, who will respond to my detractors with a simple shrug of His celestial shoulders and bathe us all in His ever-loving gaze of indifference.

In all seriousness, there's Unix users, and then there's human beings, and so if you're setting up user accounts for the latter on a given machine, particularly with limited exposure (if any) to Unix, then a desktop environment is the best way to ease them into it. (Put another way, let their first Unix experience be what Linux blogger Penguin Pete once dubbed "I-can't-believe-it's-not-Windows!")


Xfce 4.12 in action: A good 'default GUI' choice for guest accounts on your machine, 
but not without some issues that keep it from being the author's 'go-to' desktop 
environment, assuming he'd want a desktop environment in the first place.

As for the installation, I followed the steps laid out in slice2's appropriately-titled blog post, HOWTO install the XFCE 4.12 Desktop on NetBSD 7. Unlike the procedures for installing Flash, there are no hiccups or deviations to report here. I followed each and every step exactly as written by slice2, and was up and running with Xfce 4.12 in no time. (Some of the steps didn't apply, as the post assumes you're starting from a fresh NetBSD install with nothing added or configured, so to be more exact I followed all of the relevant steps.)

All-in-all, Xfce 4.12 on NetBSD is good, but not without a blemish or two.

For starters, I'm not keen on the default theme, ("Xfce-dusk"), but that's a non-issue easily addressed via the theme manager dialogue box. A slightly more serious issue, if appearances matter, is the fact that I'm unable to change the desktop background from the default solid grey to either a different color or image. One of the key elements of a desktop environment is personalization, and although I live in a snoozy government town, I don't feel like a dull grey desktop background truly expresses my inner self. (I could be wrong.)

Although I'm confident the solution is one Google search away, I've been avoiding that route in the interest of getting a sense of Xfce's ease of discoverability. After all, if it is geared towards being usable by general as well as technical people, then an external search engine shouldn't be required to find out how to do something as trivial as changing a background. I've used Xfce on many BSD and Linux distros, and have never encountered this sort of roadblock.

Another irritant here is that I can't use Alt-Tab to cycle through windows, which one would think is an easy way to help level the learning curve. Again, I swear I remember this feature being available in other Xfce implementations, so I don't know if the Xfce project has decided to drop the feature in the interest of self-defeat, or if it's just a rough spot in the NetBSD implementation. Either way, I'm not a fan of having to take a hand off the keyboard to move the mouse up to the task bar when a fairly standard keyboard shortcut exists in other implementations of the same environment.

And finally, for some reason this incarnation of Xfce 4.12 requires you to type soffice in a terminal window to activate LibreOffice, rather than having it available in the Applications drop-down menu. While I'm in no way adverse to command lines (as the vain muscle-flexing of my previous post made abundantly clear), any self-respecting desktop environment should make a major productivity suite like LibreOffice available within a series of mouse clicks, and as few of them as possible at that.

Beyond the above complaints, I have nothing bad to say about Xfce 4.12 on NetBSD 7.0, per se. If you're looking for a usable default GUI for a 'guest account' on your machine while entertaining inlaws for the weekend, then you can't really go wrong with Xfce. As for myself, the issues outlined above make it seem incomplete, therefore keeping it from being my 'go-to' desktop environment.

Friday, February 12, 2016

One Week with NetBSD 7.0: LibreOffice! Working audio! OpenBSD?

Things are humming right along with this NetBSD install, and so this dispatch is of the odds-and-ends variety, so let's get right to it.

LibreOffice

I managed to get LibreOffice installed, which you'd think is no biggie, but nevertheless I was initially flummoxed by variations on the install commands:

# pkgin install libreoffice

(No.)

# pkgin install libreoffice4

(Nope.)

# pkgin install loffice

(Really, Jim?)

And on and on it went.

Finally, a web search or two later, I hit upon something workable:
# pkgin install libreoffice*
And with that I'm now up to full productivity capabilities and have no need to boot any live cd to simply Get Stuff Done Other Than Tweaking the System. The successful install command above was found on a website that gives step-by-step instructions on installing Xfce on NetBSD 7.0. (My previous NetBSD 7.0 install was short-lived due to general impatience at things not coming together, and one of the big pieces was Xfce 4. While it certainly installed, something just didn't seem right. In fairness, though, I had been following instructions for getting it on NetBSD 6.x, so my problem may have been a faulty chair-keyboard interface.)

All that just to say that my next major task before the next post will be to get Xfce installed for no other reason than the availability of up-to-date instructions, and with any relevant notes or observations posted here.

Audio

Lack of audio was another pain point during my previous NetBSD install. This time I took a deep breath and consulted the Internet. One person who posted a comment yesterday said I may need to install GStreamer, and so after ending up at a pkgsrc.se page on that plugin, I installed it as follows:

# pkgin install p5-GStreamer

(To be honest, I may have entered the package name as "p5-GStreamer*".)

The audio still wasn't working, so my instincts told me that perhaps installing Flash might tie it all together into workability, and so I followed the instructions listed at wiki.netbsd.org (of all places!), and found success but with two minor caveats:

  • Where the NetBSD wiki says to cd to /usr/pkgsrc/multimedia/adobe-flash-plugin, you actually need to cd to /usr/pkgsrc/multimedia/adobe-flash-plugin11. (Wildcards are your friends: for more efficient keystrokes and the smug feeling that comes with being a seasoned console jockey, cd to /usr/pkgsrc/mult*/adob*.)

  • And where said wiki says to add ACCEPTABLE_LICENSES+=flash-license to your /etc/mk.conf file, just know that the build will sprain its ankle in mid-stream and tell you to also add ACCEPTABLE_LICENSES+= adobe-flashsupport-license. (Let the software licensing flame war begin...)

Once I completed all of the above, I could finally watch YouTube videos with sound, and had full-functionality on www.noteflight.com, a music composition site with playback capabilities. (The latter is one of my benchmarks for how well a browser implementation works.)

I'm now a happy guy!

What do mean twm and mwm are ugly?

One of the readers of yesterday's post commented that twm and mwm are "ugly" as far as window managers go. I suppose there's no accounting for taste, and with having enjoyed more than one screening of Pink Flamingos, I waive the right to judge anyone. I may adore twm and mwm (and boy, do I ever!), but I don't begrudge anyone who sees them differently. Part of the beauty of any minimal window manager, however, is that they tend stay out of your way and let you get down to work.

Which leads me to the following digression on window managers vs. desktop environments.

If someone is truly wanting to learn Unix, they should think of it as being as much of a language as it is an operating system. The main reason why I don't just turn off my brain and settle for some Ubuntu-based Linux distro that despite the wealth of available packages, whenever I use Linux Mint (for example), I always feel like I'm losing my Unix skills by the minute due to the temptation to accomplish things the GUI way.

Sure, in Linux Mint (or any BSD or other distro configured for maximum GUI reliance) you can always open a terminal window. But in such an environment, particularly if your attention span is as sickly as mine, trying to exercise your Unix skills on a regular basis is like trying to read an engrossing novel while hanging out on Las Vegas' Fremont Street during the evening lightshow. Who can concentrate on text while simulated fighter jets are screaming overhead?

(I have nothing against Linux Mint or any distros of its ilk - it simply isn't for me beyond its utility as a live cd. I like to visit it, but I'd never want to call it home.)

And so if you're wanting some peace and quiet while you "think" in Unix, any minimal window manager worth its salt will respect the Do Not Disturb sign.

OpenBSD and NVIDIA

Yesterday's drive-by reference to OpenBSD (vis-à-vis the NVIDIA issue) was, in retrospect, written in too much of a cursory and offhand way, and justifiably triggered some comments after I posted a link to that article in the Google+ OpenBSD community. Part of the problem with writing rambling pieces like this is that sometimes the printed word is too much of a transcription of my in-the-moment thoughts, and so my subconscious default assumption is that of course all of the outside world understands the larger context of what I'm talking about.

What didn't come through in the quick reference to OpenBSD having "choked" on the NVIDIA card is that OpenBSD is far and away my favorite operating system, that up until last June I had used it for three years with no distro-hopping (a personal record), and that it kills me that I can't run it on this machine. I am aware of and respect the project's ideals, and the principled stance it takes on NVIDIA's non-cooperation with the free software community makes me respect it even more.

Although I'm often a pouty little baby over not running OpenBSD on this machine, I realize it was my own fault for not doing a bit more research before making the purchase, and so this should serve as a cautionary tale for those in the market for a new or refurbished laptop. Do your homework!

My apologies to the OpenBSD community for doing it a disservice by not putting the NVIDIA issue in its proper context. If the rest of the industry had as much integrity as these people, we computer users would all be in a much better place.

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.


Monday, February 8, 2016

Materialism (alternative definition)

Materialism: A tendency to de-emphasize (and therefore devalue or even totally deny) the inner self in the name of promoting an illusory outer self that presents only an idealized personal identity. Therefore, materialism taken to its full extent represents a total denial of one's own humanity and human identity, exclusively concerned as it is with honoring the presumed shallowness of others.