gmid is a small, almost no-dependencies, gemini server for static content. I wrote it because I needed one and I disliked the ones that I found (or I wasn't able to compile them)
It's a very short program (less than 800 lines of C code at the moment), that uses libtls (a GREAT tls library from the OpenBSD folks.)
It doesn't support virtual hosts (it completely ignores the host part of the requested URL) and can only serve static content.
You can fetch the code with git
git clone https://git.omarpolo.com/gmid
or via the github mirror
git clone https://github.com/omar-polo/gmid
This is mostly a TODO/wish list of things, just to get an idea of what I'm gonna do (and to remind to myself too).
- virtual hosts
mapping virtual hosts to different directories would be really handy.
- dual stack — serving over both ipv4 and ipv6
doesn’t really need an explanation.
- directory listings
It's currently not supported, and I'm not even sure it could be useful.