Happymacs Gopher Site Current and Planned Outages

A quick note to all the readers of this blog. The HappyMacs Gopher server appears to be down at present. Unfortunately I am traveling on business and will not be able to reset it until NEXT weekend. Regrettably therefore, the HappyMacs Gopher server is “off the air” until then.

Another personal note that will impact availability of the server from time to time. I have just started a new job, and we are relocating as a result. The PowerMac G5 Quad that hosts the HappyMacs Gopher site is of course coming with me (!) but on the day that it is moved, and perhaps for another day or two after, the server will be necessarily down. I will post here on the blog to let you know specifics as the details become clearer.

Our new home has a purpose built computer lab in the basement, giving the HappyMacs Lab it’s first purposely designed home. I am looking forward to getting into our new digs and getting everything set back up and running full tilt. I will publish pictures of the new lab once it is up and running.

Despite the move, I am nearly finished with my next post on networking System 6 Macs, and you can expect to see that published in the next week or two. That post will be followed by the last in the System 6 series, all about adding external mass storage to your System 6 Mac. Stay tuned!

Thanks for your patience with these temporary outages of the HappyMacs Gopher server and I will get it back on the air just as soon as I can.


HappyMacs Software Archive is Open!

Over a year ago, I posted about my plans to make my collection of vintage Mac software available online via a Gopher site. I am pleased to announce that this has finally happened. The HappyMacs Software Archive is now open and ready for your use.

HappyMacs Software Archive

As planned, and in keeping with the “vintage” nature of HappyMacs, the HappyMacs Software Archive can be accessed via Gopher at URL:


For those of you who may be unfamiliar with Gopher, it was an early contender for the crown that was won decisively by HTTP (and the web in general). Gopher is a purely text-based environment, which makes it wickedly fast, but puts it at a serious disadvantage relative to the text, image and other capabilities of HTTP. With its richer mix of media, HTTP won the day and Gopher slowly faded from view. The good news is that it remains alive and vibrant to this day, albeit with a smaller audience.

Using a vintage protocol to present a vintage software archive had a certain poetic wholeness to it, and so I chose Gopher as the publication mechanism for the HappyMacs archive. As time allows, I may also put up a web interface to the same library. Please rest assured that when I do so, I will take care to ensure that it operates correctly when accessed using vintage web browsers such as iCab. In the meantime however, and by design intent, Gopher it is!

How do you get access to this archive? You can’t exactly go out and get a current Gopher browser, so what do you do? Well perhaps you can’t get a modern Gopher browser, but you can endow a modern web browser with the Gopher protocol and thus gain immediate access. The good people at Floodgap Systems (www.floodgap.com) support the Overbite project, which delivers a plugin that upgrades Firefox to Gopher-capable status.

Picture 1

To get Overbite, visit URL:


Then simply press “+ Add to Firefox” button and then restart your browser. Voila! You now have access to Gopher URLs!

Unfortunately, Overbite is not available for Chrome, IE or Safari, so you will need Firefox for it.

HOWEVER, you are not tied to Firefox for long, unless you want to be. You are only interested in using Gopher to access the HappyMacs Archive because you have an interest in vintage Mac software, and that implies that you have and can use a vintage Mac. SO, use Overbite to visit the archive and download TurboGopher, a FAT binary Gopher browser that runs as well on a 68K Mac running System 7 as it does on the last of the PowerPC capable Macs that could run Mac OS 9.2.2 natively.

TurboGopher About Screen

Once you have TurboGopher installed, you can now access the HappyMacs archive directly from your vintage Mac environment, using TurboGopher to do today exactly what it was meant to do all those years ago.


HappyMacs Gopher Space Progress

A few posts ago, I mentioned that I had started a long term project to create a HappyMacs Gopher space for the purpose of sharing my archive of vintage Mac 68K and PPC applications with the larger vintage Mac community. I am happy to report that I have made substantial progress since then. This post provides a quick rundown on that progress.

