Just a precursor: This isn’t quite ready, and the way their service works is really, really abhorrent. It’s.. Ugh.


I’m working on an OpenBSD compatible format for this service, but the data it sends is really bizarrely formatted, broken, and beyond Linuxism in it’s design. It’s awful, unlike their service.

But, work is in place, mostly using sysctl and a few addons. This system really needs to be optimized.

Here’s the skinny – just need to decode the rest of the data.


Many of us like to monitor our services externally, even for things which have been virtualized. No, not compartmentalized (like Docker), but virtualized. I prefer to have separate KVMs for different tasks – it’s just as fast, compatible with many different operating systems, and makes migration as easy as copying over a file and setting up the network. Easy-peesy.

Being that I have a relatively small network these days, I don’t feel like keeping several external nodes around just to monitor network issues and external activity – It was fun to setup, but to spend as much work on upkeep of external “pinger” nodes isn’t worth my time when I can get services which cost me pennies per day.

Enter Hetrix Tools, which has several different services – ping, HTTP/HTTPS, SSL certificate monitoring, SBL monitoring, and so forth. What’s even better is that the first 15 are completely free!

The installer script is pretty good, but doesn’t yet support Alpine Linux, since Alpine doesn’t have many of these tools installed by default. To make the script work, you’ll first need to:

$sudo apk add wget procps lsblk bash

Then, install the script as directed:

$sudo wget https://raw.github.com/hetrixtools/agent/master/hetrixtools_install.sh && bash hetrixtools_install.sh [your options here]

Double check that you have all of the required packages by going to the installation directory and running the command manually:

$sudo $SHELL
#cd /etc/hetrixtools
#bash -x hetrixtools_agent.sh

Look for any broken/missing dependencies, or anything else that’s wrong, and then fix it, accordingly.

Finally, since it depends on what cron you decided to install, you’re going to need to construct your crontab by hand. I use crony, so that looks like:

*	*	*	*	*	/bin/bash -c "(cd /etc/hetrixtools; /bin/bash hetrixtools_agent.sh 2>&1 >> /dev/null )"

That’s all it takes to run Hetrix’ service monitoring on an Alpine Linux 3.8+ installation!

As today is my 44th (pshew) birthday, I figured I’d remind myself how this whole thing started. You’re welcome to join me in this bit of self-realization over the years as built upon in this website, or use the search feature if you stumbled here looking for something – most of my articles are still around.

Still in high school, I was building proprietary software built upon the 6502 processor, interfacing large equipment via RS422. I created the first PC release of the software for Windows 95, which was still at it’s infancy. I started work on an NT4 based system, but was let go before this was completed; I do hope the serial drivers for 95 were stable enough- I was never called back to complete this project.

My first sites and gopher (yes, gopher!) are long lost to the annals of time, thankfully.

I moved to San Francisco in the later 90s to become part of the original DotCom bubble. I was there for Pointcast, Adobe’s Flash, and the introduction of DSL to the masses. It was pretty fun. But this is just my backstory – let me waste some time on this website.

I started this site back during InterNIC, but my first public registration was with GoDaddy in March, 1998, first as a simple way to share my resume – then, to build upon that. It eventually turned from ugly text on an ugly background to a graphical design, and then back to really ugly text on an ugly background, and finally, we’re back to a simple text on a simple background – but possibly, I’m oversimplifying things.

Around Q3 2001 (Can’t remember, finally threw away my 20 year old archival CDs when I moved), I moved to a dynamic system, originally based on NewsPHP, but I quickly grew tired of that, because it had severe limitations, and didn’t work very well. In 2002, I had moved to David Grants’ QuickBlog, a simple little ~10k PHP3 compatible script with a MySQL background with a few trivial features that I thought were pretty neat, which I had built a few features upon (for one, I remember not liking his weird date format which wasn’t time_t based). By 2003, I was running my own CMS, using my modifications to QuickBlog as the basis. Finally, by 2006, I moved from my CMS to TextPattern, having given up on all of my free/OSS software – because I wanted to eat, and was tired of working for (nearly) nothing. That, and my code base for the CMS was ugly, using an inline templating system which mostly wasn’t. It resembled a very, very basic Smarty class (which I had never heard of in 2002 when I started to build this, coincidentally, the same year Smarty first appeared).

Unabashed Plug: I’d like to note that I had this website hosted with ICDSoft from 2003 until 2017, when I decided to bring it back “In-House”. They were great, and I wouldn’t hesitate to suggest them to anyone who doesn’t want to host/manage the system themselves.

It wasn’t until 2018 that I finally ditched that final design, exported all of my data, and reloaded new into TextPattern once more, removing all but a handful of plugins I actually needed.

Other than the contact form, a TrueType Font generator (legacy), and a few plugins handcrafted to work with my old CMS (I used local side redirects because Google used to penalize off-site links – remember that?), this is a bone stock TextPattern installation, now.

There were many years (at the beginning) where I posted nearly daily, slowing down to weekly, monthly, sometimes nearly nothing at all. Then, I thought I’d come back and see if I wanted to continue – then decided to just leave this primarily as an archive, only posting things that I found useful, or amusing. (That’s why I haven’t posted anything in 4 months.)

Thanks for joining me, if you’ve cared to actually read through this.

I am a fan of “If it still works, keep using it”.

In fact, I was using a LaserJet 6P until 2015- when a friend accidentally broke it. Now, I’m using a LaserJet 2100.

PCL5/Laserjet4 is really easy with Linux via CUPS, but we do have a couple Windows users in the household. This didn’t used to be an issue, but HP decided to stop distributing PCL5 drivers in 2016. Earlier versions of Windows 10 had them, but they are no longer available.

HP’s UPD 6.1 series was the final series which had PCL5 drivers included for it’s universal package. I’ve linked below to where HP stores both 32 bit, and 64 bit drivers on their FTP site; this is not a normal web address, and may be blocked in some locations.

Good luck, and happy printing!


Much like my last extended period of not posting, I have once again had the same.

Life runs quickly, and with long hours experiencing it, there’s a lot less time available here, on the virtual landscape.

I may try to do more updates just so those who are still in touch at a distance will be able to follow, but on the whole, I consider blogging to be the predecessor to social media, and I do not engage social media venues.

Long story short: I might put things that I find interesting here, but on the whole, there are more important things in life to get on with.

Keep on keeping on, my friends!