Monday November 28, 2005
Solaris@Home Episode V
It's been quite a while since I updated my progress at switching from
my old linux machine to my new amd64 running solaris. The holiday break
gave me some time to get back to this. One of the first things I
wanted to get running was misterhouse and OWW.
Misterhouse is a home automation system written in perl. It isn't for
the faint-hearted. OWW is a program to monitor weather and temperature
sensors on a One-Wire (tm) network. I have a weather station on my hangar (about 500' from the house) and a bunch of temperature sensors scattered about. I also have a Neptune aquacontroller
that controls my 230 g. reef tank. That controller provides rs-232 data
to misterhouse so I can monitor pH, temperature and redox levels. I
don't actually use misterhouse to control anything, just monitor stuff.
One of these days it'll control something.
Anyway so I needed to get this software up and running on solaris. Well
it was pretty simple although there were a few hiccups. First I did
OWW. I initially tried to configure and build it with the (now free) Sun Studio tools.
This didn't go too well because OWW seems to have a fair number of
portability issues as far as types it was trying to use. So I used gcc
instead. I still had issues but they were all pretty straightforward.
It was pretty clear that OWW hasn't been ported to that many platforms
yet. I fed back those changes so hopefully no one else will have those
issues again. I'll probably try the Sun tools again at some later date.
Then came misterhouse. When I first brought this up on my linux machine
a fews years back it was pretty painful. I had to install lots of
different libraries, upgrade tool chains. When ever I seem to upgrade
software on my linux machines I always seem to have to upgrade lots of
other misc. pieces of software. So I expected similar issues on
solaris. Well I was pleasantly surprised. Almost all the required
libraries were already present and what I didn't have was available on blastwave. This was almost too easy.
Of course it was too easy. I had two issues. On the linux machine I was
running an old version of rrdtool, like 1.0.xx and on solaris it was up
to rev 1.2.xx. Well as it turned out the misterhouse code for producing
graphs of weather sensor data wasn't compatible with the newest rrdtool.
Apparently the new rrdtool actually checks the syntax of the arguments
so several different mistakes in the perl code were being flagged. So I
had to fix the mistakes in that code. Then it worked fine. The graphs
the 1.2 version produces are much clearer than the old ones so this was
a big improvement.
The other problem was using libgd.
The misterhouse code uses it to draw buttons on web pages on the fly.
For some reason the library I got from blastwave didn't work (I'm still
investigating this). So I just got the sources and built and installed
it myself. Then it worked fine.
So in relatively short order I've moved one of my most important
programs off of my linux machine ond onto the new computer. It's a
whole lot nicer on this new fast machine. Previously the http interface
to misterhouse would seem like I was accessing it thru a slow dialup
line. Not any more. It's nice and snappy.
Next up, moving my imap setup...
Nov 28 2005, 03:49:48 PM EST
Permalink
Comments are closed for this entry.