From 8bbc2265beeb9802f738f3108e3434094e96bb71 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Wed, 22 Feb 2023 21:25:10 +0100 Subject: [PATCH] doc/packaging: new page --- doc/packaging.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 doc/packaging.md diff --git a/doc/packaging.md b/doc/packaging.md new file mode 100644 index 0000000..5f2dda7 --- /dev/null +++ b/doc/packaging.md @@ -0,0 +1,26 @@ +# 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.