Configure, services, backups, upgrades
Flags override environment variables. The SMTP URL is never logged. Copy .env.example and source it, or use it as a systemd EnvironmentFile=.
Settings you will set
| Variable | Role |
|---|---|
TAUR_HOME | Database, repos/, outbox, host key. |
TAUR_BIND | HTTP listen address. Default 127.0.0.1:8080. |
TAUR_BASE_URL | Links in mail and the public URL. No path. |
TAUR_SSH_BIND | Embedded SSH. Unset means SSH is off. |
TAUR_GRPC_BIND | gRPC. Plaintext HTTP/2. |
TAUR_SMTP_URL | Mail. Unset writes files under outbox/. |
TAUR_ADMINS | User names granted site admin at startup. Grant only. |
TAUR_RPC_RATE_LIMIT | RPC calls per peer per window. 0 is off. |
Full table: repository docs/configuration.md.
systemd
Service files live in the application repository on main (packaging/systemd/ and packaging/taur.env.example). Point EnvironmentFile= at a copy of that example. TAUR_BASE_URL should be https://packages.taur.weirdbrains.com. The process should be the only writer of TAUR_HOME.
Backup
Stop the server or use SQLite's online backup, then copy TAUR_HOME: taur.db, repos/ (including repos/.deleted/), and ssh_host_ed25519_key. Restoring that directory onto the same version of the binary brings the instance back.
Upgrade
Build the new binary, stop the service, replace the binary, start it. The database applies small ALTER TABLE steps on open. Take the backup first. There is no separate migration command.