mirror my gopher content to great

Found at: zaibatsu.circumlunar.space:70/~visiblink/phlog/20210117

This morning I set up Solderpunk's GeGoBi on my personal server to 
mirror my gopher content to gemini. It's a great complement to 

Here are the details of my GeGoBi setup on Debian 10. I suspect 
there might be others out there who want to do the same thing.

Note that I was logged in as root when I did everything in part I. Then 
automatically in part II.


You should have the following files in /opt/gegobi:


you'll need for the gemini server. I figured it was easiest to keep 
these files in the /opt/gegobi directory because I don't need them for 
anything else.

Enter the following command: 

openssl req -new -x509 -newkey ec \
-pkeyopt ec_paramgen_curve:prime256v1 \
-days 1825 -nodes -out cert.pem -keyout key.pem

answering most of the questions, but it's probably best to enter your 

Country Name (2 letter code) [AU]:CA
State or Province Name (full name) [Some-State]:.
Locality Name (eg, city) []:.
Organization Name (eg, company) [Internet Widgits Pty Ltd]:.
Organizational Unit Name (eg, section) []:.
Common Name (e.g. server FQDN or YOUR name) []:gopher.visiblink.ca
Email Address []:.

*I found this on Alex Schroeder's site (Thanks Alex!):

  --base [BASE]         Gopherhole base directory.
  --cert [CERT]         TLS certificate file.
  --host HOST           Hostname of Gemini server.
  --key [KEY]           TLS private key file.
  --local               Serve only on
  --port [PORT]         TCP port to serve on.
  --redirects [REDIRECTS]
                        File to read redirect definitions from.
  --tilde [TILDE]       Home subdirectory to map tilde URLs to.

My gopher content is in /var/gopher, so I ended up with this combination 
of command-line switches, which works, as long as you're in /opt/gegobi 

./gegobi.py --base /var/gopher --cert cert.pem --key key.pem --host gopher.visiblink.ca --port 1965

ufw allow 1965

verify that by visiting your gopher hole from a gemini proxy.


Systemd unit files -- which allow you to autostart GeGoBi -- don't 
accept command-line switches, but you can still get them to work by 
assigning them to variables in a config file.

This file will hold the command-line switches you figured out in Part I. 
Alter it to meet your specific requirements.

Here are the contents of my .conf (you may need to change the base 

ARG1=--base /var/gopher
ARG2=--cert /opt/gegobi/cert.pem
ARG3=--key /opt/gegobi/key.pem
ARG4=--host gopher.visiblink.ca
ARG5=--port 1965

Enter the following in the file:

Description=Run GeGoBi as a regular user

ExecStart=/usr/bin/python3 /opt/gegobi/gegobi.py $ARG1 $ARG2 $ARG3 $ARG4 $ARG5 


chown your_username:your_username /opt/gegobi/*

You might have to change the ownership of the hidden /opt/gegobi/.conf 
file separately. I can't remember if the wildcard changed it or not.

First, reload the daemon service files:

Then you can start GeGoBi:

Finally, set GeGoBi to start up automatically with your server: