soju/doc/packaging.md

27 lines
859 B
Markdown
Raw Normal View History

2023-02-22 20:25:10 +00:00
# Packaging soju
## Building
Using the `Makefile` is recommended. The `GOFLAGS` variable can be used to
customize flags passed to Go. In particular, `GOFLAGS="-tags=libsqlite3"` can
be used to link to the system's libsqlite3.
The `Makefile` will configure the binary with the default locations for the
config file and the admin Unix socket. These can be customized via the
`SYSCONFDIR` and `RUNDIR` variables.
## Default configuration file
`make install` will set up a default configuration file which:
- Uses a SQLite3 database in `/var/lib/soju/main.db`.
- Uses a filesystem message store in `/var/lib/soju/logs/`.
- Enables the admin Unix socket (required for `sojuctl`).
## Service manager integration
soju is designed to be run as a system-wide service under a separate user
account.
SIGHUP can be sent to soju to reload the configuration file.