Gemini Servers, A user's persective.

▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒

I actually am a software engineer, particularly experienced in Python/Django, with a smattering of dozens of languages. But for this experiment, I'm pretending for a moment that I'm a newbie to Geminispace and want to get a server up without building and maintaining the thing becoming my new hobby.

After all, if we want this to be a refuge for more than just tech people who want another hobby, we should consider the UX of sysadmin tasks.

My picks

Subject to change, obviously; I'm barely out of the "a"s.

The To-Try List

Jetforce (Python, last updated 2 years ago)

https://github.com/michael-lazar/jetforce

The Tried List

agate (Rust, last updated 2 weeks ago)

https://github.com/mbrubeck/agate

aiogemini (Python, last updated 9 months ago.)

https://github.com/rcarmo/aiogemini

apogee (kotlin, last updated 2 years ago)

https://github.com/bunburya/apogee

atlas (C# / dotnet8, last updated 1.5 years ago)

https://github.com/Alumniminium/atlas

blizanci (Erlang / Rebar, last updated 2 months ago)

https://github.com/mk270/blizanci

gemeaux (Python, last updated 6 months ago)

https://github.com/brunobord/gemeaux

Warning DO NOT USE gemserv <0.6.6

It's a bit irresponsible that the github repo containing 0.4.5 is still up, and with no means of reporting issues. This isn't int80h's repo, it's just some rando who forked it to github and then forgot about it. Unfortunately, searches for gemini servers still return the unmaintained Awesome Gemini list on github, which links to a defunct site about gemserv, and then searches for gemserv turn up the github fork first. What a mess.

And because gemserv 0.6.x won't handle by existing certs and provides no guidance on the right way to create certs for it, I cannot recommend anybody use it.

gemserv 0.4.5 (Rust, last updated 5 years ago) DO NOT USE

https://github.com/GreatWizard/gemserv

gemserv v0.6.6 (Rust, last updated 3 years ago)

https://git.sr.ht/~int80h/gemserv

This one means the key is the wrong format (e.g. EC vs RSA). Not that helpful.

This error means that it needs a "SAN extension" that matches the DNS, even if the CN is the domain. Again, not very helpful.

Proxied content from gemini://gdorn.circuitlocution.com/gemini/server_experiments.gmi (external content)

Gemini request details:

Original URL
gemini://gdorn.circuitlocution.com/gemini/server_experiments.gmi
Status code
Success
Meta
text/gemini; lang=en
Proxied by
kineto

Be advised that no attempt was made to verify the remote SSL certificate.