Enjoying Open Source Software

Small Gopher HOW-TO

What is Gopher

Gopher is a protocol that lets you pull up and view documents and media files stored on remote servers. You access those servers via the internet.

Gopher, just like the World Wide Web, works with servers and clients. Just as you browse the web with a web browser, you browse the Gopher space with a Gopher client.

Gopher servers provide a menu-style interface to one or more directories.

Gopher versus the World Wide Web

The Gopher protocol was created in 1991, some time before the rise of the World Wide Web. For some time, web browsers offered support for both the World Wide Web as for the Gopher protocol. Around the end of the nineteens, the World Wide Web had become the most popular. Slowly, browsers stopped supporting Gopher.

Gopher protocol is minimalistic.

The Gopher protocol is simple, much simpler than the World Wide Web protocol. Another way to say this, is that the Gopher protocol is less bloated. It only contains the exchange of information that is essential for serving content to a client.

Unlike the World Wide Web, the Gopher client hardly provides any information to the Gopher server. It only provides the server with the requested file, including the path to this file. No headers are exchanged, and for example not even the domain name is not part of the request. Of course, the Gopher server sees your IP address.

Unless the World Wide Web, the Gopher protocol separates links from documents.

When viewing Gopher content, you either view a text file, or a media file, f.e. an image file.

The Gopher protocol doesn't provide support for things like Javascript.

Light weight content

Gopher files are usually very light weight. Text is just a text file. An image is just an image file.

Everything contains only the essential.

This also makes Gopher lightning fast.

Real content from real people

It is almost impossible to monetize the Gopher space.

Gopher lacks support for JavaScript or cookies. Browser finger printing and surveillance marketing are impossible.

Advertising is non-existent in Gopher space, just as search engine optimization, clickbait, or AI generated content.

What you will find in Gopher space is real content from real people.

Browsing Gopher space

To access the Gopher space, you need a Gopher client.

Lynx, a text web browser supports both the World Wide Web as Gopher.

The The Overbite Project develops plugins and standalone clients for many mobile and desktop operating systems and environments. See also a list through their Gopher proxy.

There are several clients that support both Gemini and Gopher, see the list at Awesome Gemini, This list also contains some mobile clients.

Emacs users can install Elpher: a gopher and gemini client. Elpher is available on the non-GNU ELPA package archive.

Getting started

Having a client is fine, but what do you point it to? Google or Facebook won't help you discover the Gopher space.

A good way to start is to visit some aggregators.

  • gopher:// Bongusta
  • gopher:// RPoD moku-puna
  • gopher:// Tomasino's Phlogroll

The following link will give you some random chosen Gopher servers every time you open or refresh it:

  • gopher://

And, of course, you can visit my Gopher hole:

  • gopher://

Search engine

Veronica 2 is the search engine that you can use to search in Gohper space.

In the heydays of Gopher, there was a search engine called Veronica. That is why this engine is called "Veronica 2".

To search with Veronica 2, simply point your Gopher client to:

  • gopher://

Publishing on Gopher

A growing number of people is actively creating content for Gopher.

Publishing phlogs is popular among Gopher users. A phlog is like a blog, but on Gopher.

Also people create art and publish their work on Gopher.

These are just two examples, the Gopher space has more to offer, like, for example, a digital garden on Gopher.

Content has to be access through the menu-style interface. Most Gopher servers are able to parse a directory and generate the menu-style interface.

Another option is to use a special file type, called a Gopher map. A Gopher map gives more control. The creator can combine both text and Gopher links in a Gopher map, and the links can point to any file on any Gopher server.

Gopher hosting

The easiest way to start publishing on Gopher is to make use of Gopher hosting. Many so called tilde-towns offer free Gopher hosting, as well as many free shell providers. Also SDF offers Gopher hosting.

Most of these services require hardly any technical knowledge to publish on Gopher. You upload your content, the server indexes it, and your content is available for the whole world.

Self hosting

A Gopher server doesn't require beefy hardware. The Gopher protocol is very simple, and the content is light weight.

A simple and low power computer like a BeagleBone Black, or an old Raspberry Pi is more than enough.

The internet is a harsh environment, so only open your server to the internet if you have the technical skills to maintain the security of your system and your network.


⇽ Compile GnuPG 2.3.4 on FreeBSD Lessons learned from creating my first ELPA package ⇾