Just a quick status update on what I can see going on in the Gemini-verse lately.
Tomasino has taken the time to write up his first impressions[1].
Solderpunk has two new notes out, one on inputs (searches) and the use of client
certs[2], and one on two options for extending the range of Gemini result codes[3].
[3] Two Proposed Status Schemes
I'm gratified to see that Solderpunk's commentary on the use of disposable
client certs refers back to my "Gopher and the Lynx Web"[4] article. I'm not
super excited about implementing client cert handling in Germinal. Partly
because of just the basic complexity of it, partly because I've kind of painted
myself into a corner concerning configuration, and I need to either make big
changes, or rethink things.
One side conversation regarding client certs led to the suggestion that we limit
Gemini to TLS 1.3 (or, in the future, higher), since we don't have to worry
about backward compatibility. I'm in favor of this, and I've been trying to
implement it in Germinal, but it's not working yet.
As for the response status schemes, I'm slightly in favor of the two-byte
response codes, as they seem a bit semantically richer, as well as easier to
program for. I don't have a really strong preference, though.
Germinal has a small update. It can now be configured to a limited extent
through its environment or command-line switches. You can configure the
interface to listen on, the port to listen on, and the root directory to serve.
I need to update the systemd unit file to take advantage of this, and I need to
also add configuration of the cert and key locations in the same way.
When I add support for client certs, I need to provide some way for authors to
signal to the server that a cert is required, and what criteria the cert has to
meet. I'm either going to have to add a config file, which I don't want to do,
or have it controlled by files in the document root.
Germinal also supports the updated (final) link syntax when generating directory
index pages.
The best place to follow Gemini development seems to be on the Fediverse, on the