Creating Gopherspace

The first issue to solve was that of where to host the new Gopher space. After investigating the big Gopher hosting sites and several of the large web hosting sites (none of which could even spell Gopher! 🙂 ), I ultimately opted to host the new Gopher space directly out of the HappyMacs lab. This was the most economical, certainly the most “fun”, and also allowed me to choose a completely distinctive URL for the site.

Public addressability therefore became the next issue – how to make a server in the HappyMacs lab publicly (but securely) addressable from the outside world. My ISP didn’t help at all – I am a residential customer and they would only provide fixed IP addresses to business accounts (which were prohibitively expensive). Since fixed IPs were clearly not possible, I ultimately settled for a Dynamic DNS (DDNS) solution. In such a solution, a cloud based DDNS service provides you with a fixed URL of your choosing, and then dynamically maps that URL to the ever changing DHCP-based dynamic IP address supplied by your ISP. In my case, I chose NoIP.com as my DDNS provider and selected “happymacs.ddns.net” as my URL.


With hosting and public addressability out of the way, I needed a Gopher server to run on the host! There were two major contenders in this field: Gophernicus and Bucktooth. I chose Gophernicus because it is written wholly in C/C++ and is fully POSIX compliant, which the author stated allowed it to be compiled on any *nix platform. Mac OS X is such a platform and so in theory, Gophernicus can be built for Mac OS X. Being adventurous, I tried it! The exercise was not entirely smooth sailing. The present stable distribution of Gophernicus is set up for current versions of Mac OS X, and did not work “out of the box” with Mac OS X 10.4 Tiger. However, my long experience of building software for Linux provided me with the skills needed to adjust the Makefile until Gophernicus did build properly, and shortly thereafter, I had a working Gophernicus server running on my Tiger-based G5 Quad.


OK, hosting, check. Public addressability. Check. Gopher server, check. Now I needed a gopher space to serve! I knocked together a quick placeholder site and tested it, and all was well. Then I got to work on a little ASCII art and made the site a tad more attractive to look at.

Finally, I addressed the issue of a hit counter. Being not just adventurous but also curious, I wanted to know if this new Gopher space was getting any traffic, and if so, how much. That required at minimum some form of basic hit counter. Gophernicus helped me out here, with its ability to run external scripts. Gophernicus returns to the requesting client the output of any script it runs instead of the line in the gophermap that initiates the script. Hence, a script that implemented a hit counter and “printed” the counter’s value as its output was just what the doctor ordered.

Sounds good … now, how to implement such a script? More poking around revealed the existence of something I have never heard of before – “command line PHP”. I own and maintain multiple web sites, all written in PHP, and so I am very, very familiar with this powerful and (to me at least) intuitive scripting language. However, I have always thought of PHP as a server-side web capability, not a general purpose command line script language. As it happens however, since PHP 4.3, it can indeed be used for this very purpose. Exploiting this, I created the usual “hello world” script and it worked!

A little bit of cutting and pasting later, and I had extracted the PHP hit counter from one of my web sites and made it into a command line script, which I then embedded in my gophermap. Voila! One hit counter up and running!

PHP Hit Counter

…and that is where it stands at this moment. I have acquired a public URL, built a Gopher server, hosted it on my PowerMac G5 Quad, created an initial gophermap and put the whole thing online. You can view the result at:


There is very little meaningful content at the above Gopher space at the moment, but all the critical infrastructure is now in place, and I can start filling out the software archive portions of the site over time. This will happen in fits and starts over the coming weeks. I am going to begin with the Mac OS 68K applications and then move on to the Mac OS PPC applications. Finally, I will add in the Mac OS X PPC applications.

That’s it for now. Good progress in a very short time. I think. Stay tuned – I will update you when the 68K archive comes online!

A Little More on Gopher

Picture 1

