commit b9231167fbba5ded9aede5f7a7f39428436ba965 from: Omar Polo date: Mon Feb 08 18:47:36 2021 UTC mention libevent commit - c214d1ab67b2eee5a6424f518a795ab7883b868f commit + b9231167fbba5ded9aede5f7a7f39428436ba965 blob - 9d595cffabbae1bc6c87dfe6c6d7ad28285fa9cf blob + 6f07b0538430259a388216d2ee8206d9c6443cc9 --- README.md +++ README.md @@ -1,9 +1,9 @@ # gmid -gmid is a Gemini server written with security in mind. I initially -wrote it to serve static files, but it has grown into a featureful -server that can be used from either the command line to serve local -directories +gmid is a fast Gemini server written with security in mind. I +initially wrote it to serve static files, but it has grown into a +featureful server that can be used from either the command line to +serve local directories gmid docs # serve the directory docs over gemini @@ -24,6 +24,7 @@ or as a traditional daemon - automatic certificate generation for config-less mode - CGI scripts - (very) low memory footprint + - event-based asynchronous I/O model - small codebase, easily hackable - virtual hosts - per-location rules @@ -32,13 +33,6 @@ or as a traditional daemon - chroot support -## Drawbacks - - - not suited for very busy hosts. If you receive an high number of - connection per-second you'd probably want to run multiple gmid - instances behind relayd/haproxy or a different server. - - ## Internationalisation (IRIs, UNICODE, punycode, all that stuff) Even thought the current Gemini specification doesn't mention anything @@ -104,9 +98,9 @@ server "man.example.com" { ## Building -gmid depends on a POSIX libc, OpenSSL/LibreSSL and libtls (provided -either by LibreSSL or libretls). At build time, flex and yacc (or GNU -bison) are also needed. +gmid depends on a POSIX libc, libevent2, OpenSSL/LibreSSL and libtls +(provided either by LibreSSL or libretls). At build time, flex and +yacc (or GNU bison) are also needed. The build is as simple as