Setting Up a Gopher Site

Author: Jake Bauer | Published: 2020-05-12

A screenshot of the Lynx web
    browser on the Gopher homepage.

I no longer run a Gopher site, but I'm leaving this post up because it might be of some use to someone who is looking to do so.

Today I made my website available over the Gopher protocol! You can now access at gopher:// with a Gopher-capable browser. To view Gopher sites (commonly referred to as Gopher holes), I recommend using Lynx (Gopher is entirely text anyways) or a browser extension from the Overbite Project.

It was very quick and easy to set up my Gopher hole. All I had to do was set up a Gopher server and place files in the directory where it looks to serve them.

For my Gopher server, I chose Gophernicus because it’s actively maintained and has no dependencies. Many people on the Internet choose to use pygopherd but that relies on Python 2 which was officially deprecated earlier this year.

It was really easy to install Gophernicus thanks to the excellent documentation. All I had to do was install build-essential, debhelper, and libwrap0-dev (the last one is optional), and then run make deb followed by sudo apt install ../gophernicus_<version>.deb. I edited the /etc/default/gophernicus config file and added the -nx -nt -nq -no -nl -nu options (see the README for what they do).

At the moment, I just have a homepage set up which links to some of my recent blog posts. I will need to find an easier way to convert an HTML/Markdown document to Gopher-compatible syntax (if possible) so that I don’t have to do a bunch of conversion by hand. Ideally, I would like to mirror this website over Gopher as much as possible.

Gopher is refreshingly simple. If you’re willing and able, give setting up a Gopher hole a shot!

This is my eighteenth post for the #100DaysToOffload challenge. You can learn more about this challenge over at