|
|
article-20h-geomyidae.mw - tgtimes - The Gopher Times |
|
|
 |
git clone git://bitreich.org/tgtimes git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/tgtimes (git://bitreich.org) |
|
|
 |
Log |
|
|
 |
Files |
|
|
 |
Refs |
|
|
 |
Tags |
|
|
 |
README |
|
|
|
--- |
|
|
|
article-20h-geomyidae.mw (6306B) |
|
|
|
--- |
|
|
|
1 .SH 20h |
|
|
|
2 20h Presents: Geomyidae |
|
|
|
3 .2C 14v |
|
|
|
4 . |
|
|
|
5 .PP |
|
|
|
6 This project existed since a while, and kept improving. |
|
|
|
7 In this interview with 20h, he shows us what Geomyidae's got under the hood. |
|
|
|
8 . |
|
|
|
9 .QP |
|
|
|
10 What is Geomyidae? |
|
|
|
11 . |
|
|
|
12 .PP |
|
|
|
13 Geomyidae is a Unix/Linux daemon/service serving the gopher protocol. |
|
|
|
14 . |
|
|
|
15 .QP |
|
|
|
16 So what is gopher? |
|
|
|
17 . |
|
|
|
18 .PP |
|
|
|
19 Gopher here is an internet protocol, which was first developed at the University of Minnesota. |
|
|
|
20 After its short success, it declined, but is now striving again to be used for its simplicity and hierarchy. |
|
|
|
21 For better visual display of your gopher experience, use something like links, lynx or sacc. |
|
|
|
22 Those are gopher clients. |
|
|
|
23 . |
|
|
|
24 .QP |
|
|
|
25 How does Geomyidae help with getting started with gopher? |
|
|
|
26 . |
|
|
|
27 .PP |
|
|
|
28 The installation of Geomyidae is very simple. |
|
|
|
29 You can setup your Geomyidae right away: |
|
|
|
30 . |
|
|
|
31 .1C |
|
|
|
32 . |
|
|
|
33 .DS |
|
|
|
34 git clone git://bitreich.org/geomyidae |
|
|
|
35 cd geomyidae |
|
|
|
36 make |
|
|
|
37 ./geomyidae -b $(pwd) -p 7070 & |
|
|
|
38 curl -s gopher://localhost:7070 |
|
|
|
39 .DE |
|
|
|
40 . |
|
|
|
41 .2C 94v |
|
|
|
42 . |
|
|
|
43 .PP |
|
|
|
44 Yes, curl supports gopher! |
|
|
|
45 And it supports gopher and TLS too! |
|
|
|
46 . |
|
|
|
47 .QP |
|
|
|
48 Are there many alternatives among gopher daemons? |
|
|
|
49 . |
|
|
|
50 .PP |
|
|
|
51 Yes, there are many. |
|
|
|
52 Some are there due to historical reasons, others have gone out of shape over time. |
|
|
|
53 One of the most popular alternatives is pygopherd. |
|
|
|
54 . |
|
|
|
55 .QP |
|
|
|
56 How does Geomyidae compares to other implementations? |
|
|
|
57 . |
|
|
|
58 .PP |
|
|
|
59 Geomyidae offers a unique simple way of expressing gopher content. |
|
|
|
60 See the manpage or the examples in the source for how .gph files are formatted. |
|
|
|
61 And it does just what you want it to do. |
|
|
|
62 No strange abstraction files like in the original gopher daemons are the default way. |
|
|
|
63 In the newest release of Geomyidae compatibility scripts were added. |
|
|
|
64 But those are to preserve the unique history of gopher. |
|
|
|
65 . |
|
|
|
66 .QP |
|
|
|
67 Did Geomyidae have significant evolutions since the beginning? |
|
|
|
68 . |
|
|
|
69 .PP |
|
|
|
70 Yes. |
|
|
|
71 Originally Geomyidae was named gopherd for Plan 9. |
|
|
|
72 It then was ported over to Linux. |
|
|
|
73 On Linux it was renamed to Geomyidae. |
|
|
|
74 During that development much has happened: There were significant speedups (due to the patches and work of other people!), features were added especially in new dynamic content handling. |
|
|
|
75 You can easily see all features in the documentation and especially the simple manpage. |
|
|
|
76 . |
|
|
|
77 .QP |
|
|
|
78 Does Geomyidae work with all gopher clients? |
|
|
|
79 . |
|
|
|
80 .PP |
|
|
|
81 Yes. |
|
|
|
82 Geomyidae supports the original protocol from the beginning, up to modern gopher with TLS. |
|
|
|
83 For the intermediary gopher+ protocol there is a compatibility layer. |
|
|
|
84 . |
|
|
|
85 .QP |
|
|
|
86 Has NSA inserted a backdoor onto Geomyidae? |
|
|
|
87 . |
|
|
|
88 .PP |
|
|
|
89 I am not allowed to tell you. |
|
|
|
90 . |
|
|
|
91 .QP |
|
|
|
92 How does gopher help with privacy? |
|
|
|
93 . |
|
|
|
94 .PP |
|
|
|
95 The gopher protocol has the unique property that all data you send over the line can be easily controlled and seen. |
|
|
|
96 This is different to HTTP, where headers, HTML and Javascript got so complex, it is uncontrollable. |
|
|
|
97 See the gopher onion project |
|
|
|
98 .FS |
|
|
|
99 gopher://bitreich.org/1/onion |
|
|
|
100 .FE |
|
|
|
101 for how to combine this with tor for total privacy and anonymity. |
|
|
|
102 . |
|
|
|
103 .QP |
|
|
|
104 Are there TLS support on some gopher clients already? |
|
|
|
105 . |
|
|
|
106 .PP |
|
|
|
107 There is support in curl, mpv/ffmpeg, sacc and more. |
|
|
|
108 It is very easy to add TLS support to any client. |
|
|
|
109 You simply connect via TLS on the gopher TCP port (default: 70) and if it works, |
|
|
|
110 keep that connection open. |
|
|
|
111 . |
|
|
|
112 .QP |
|
|
|
113 Are there been any evolution of the gopher protocol itself since the beginning of Geomyidae? |
|
|
|
114 . |
|
|
|
115 .PP |
|
|
|
116 The technology used is simple. |
|
|
|
117 Gopher does not allow requests, which begin with the first bytes of a TLS request. |
|
|
|
118 So any proper and old gopher daemon will simply refuse the connection. |
|
|
|
119 Then the client is free to reconnect without TLS based on its security configuration. |
|
|
|
120 Any ISDN line will handle such probing requests for TLS easily. |
|
|
|
121 . |
|
|
|
122 .QP |
|
|
|
123 Did Geomyidae have to adapt itself to the gopher protocol? Did it make gopher change? |
|
|
|
124 . |
|
|
|
125 .PP |
|
|
|
126 Geomyidae changed the part of gophespace it was able to reach. |
|
|
|
127 Many servers run on Geomyidae. |
|
|
|
128 There is software written just for Geomyidae and its gph format. |
|
|
|
129 The TLS extension of the protocol came from Bitreich / Geomyidae. |
|
|
|
130 We also set the standard to simply use UTF-8 as default representation in gopher menus and so bring it into the 21st century. |
|
|
|
131 I can conclude: Yes, Geomyidae changed and will change gopher. |
|
|
|
132 . |
|
|
|
133 .QP |
|
|
|
134 Have you seen Geomyidae ever used outside a hobby project? |
|
|
|
135 . |
|
|
|
136 .PP |
|
|
|
137 Well, Bitreich is serious in changing the software world. |
|
|
|
138 Most of gopherspace is »hobby projects«. |
|
|
|
139 But then, most of gopherspace is made from heart blood and love, which makes it part of the life of the authors. |
|
|
|
140 . |
|
|
|
141 .QP |
|
|
|
142 Is Geomyidae ready for non-hobby uses? |
|
|
|
143 . |
|
|
|
144 .PP |
|
|
|
145 Geomyidae is ready for any use. |
|
|
|
146 It is stable and optimized to scale better than the cloud. |
|
|
|
147 . |
|
|
|
148 .QP |
|
|
|
149 Geomyidae uses ".gph" files. |
|
|
|
150 . |
|
|
|
151 .PP |
|
|
|
152 Does it replace the gophermap standard? |
|
|
|
153 Yes, in Geomyidae it does. |
|
|
|
154 Gph is simpler and easier to adapt to, especially when you come from some markup world. |
|
|
|
155 . |
|
|
|
156 .QP |
|
|
|
157 Does Geomyidae support dynamic pages? |
|
|
|
158 . |
|
|
|
159 .PP |
|
|
|
160 Geomyidae supports two forms of dynamic pages: One which uses the gph markup and one, where the script/application outputs raw gopher output. |
|
|
|
161 Additionally it supports in the latest release a form of REST, where paths are transformed into arguments to scripts. |
|
|
|
162 There is also support for index.dcgi/index.cgi scripts to have better looking paths and URIs. |
|
|
|
163 . |
|
|
|
164 .QP |
|
|
|
165 Is Geomyidae already packaged in some Linux/BSD distributions? |
|
|
|
166 . |
|
|
|
167 .PP |
|
|
|
168 As far as I know it is packaged in gentoo, Archlinux (and more), all BSDs. |
|
|
|
169 Since it is so simple to package: Just extract the tarball, run make and make install, the packages are easily made for any package manager. |
|
|
|
170 . |
|
|
|
171 .QP |
|
|
|
172 What is planned for the next releases of Geomyidae? |
|
|
|
173 . |
|
|
|
174 .PP |
|
|
|
175 As of now I have worked through my whole long-standing TODO list for Geomyidae. |
|
|
|
176 New ideas will evolve from people sending in patches or through practical need. |
|
|
|
177 Geomyidae follows the Bitreich manifesto |
|
|
|
178 .FS |
|
|
|
179 gopher://bitreich.org/0/documents/bitreich-manifesto.md |
|
|
|
180 .FE |
|
|
|
181 where a software can be done. |
|
|
|
182 . |
|
|
|
183 .QP |
|
|
|
184 How to get involved? Getting help, discussing, bug hunting, code contribution, documentation... |
|
|
|
185 . |
|
|
|
186 .PP |
|
|
|
187 If anyone wants to get involved, first download Geomyidae, run it, have fun using it, creating gopher content. |
|
|
|
188 If you run into problems, have patches or suggestions, come on IRC |
|
|
|
189 .FS |
|
|
|
190 ircs://irc.bitreich.org/#bitreich-en |
|
|
|
191 .FE |
|
|
|
192 and discuss with us your problem. |
|
|
|
193 For e-mail, send such requests to 20h@r-36.net. |
|
|
|
194 All contact is in the manpage too. |
|
|
|
195 . |
|
|
|
196 .QP |
|
|
|
197 Can I have an ice cream? |
|
|
|
198 . |
|
|
|
199 .PP |
|
|
|
200 Yes, you will get one, once we meet again. |
|