GophHub Gopher GitHub interface, Installation: This breifly describes setting up the gophhub.sh script on a Gopher server. REQUIREMENTS Usually already available: * GNU Bash * GNU Wget * GNU Sed * GNU Coreutils (cat, rm, mkdir, ln, ls, wc, md5sum, expr, fold, pr, numfmt) * GNU Find * GNU Grep Might need to be installed: * GNU Enscript * Gophernicus (running as the Gopher server, with CGI enabled) FILES AND DIRECTORIES Put gophhub.sh in the Gopher cgi-bin directory and make it readable and executable by all users. cd public_gopher mv ~/downloads/gophhub-1.0/gophhub.sh cgi-bin/ chmod a+rx cgi-bin/gophhub.sh Create a directory where GophHub will be accessed by users and make a symlink to the gophhub.sh script in cgi-bin named "gophermap". mkdir gophhub cd gophhub ln -s ../cgi-bin/gophhub.sh gophermap Add the menu.gophermap file (can be edited for customisation) in the gophermap symlink directory. Specify the full path to it in the MENUMAP setting at the start of the gophhub.sh script. mv ../../downloads/gophhub-1.0/menu.gophermap ./ If you keep the link to about.txt, then you'd better copy that there too. mv ../../downloads/gophhub-1.0/about.txt ./ Create a directory for the script to store symlinks to the programs that it calls while running in restricted mode. Specify the full path to it in the EXECPATH setting at the start of the gophhub.sh script. mkdir bin This directory must be writable by the script the first time it's run. After that, write access can be removed for security. CONFIGURATION Open the gophhub.sh script in a text editor and adjust the configation options as described in the comments. Defaults are set for me, and other users on shared Gopher hosts might just need to change the username from "freet" to theirs if the directory structure is otherwise identical. A GitHub API token can be entered to raise the API call limit from 50-60/hr for unauthenticated access. API tokens can be obtained with a free GitHub account for 5000 API hits per hour, and a higher limit for paid accounts.