A proposal to freeze the Gemini specification

Rohan Kumar seirdy at seirdy.one
Tue Oct 26 02:12:33 BST 2021


On Mon, Oct 25, 2021 at 11:21:04PM +0000, mntn wrote:
>I think you may be asking for a heavier process than is warranted. It 
>is my personal hope that there will be no further versions of the spec 
>once finalized,

A TLDR: the ecosystem can evolve without changing/breaking the existing 
spec. Let's freeze the spec soon!

Agreed that the Gemini spec seems feature-complete for now. There was a 
time when I would've liked to see features like compression and tables, 
but the spec doesn't prevent anyone from serving up an alternate 
mimetype like text/gemini+gzip or csv. Clients like Lagrange can load a 
CSV document from a link as an inline table just like they load inline 
images (following a user gesture, ofc). This is a good example of adding 
functionality to the ecosystem without adding functionality to the spec.

>other than perhaps a change from TLS should it ever become extremely 
>obsolete, decades from now.

Also agreed that it might be necessary to deprecate some TLS versions as 
time goes by, but that should be quite straightforward: deprecate one 
version of TLS, have capsules stop supporting it while clients support 
old and new versions, and then remove support from clients.

Some people from the netsec crowd have bristled at Gemini's TOFU model, 
but I don't think fixing that should require changes in the spec either. 
Adding e.g. a DHT of some sort doesn't have to change how the Gemini 
protocol works; it can simply be a thing users use to verify certs "out 
of band" the first time they visit a capsule. Stuff like Tor hidden 
services are also a good fit for Gemini (I think the part of the Gemini 
Space accessible over Tor is called "Deep Space") and can mitigate the 
issues inherent to TOFU without changing the spec.

Adding features is typically misguided: it's better to *complement* 
Gemini with other protocols suited for other purposes than to *extend* 
it. One such protocol is the spartan:// client-to-server protocol.  
Gemini can concentrate on supporting server-to-many-client situations 
while Spartan can concentrate on client-to-server communication.

(This is not necessarily an endorsement of Spartan; I do have some 
issues with it, but that's off-topic).

The ecosystem can evolve, but the spec seems about done.

Welcome back, Solderpunk.

-- 
/Seirdy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 898 bytes
Desc: not available
URL: <https://lists.orbitalfox.eu/archives/gemini/attachments/20211025/f6c32299/attachment.sig>


More information about the Gemini mailing list