gmitohtml/CONFIGURATION.md

1.7 KiB

gmitohtml loads its configuration from ~/.config/gmitohtml/config.yaml by default. You may specify a different location via the --config argument.

Configuration options

Bookmarks

Bookmarks are defined as a list of URLs and corresponding label.

Defining bookmarks manually via configuration file is possible, however it is not required as the gmitohtml configuration file is updated when bookmarks are modified using the web interface.

Client certificates

Client certificates may be specified via the Certs option.

To generate a client certificate, run the following:

openssl req -x509 -out localhost.crt -keyout localhost.key \
  -newkey rsa:2048 -nodes -sha256 \
  -subj '/CN=localhost' -extensions EXT -config <( \
   printf "[dn]\nCN=localhost\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:localhost\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth")

Files localhost.crt and localhost.key are generated. Rename these files to match the domain where the certificate will be used.

Allow file:// access

By default, local files are not served by gmitohtml. When executed with the --allow-file argument, local files may be accessed via file://.

For example, to view /home/dioscuri/sites/gemlog/index.gmi, navigate to file:///home/dioscuri/sites/gemlog/index.gmi.

Example config.yaml

bookmarks:
  gemini://gemini.circumlunar.space/: Gemini protocol
  gemini://gus.guru/: GUS - Gemini Universal Search

certs:
  astrobotany.mozz.us:
    cert: /home/dioscuri/.config/gmitohtml/astrobotany.mozz.us.crt
    key: /home/dioscuri/.config/gmitohtml/astrobotany.mozz.us.crt
  gemini.rocks:
    cert: /home/dioscuri/.config/gmitohtml/gemini.rocks.crt
    key: /home/dioscuri/.config/gmitohtml/gemini.rocks.key