satellite.toml(5)

πŸ“¦ version 1.0.0, in alpine 3.24

πŸ’– satellite.toml(5) β€” the config file glow-up πŸ’–

okay so bestie, this is satellite.toml(5), and it lives in the File Formats Manual section β€” it's literally the configuration file for satellite(1). that's the whole vibe. it's a TOML file, it tells the server how to behave, and honestly it ate. let's get into it πŸŽ€


✨ EXAMPLE CONFIGURATION ✨

here's a whole little starter pack for u, copy-paste ready, no notes:

# Address to listen to requests (default: 0.0.0.0:1965)
listen = "0.0.0.0"

[tls]
# Directory to save certificates
directory = "/var/lib/gemini/certs"

# Multiple domains can be set with the [[domain]] section
[[domain]]
name = "example.com"
root = "/srv/gemini/example.com"

[[domain]]
name = "example2.com"
root = "/srv/gemini/example2.com"

see how there's two [[domain]] blocks? yeah bestie, multiple domains are a thing and they are iconic. slay πŸ’…


🌸 ANONYMOUS KEYS 🌸

these are the top-level keys, just hanging out at the root of the file, no section needed, living their best main character life:

  • listen β€” the address to listen to requests on. if u don't specify it, it defaults to 0.0.0.0:1965. no cap, that's the default. ✨

πŸ” TLS KEYS πŸ”

the [tls] section, where the certificate business happens:

  • directory β€” directory to save certificates in. this should be a persistent directory that's writeable by the daemon. and here's the cute part: no user interaction is required β€” the daemon will automatically create and regenerate certificates for u. it's giving self-sufficient king πŸ‘‘

πŸ‘‘ DOMAIN KEYS πŸ‘‘

okay so important detail: domain sections must be set using the double bracket [[domain]] format. like, that's not optional, that's the assignment. periodt.

  • name β€” the name of the domain. it gets used as a virtual host and it's used for certificate generation. double duty, obsessed πŸ¦‹
  • root β€” path on disk to serve files for this domain. the path of the URL gets appended to this value to form the full filepath of the files to serve. so like, it's the base, and the URL path stacks on top. iykyk 🌈
fr fr, don't forget the double brackets on [[domain]] β€” single brackets are a different thing entirely and u will simply not have a good time πŸ’€

and that's the page!! 🫢 this one's dated 2026-10-14, from the File Formats Manual, and it's satellite.toml(5) β€” go forth and configure, bestie πŸ’œ

πŸ“¦ where this page comes from