2020-05-14 19:45:59 +00:00
|
|
|
Sheldon Director
|
|
|
|
================
|
|
|
|
|
2020-05-15 08:57:15 +00:00
|
|
|
A [Gemini](https://gemini.circumlunar.space/) Server written in Rust.
|
2020-05-14 19:45:59 +00:00
|
|
|
|
2020-05-17 11:03:27 +00:00
|
|
|
Features
|
|
|
|
--------
|
|
|
|
|
|
|
|
This can't do much right now besides hosting some static files. In fact, the
|
2020-05-17 17:46:48 +00:00
|
|
|
feature set happens to be limited to what I need to host my own Gemini page.
|
2020-05-17 11:03:27 +00:00
|
|
|
Coincidence?
|
|
|
|
|
|
|
|
More is to come however. Specifically I'd want to add CGI support. And maybe
|
|
|
|
reverse proxy support as well, depending on how much stuff I'll be hosting over
|
|
|
|
Gemini.
|
|
|
|
|
2020-05-17 17:46:48 +00:00
|
|
|
Platform Support
|
|
|
|
----------------
|
|
|
|
|
2020-05-17 18:25:59 +00:00
|
|
|
This currently only works on Unix platforms as `setuid` and `setgid` system
|
2020-05-17 17:46:48 +00:00
|
|
|
calls are used to drop the privilege level after initialization. Currently
|
|
|
|
there is no way to disable this. Of course, Gemini's default port (1965) can be
|
|
|
|
opened in user-mode, but not changing the user after startup would retain read
|
|
|
|
permissions to the private key.
|
|
|
|
|
2020-05-17 11:03:27 +00:00
|
|
|
Starting
|
|
|
|
--------
|
|
|
|
|
2020-05-17 17:46:48 +00:00
|
|
|
Sheldon Director look for a config file in `/etc/sheldond.conf`. If you want to
|
|
|
|
change this, pass an alternative path on startup like so:
|
2020-05-17 11:03:27 +00:00
|
|
|
|
|
|
|
An example start can look like this:
|
|
|
|
```sh
|
2020-05-17 17:46:48 +00:00
|
|
|
sudo ./sheldond -c ./sheldond.conf
|
2020-05-17 11:03:27 +00:00
|
|
|
```
|
|
|
|
|
2020-05-17 17:46:48 +00:00
|
|
|
An example config file can be found in this repository in `doc/sheldond.conf`.
|
2020-05-17 11:03:27 +00:00
|
|
|
|
2020-05-14 19:45:59 +00:00
|
|
|
Why "Sheldon Director"?
|
|
|
|
-----------------------
|
|
|
|
|
|
|
|
Because it is the real name of that villain in _Kim Possible_ who went by the
|
|
|
|
pseudonym "Gemini". (https://kimpossible.fandom.com/wiki/Gemini)
|
2020-05-16 09:03:48 +00:00
|
|
|
|
|
|
|
Though you are free to imagine the shortened name stands for Sheldon Daemon.
|
|
|
|
But in that case you'll have to come up with your own explanation.
|