Titan, the proposed upload protocol for Gemini
Alex Schroeder
alex at gnu.org
Sat Jul 4 10:09:18 BST 2020
Upon reading my mail the next day I'd like to add a few points.
https://lists.orbitalfox.eu/archives/gemini/2020/002034.html
Titan, the name
I don't mind lel's Java client being called "Titan". After all, there
are many things that are called Titan – and Apache also named their
webserver httpd. And, like I said, originally I called the protocol
gemini+write... So, I don't know? I like the name Titan, of course. 😃
gnutls-cli
Here's an example of me updating a page with the content of test.txt
using gnutls-cli:
(sleep 1; \
echo "titan://alexschroeder.ch:1968/raw/Test;mime=text/plain;size="`wc
--bytes < test.txt`";token=hello"; \
cat test.txt) | \
gnutls-cli --insecure localhost:1965
I'm using --insecure because of the self-signed certificate, and I'm
using sleep 1 because gnutls-cli (at least on my system) isn't
immediately ready to accept ouput.
The drawback with this solution is that there's plenty of gnuttls-cli
info shown that you don't really care about.
openssl
Here's an example of me updating a page with the content of test.txt
using openssl:
echo "titan://alexschroeder.ch:1968/raw/Test;mime=text/plain;size="`wc
--bytes < test.txt`";token=hello" \
| cat - test.txt | openssl s_client --quiet --connect
alexschroeder.ch:1968 2>/dev/null
Here I can use the --quiet flag to reduce openssl's output, and as the
rest is printed on stderr I can redirect stderr to /dev/null in order
to make the output really quiet.
Gemini Wiki on the web
The Gemini Wiki also serves HTTP (although it's an extremely simple
HTTP server: no content negotiation). That's why you can visit
gemini://alexschroeder.ch:1968 on the web using
https://alexschroeder.ch:1968 – Gemini Wiki installations just have to
make sure to use those Let's Encrypt certificates and not their self-
signed ones because browsers are really picky and display all sorts of
warnings. Gemini Wiki only serves the web as secondary citizen. There
are no HTML forms to edit pages from the web. That only works using the
Titan protocol.
Cheers
Alex
More information about the Gemini
mailing list