GOTSYSD(8) System Manager's Manual GOTSYSD(8)

gotsysdGame of Trees System Daemon

gotsysd [-dnv] [-f config-file]

gotsysd manages the system configuration of a Git repository server running gotd(8).

gotsysd allows remote administrators to configure aspects of Git repository services without having shell access to the Git server's operating system. Remote administrators merely need to be granted write access to a special-purpose called gotsys.git in order to configure Git repository services.

Tasks carried out by gotsysd include the creation of Git repositores to be served by gotd(8), and the creation of user accounts which use the gotsh(1) shell to access gotd(8). The desired system configuration is described by the file gotsys.conf(5) in the system repository.

The gotsysd configuration file format is described in gotsysd.conf(5). gotsysd can be run without a configuration file, using default settings.

gotsysd listens on a unix(4) socket for notifications issued by gotd(8), and for commands issued via gotsysctl(8). gotd(8) notifications are sent when a remote administrator modifies the file gotsys.conf(5) in the system repository.

Only the users root and _gotd are granted access to the gotsysd unix socket by default. Alternative access rules can be configured in gotsysd.conf(5).

The options for gotsysd are as follows:

Do not daemonize. Send log output to stderr.
config-file
Set the path to the configuration file. If not specified, the file /etc/gotsysd.conf will be used. This file is not required to exist.
Configtest mode. Only check the configuration file for validity.
Verbose mode. Verbosity increases if this option is used multiple times.

/etc/gotsysd.conf
Default location of the configuration file.
/git
Default directory containing Git repositories managed by gotsysd. This path can be configured in gotsysd.conf(5).
/var/db/gotsysd
The directory where gotsysd stores persistent state. Files in this directory are opened with exclusive locks, ensuring that only one instance of gotsysd runs on a given OpenBSD system.
/var/run/gotsysd.sock
Default location of the unix socket which gotsysd is listening on. This path can be configured in gotsysd.conf(5).

got(1), gotsh(1), gotsys(1), gotsys.conf(5), gotsysd.conf(5), gotd(8), gotsysctl(8)

Stefan Sperling <stsp@openbsd.org>

April 22, 2025 OpenBSD 7.7