Crates.io | gemserv |
lib.rs | gemserv |
version | 0.6.6 |
source | src |
created_at | 2021-11-15 01:53:23.287738 |
updated_at | 2022-02-18 04:07:56.156754 |
description | A gemini server |
homepage | https://sr.ht/~int80h/gemserv/ |
repository | https://git.sr.ht/~int80h/gemserv |
max_upload_size | |
id | 481952 |
size | 82,117 |
A gemini server written in rust.
To run either run "cargo run /path/to/config" or if no configuration is specified it will look for "/usr/local/etc/gemserv.conf"
You can download prebuilt binaries for linux on the release page.
cargo install gemserv
docker pull 080h/gemserv
In the init-scripts directory there's OpenRC(Courtesy of Tastytea) and systemd service files.
There's example SCGI scripts for python and perl in the cgi-scripts directory.
In the configuration file there's "cgi" which is an optional bool to turn cgi on. If it's true it'll run scripts from any directory. To limit it to only one directory set "cgipath"
If "cgi" is false or not set the server will respond "Not Found" to any executable file.
Scripts have 5 seconds to complete or they will be terminated.
These variables are preset for you. If you need more you can define them in the config file under "cgienv"
TLS variables
Bug fix: File path is checked to make sure it's in the root directory or in ~/public_gemini
Bug fix: Another traversal bug.
Fixed a file system traversal bug. All previous versions are unsafe.