There was an unusually strong response to my last post on the Gopher-based software repository at gopher://i-logout.cz. I don’t know if this was simply a reflection of interest in new sources of vintage Mac software, or perhaps was an expression of latent longing for the long past glory days of Gopher, or perhaps something else entirely. No matter what it was though, I thought I would follow up my last post with a little more information on Gopher.

I have spent some time digging into native Gopher clients for Mac OS, Mac OS X, and even some of the older Windows platforms. This was a fruitful exercise and turned up a rich set of available Gopher clients, all of which continue to work well today. Unlike the underpinnings of today’s web, the Gopher protocol has remained largely unchanged, and that means that unlike yesterday’s long-in-the-tooth web browsers, the Gopher clients of days gone by continue to work well today (are all Gopher clients long-in-the-tooth by definition? 🙂 ).

Pretty much all of the clients I found can be downloaded from just one wonderfully comprehensive web page (Offbeat-Internet) which lists Gopher clients for just about every vintage computer OS known to man. See the page below:


In short, here is what my search for Gopher clients unearthed:

> Mac OS 7.x and forward. TurboGopher was (and remains) the golden standard. I installed TurboGopher and used it to surf gopherspace, and I can report that it works very well (more on that below). Honorable mention goes to NetScape Navigator 4.7, which supports the Gopher protocol natively. Finally, today’s Classilla 9.3.2 supports the Gopher protocol natively as well.

> Mac OS X Tiger. Clearly TurboGopher and NetScape can be used in Classic mode, and this may be the best option. Native Gopher support in Mac OS X 10.4 seems limited to the weirdly unusual Gopher VR, a title that defeated my best efforts to install it and run it successfully. Thankfully, per my earlier post on the i-logout.cz software repository, the OverBiteFF plugin for Firefox, which works very well with TenFourFox, imparts Gopher capability to that fine browser, yielding usable Gopher support via that avenue. Finally, I stumbled across a “new” old browser for Mac OS X 10.4 that also supports the Gopher protocol natively: OmniWeb. OmniWeb will be the topic of a separate post – I am SO impressed with it.

> Windows 9x (Windows 95, 98 and ME). I would guess that few readers of this blog will be all that interested in Windows 9x Gopher support, but since I also have a healthy collection of vintage PCs, I thought I would throw this in for completeness. WSGopher32 was the Windows 9x PC equivalent of the Mac’s TurboGopher. It was THE golden standard. There were lots of other Gopher clients for the vintage PC world, but I will not elaborate on them here. Check out the Offbeat-Internet page above. You will find several listed there.

I will however elaborate just a little bit more on TurboGopher, which I tested under Mac OS 9.1 on my Power Macintosh 7300/200.

TurboGopher About Screen

As you might expect with a name like “TurboGopher”, this program is fast. It launches quickly and pages load smoothly and easily. The program features a very nice Finder-like interface, with each new page opening in a new window, neatly resolving the “how do I go back to the previous page” question that haunted several of the other Gopher clients I tried out.

Gopher is 100% text based, and any Gopher hole author who is feeling even the slightest bit creative quickly starts adding ASCII art to their pages to give them some visual interest. Because of this, it is VERY important to set TurboGopher’s preferences such that it uses a fixed width font. ASCII art does not look like art at all, nor like much of anything else really, when viewed with the default proportional font that TurboGopher starts up with. Fix this by going to TurboGopher’s preferences and setting the default font to a fixed width one. I chose Monaco 12, as you can see below.

TurboGopher Preferences

So, what do Gopher pages look like when viewed through a “best-in-class” Gopher client? Below I show two Gopher pages as rendered by TurboGopher. The first is the i-logout.cz page mentioned in my previous post, and the second is the current reigning home page of all gopherspace, gopher.floodgap.com.

i-logout.cz Gopher Page

Floodgap Gopher Page

So that’s it – The world of Gopher is alive and well and you can be part of it. Just download one of the Gopher clients from the Offbeat-Internet repository, sharpen your two front teeth and head off into gopherspace!