## The Gopher Lawn Project gopher://bitreich.org/1/lawn gopher://hg6vgqziawt5s4dj.onion/1/lawn by Christoph Lohmann <20h@r-36.net> ## Introduction to Gopher * https://en.wikipedia.org/wiki/Gopher_(protocol) »The Gopher protocol /ˈɡoʊfər/ is a TCP/IP application layer protocol designed for distributing, searching, and retrieving documents over the Internet. The Gopher protocol was strongly oriented towards a menu-document design and presented an alternative to the World Wide Web in its early stages, but ultimately HTTP became the dominant protocol. The Gopher ecosystem is often regarded as the effective predecessor of the World Wide Web.« »was«? No! ## Gopher Protocol # sends selector C: \r\n # returns content of selector, this time a menu S: 1\tsome menu text\tselector\tserver.org\t70\r\n i\tinformational text\tselector\tserver.org\t70\r\n 0\tfile.bin\tfile.bin\tserver.org\t70\r\n .\r\n menuitem ::= itemtype + \t + description + \t + selector \t + server + \t + port C: file.bin\r\n S: # There should be this last line, but most servers leave it out. (.\r\n) Simple, eh? We want simplicity. ## Gopher URIs gopher://$server:$port/$type$selector * type tells the client how to display the content of the selector * servers do not return some mime-type, so the client will only know through heuristics what the content is itemtype meaning 0 plain text 1 menu listing 2 CSO search query 3 error message 4 binhex encododed file 5 binary archive 6 uuencoded text file 7 search engine query 8 telnet session 9 binary file g gif image h HTML file (used for redirects) i informational message I image file s audio file T tn3270 session ## Gopher Clients Major clients used: * lynx * elinks * various gopher http proxies Commandline clients: * curl * snarf ## Gopher Servers * afterschock * bucktooth * geomyid * geomyidae * gn * gofish * gophernicus * gophrier * gophserv * goscher * mgod * motsognir * pygopherd * pygs * spacecookie ## How to access gopherspace 1. Enter from gopherproject.org * gopher://gopherproject.org 2. Search via veronica-2 * gopher://gopherproject.org/7/v2/vs 3. Use a directory? * gopher://bitreich.org/1/lawn (!) ## The Gopher Lawn Project * Announced on 2017-01-15 on the gopher mailinglist at gopher-project@lists.alioth.debian.org * Categories so far * ascii * gopher * history * onion * phlog * software * wiki ## Contribute to the Gopher Lawn Project * Come on bitreich IRC. * If you want to directly edit, become a member. * If you are not a member, write to me directly for adding some entry. * All entries are accepted. * If you are a member, work on automations to search gopherspace and classify it for the categories. ## Thanks Thank you for listening! Questions?