<-- back to the mailing list

[ANN] gmnisrv: a Gemini server for POSIX systems

Drew DeVault sir at cmpwn.com

Sat Sep 26 23:21:57 BST 2020

- - - - - - - - - - - - - - - - - - - 

As promised, I have implemented a Gemini server in C11 for POSIXsystems: gmnisrv.

gemini://drewdevault.com/gmnisrv.gmi

gmnisrv is a high-performance server which requires next to noconfiguration. You just write a file like this:

listen=0.0.0.0:1965 [::]:1965

[:tls] store=/var/lib/gemini/certs organization=gmnisrv user

[example.org] root=/srv/gemini/example.org

[example.com] root=/srv/gemini/example.com

Stick it in /etc/gmnisrv.ini, start the daemon, and you're done. Itautomatically generates and rotates certificates for you.

The only dependencies are a C11 compiler, a POSIX-like system, andOpenSSL*. It clocks in at about 3,000 lines of code. In the future, Iwould like to add support for some simple URL rewrites and reverse proxysupport.

Development info can be found here:

https://sr.ht/~sircmpwn/gmni/

Enjoy!