1
0
Fork 1
Go to file
Drew DeVault 7e8a953794 Initial pass on regex routing support
All this does is parse the regexes out of the config file.

I've vendored libregexp from Bellard's quickjs project, because it's
reasonably small and self-contained, and POSIX regexes don't support
captures. We're eventually going to want captures for URL rewrites, so
this'll do for now.
2020-10-29 22:47:56 -04:00
doc Initial support for CGI scripts 2020-10-25 23:16:50 -04:00
include Initial pass on regex routing support 2020-10-29 22:47:56 -04:00
src Initial pass on regex routing support 2020-10-29 22:47:56 -04:00
.gitignore Initial commit 2020-09-23 10:21:44 -04:00
COPYING Initial commit 2020-09-23 10:21:44 -04:00
Makefile Documentation 2020-09-26 16:45:06 -04:00
README.md README.md: update example config 2020-09-26 18:51:24 -04:00
config.ini config.ini: change suggested root directory 2020-09-26 17:46:56 -04:00
config.sh Implement MIME database support 2020-10-28 12:38:32 -04:00
configure Initial pass on regex routing support 2020-10-29 22:47:56 -04:00

README.md

gmnisrv

gmnisrv is a simple Gemini protocol server.

Installation

Dependencies:

  • A C11 compiler and a POSIX-like system
  • OpenSSL
  • scdoc (optional)
$ mkdir build
$ cd build
$ ../configure --prefix=/usr
$ make
# make install

Configuration

By default it reads from /etc/gmnisrv.ini, but this can be changed by passing the -C flag to the gmnisrv daemon. A sample config.ini is provided at /usr/share/gmnisrv/gmnisrv.ini:

# Space-separated list of hosts
listen=0.0.0.0:1965 [::]:1965

[:tls]
# Path to store certificates on disk
store=/var/lib/gemini/certs

# Optional details for new certificates
organization=gmnisrv user

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

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

For full details on gmnisrv configuration, consult the gmnisrv(5) manual page.

Usage

See gmnisrv(1).