2023-08-01 13:34:38 +00:00
|
|
|
# geml
|
|
|
|
|
|
|
|
Gemini server written in Common Lisp
|
|
|
|
|
|
|
|
## /etc/geml/geml.ini
|
|
|
|
|
2023-08-02 08:00:59 +00:00
|
|
|
geml will have nothing to serve until you configure at least one domain and
|
|
|
|
root.
|
2023-08-01 13:34:38 +00:00
|
|
|
|
|
|
|
```
|
|
|
|
[my.gmi.capsule]
|
|
|
|
root = /srv/gmi
|
|
|
|
```
|
|
|
|
|
2023-08-14 00:28:46 +00:00
|
|
|
**NOTE**: Until [Server Name Identification](./src/server.lisp) is achieved only
|
|
|
|
the first domain you configure will work. Certificates will still be generated
|
|
|
|
for other configured domains they will just be unreachable.
|
|
|
|
|
2023-08-01 13:34:38 +00:00
|
|
|
## Usage
|
|
|
|
|
2023-08-01 20:14:16 +00:00
|
|
|
To get an executable `bin/geml-server` run `make`.
|
2023-08-01 13:34:38 +00:00
|
|
|
|
2023-08-01 20:14:16 +00:00
|
|
|
```sh
|
|
|
|
make && bin/geml-server -h
|
2023-08-01 13:34:38 +00:00
|
|
|
```
|
2023-08-01 20:14:16 +00:00
|
|
|
### Systemd
|
|
|
|
|
2023-08-02 08:00:59 +00:00
|
|
|
To install the build to `/usr/local/bin/geml-server` use `sudo make install`
|
|
|
|
which will also wire up systemd so you can `sudo systemctl enable --now geml`
|
2023-08-01 13:34:38 +00:00
|
|
|
|
2023-08-01 20:14:16 +00:00
|
|
|
You'll need to `sudo systemctl restart geml` whenever you update
|
|
|
|
`/etc/geml/geml.ini`... you did do that didn't you?
|
|
|
|
|
2023-08-02 08:00:59 +00:00
|
|
|
```sh
|
|
|
|
sudo cp /etc/geml/geml.example.ini /etc/geml/geml.ini
|
|
|
|
```
|
2023-08-01 20:14:16 +00:00
|
|
|
|
2023-08-02 08:00:59 +00:00
|
|
|
`make install` also sets up a geml system user and you may want to add yourself
|
|
|
|
to that group.
|
2023-08-01 17:11:57 +00:00
|
|
|
|
|
|
|
```sh
|
2023-08-02 08:00:59 +00:00
|
|
|
usermod -a -G geml $USER
|
2023-08-01 17:11:57 +00:00
|
|
|
```
|
2023-08-01 13:43:09 +00:00
|
|
|
|
2023-08-02 08:00:59 +00:00
|
|
|
### yeet it
|
2023-08-01 20:14:16 +00:00
|
|
|
|
2023-08-02 08:00:59 +00:00
|
|
|
To undo all that run these:
|
2023-08-01 13:43:09 +00:00
|
|
|
|
2023-08-02 08:00:59 +00:00
|
|
|
```sh
|
|
|
|
sudo make uninstall
|
|
|
|
make clean
|
2023-08-01 20:14:16 +00:00
|
|
|
```
|
2023-08-02 08:00:59 +00:00
|
|
|
**NOTE**: The automatically created TLS certs will still be at `/var/lib/geml`
|
|
|
|
you can (re)use those elsewhere or also just delete them.
|