#!/bin/bash # # /etc/rc.d/synapse: start/stop synapse daemon # error() { printf "\e[31m%s\e[0m\n" "[ERRO] $*" } if [[ -e /usr/bin/doas ]]; then SUDO=/usr/bin/doas elif [[ -e /usr/bin/sudo ]]; then SUDO=/usr/bin/sudo else error "Needs either core/sudo or contrib/opendoas installed and configured!" exit 1 fi PID=/var/run/homeserver.pid case $1 in start) if [ ! -e /etc/synapse/homeserver.yaml ]; then printf "\e[31m%s\e[0m\n" "[ERRO] Needs either core/sudo or contrib/opendoas installed and configured!" error "Please read README.md from this port and create a homeserver.yaml file first" exit 1 fi [[ ! -e /run/synapse ]] && install -g synapse -o synapse -d /run/synapse $SUDO -u synapse /usr/bin/synctl start /etc/synapse/homeserver.yaml ;; stop) /usr/bin/synctl stop /etc/synapse/homeserver.yaml ;; restart) $0 stop $0 start ;; status) if [ -e $PID ]; then if [ -d "/proc/$(cat $PID)" ]; then echo "synapse server is running with pid $(cat $PID)" else echo "pidfile $PID exists, but synapse server is not running" fi else echo "synapse server is not running" fi ;; *) echo "usage: $0 [start|stop|restart|status]" ;; esac # End of file