`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: ```bash 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 ```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 ```